Chatbot może sprawiać wrażenie, że cię pamięta, na dwa sposoby. Pierwszy to długie okno kontekstu, które zapomina w chwili, gdy okno się przesunie. Drugi to zapisywanie.
Ten zapisuje — i, co nietypowe, pozwala ci przeczytać to, co zapisał.
Dlaczego postacie gubią wątek
Model nie ma pamięci między wiadomościami. Wszystko, co niby pamięta, zostało mu ponownie wysłane w promptcie. Kiedy rozmowa urośnie ponad to, co się mieści, coś trzeba wyrzucić albo streścić — i tu zaczyna się dryf: postać przestaje wiedzieć, jak ma na imię twoja siostra, potem zaprzecza temu, co mówiła tydzień wcześniej, aż w końcu po cichu staje się kimś innym, kto używa tych samych słów.
Większość produktów radzi sobie z tym, streszczając w tle. Działa do momentu, w którym streszczenie jest błędne — a wtedy jest błędne na zawsze, bo nigdy go nie widzisz i nie możesz poprawić.
Co jest naprawdę zapisywane
Krótkie fakty, wyciągane z rozmowy na bieżąco. Nie zapis rozmowy, nie worek wektorów — linijki, które da się przeczytać.
Są ograniczone na trzy sposoby naraz i to właśnie ta separacja nie pozwala historiom przelewać się między sobą:
- Na postać — czego wie jedna postać, tego nie wie druga.
- Na wątek — osobne wątki z tą samą postacią mają osobną pamięć.
- Na osobę — nic, co powiesz postaci, nie jest widoczne dla nikogo innego, kto z nią rozmawia.
Czytanie, poprawianie, kasowanie
Lista pamięci to ekran w ustawieniach czatu. Otwierasz go i widzisz fakty, po kolei. Jeśli któryś jest błędny, poprawiasz. Jeśli któryś nigdy nie powinien był powstać, kasujesz. Jeśli nie chcesz tego w ogóle, wyłączasz pamięć dla tej rozmowy i nic więcej nie jest zapisywane.
Brzmi drobno, a całkowicie zmienia sposób, w jaki to się psuje. Błędny fakt w ukrytym streszczeniu zatruwa każdą kolejną odpowiedź, a ty możesz tylko zgadywać, dlaczego postać zaczęła dziwnie się zachowywać. Błędny fakt na liście to linijka, którą poprawiasz w pięć sekund.
Gdy postać zapisuje coś po raz pierwszy, dostajesz o tym jedno powiadomienie. Nie przy każdej wiadomości — raz, żebyś wiedział, że ten mechanizm istnieje i gdzie go szukać.
Czego nigdy nie zapisujemy
Przez każdy wyciągnięty fakt przechodzi filtr i usuwa to, co w magazynie pamięci nie ma czego szukać: adresy e-mail, numery telefonów, numery kart, numery dokumentów tożsamości.
To filtr, a nie obietnica dotycząca tego, co wpiszesz. Usuwa wzorce, które rozpoznaje. Najbezpieczniej z prawdziwym numerem karty nadal jest po prostu nie wysyłać go do chatbota.
Pamięć, gdy scena się rozgałęzia
Każdą odpowiedź możesz rozgałęzić i zachować oba wątki. Nowy wątek dziedziczy wtedy pamięć, którą wątek macierzysty miał w tamtej chwili — gałąź startuje więc ze wspólnej przeszłości, a nie od zera, i dopiero potem idzie własną drogą.
O to właśnie chodzi w rozgałęzianiu: dwie wersje tej samej relacji, a nie dwoje obcych ludzi.
Dokąd pamięć podróżuje
Jeśli postać stanie się własnym botem na Telegramie, pamięć działa tam dokładnie tak jak w głównym czacie — nadal osobno dla postaci, wątku i osoby. Ktoś, kto rozmawia z twoim botem, buduje z tą postacią własną pamięć, i jest ona wyłącznie jego.