Dlaczego postacie AI zapominają swoją tożsamość
Poświęcasz dwie godziny na budowanie postaci. Po trzydziestu turach postać zapomina swojego imienia. Zaczyna zachowywać się jak generyczny asystent.
Większość ludzi uważa, że AI ma słabą pamięć. To błędne przekonanie.
Problemem jest okno kontekstowe.
Modele czatowe są bezstanowe (stateless). Za każdym razem, gdy wysyłasz wiadomość, aplikacja przesyła do modelu prompt systemowy, szczegóły postaci oraz historię Twojej ostatniej rozmowy.
To, co nazywasz pamięcią, to po prostu historia mieszcząca się w tym oknie wejściowym.
Gdy czat staje się zbyt długi, stare wiadomości wypadają z okna. Szczegół z 12. tury znika, aby zrobić miejsce dla 41. tury. Model nie zapomina. Aplikacja po prostu przestaje wyświetlać mu te informacje.
Większe okno kontekstowe nie jest rozwiązaniem.
Duże okna powodują dwa problemy:
- Koszt i prędkość. Podwojenie rozmiaru okna znacząco zwiększa zapotrzebowanie na moc obliczeniową. Aplikacje często ograniczają okno, aby odpowiedzi były szybkie i tanie.
- Degradacja środka (middle degradation). Badania pokazują, że modele dobrze odnajdują fakty na początku lub na końcu długiego tekstu. Przegapiają fakty ukryte w środku.
Najlepsze aplikacje nie polegają na surowym rozmiarze okna. Stosują dwie konkretne metody:
- Rekurencyjne streszczanie (recursive summarization): Aplikacja zamienia stare wiadomości w krótkie podsumowanie. Pozwala to zachować kluczowe fakty bez zajmowania dużej ilości miejsca.
- Pobieranie (retrieval): Aplikacja przechowuje stare wiadomości w bazie danych. Wyciąga tylko istotne fakty wtedy, gdy są potrzebne. Tak właśnie działają lorebooki.
Różnica między dobrą a złą aplikacją tkwi w architekturze. Jedna wykorzystuje warstwę pamięci. Druga to tylko cienka nakładka (wrapper) na surowe okno.
Jeśli Twoja postać traci osobowość, nie używaj większego modelu. Zmień strukturę. Streszczaj stare tury. Pobieraj to, co istotne.
Traktuj okno kontekstowe jak pamięć podręczną (cache), a nie dysk twardy.
Opcjonalna społeczność edukacyjna: https://t.me/GyaanSetuAi