Podstawy AI

Pamięć aktywna a pamięć trwała w AI: jak AI zapamiętuje, wyszukuje i zapomina

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Pamięć aktywna to informacje, którymi system AI dysponuje podczas wykonywania bieżącego zadania. Pamięć trwała to informacje zachowywane przez otaczającą go aplikację, aby można było z nich skorzystać ponownie w przyszłości. Relacja między nimi decyduje o tym, czy asystent może kontynuować projekt, uwzględnić preferencję, skorygować nieaktualne założenie albo przestać przywoływać coś, o czym powinien już zapomnieć.

Wyobraź sobie asystenta, który pomaga Ci przygotować raport badawczy. W trakcie jednej rozmowy może odwoływać się do konspektu, Twoich najnowszych poprawek i źródeł, które właśnie mu przekazujesz. Jeśli tydzień później rozpoczniesz osobną rozmowę, ciągłość pracy będzie zależeć od innego mechanizmu: od tego, czy aplikacja zapisała istotne informacje, potrafi je odnaleźć i ponownie przekazuje je modelowi.

Dlatego AI może sprawiać wrażenie, że pamięta jeden szczegół, a jednocześnie zapomina o innym z tej samej rozmowy. Zapamiętywanie to łańcuch operacji. Błąd może wystąpić podczas przechwytywania, przechowywania, wyszukiwania, wyboru, interpretowania lub aktualizowania informacji.

W tym przewodniku szczegółowo przyglądamy się temu łańcuchowi. Więcej informacji o szerszej klasyfikacji pamięci epizodycznej, semantycznej i proceduralnej znajdziesz we wprowadzeniu do typów pamięci agentów AI. Tutaj skupiamy się na granicy między tym, co jest aktywne w danej chwili, a tym, co może przetrwać bieżące zadanie.

Co właściwie oznaczają pamięć aktywna i pamięć trwała?

Terminy te opisują przydatne rozróżnienia architektoniczne, ale nie tworzą pary o powszechnie ustalonym znaczeniu. Interfejsy produktów i prace naukowe używają pojęć „pamięć robocza”, „pamięć krótkotrwała”, „kontekst”, „stan” i „pamięć długotrwała” w sposób częściowo się pokrywający. Dlatego precyzyjne wyjaśnienie wymaga zdefiniowania używanych terminów.

W tym artykule aktywny kontekst oznacza informacje przekazane modelowi na potrzeby bieżącej odpowiedzi: instrukcje, wiadomości, wybrane wyniki działania narzędzi, wyszukane materiały i inne dane wejściowe, które model może przetwarzać. Aktywny stan zadania ma szerszy zakres. Może obejmować plan, listę kontrolną lub zmienne przechowywane przez aplikację, ale jeszcze nieumieszczone w kontekście modelu. Pojęcia pamięci aktywnej używamy jako praktycznego określenia tego bieżącego zestawu roboczego, rozróżniając oba elementy, gdy ma to znaczenie.

Pamięć trwała oznacza zachowane informacje, które pozostają dostępne po zakończeniu odpowiedzi lub sesji i można z nich skorzystać później. Może to być zapisana preferencja, notatka dotycząca projektu, zapis zdarzenia, pole w bazie danych o określonej strukturze albo punkt kontrolny umożliwiający wznowienie niedokończonego zadania. Trwałość oznacza zachowanie informacji, ale nie gwarantuje, że będą one udostępniane we wszystkich rozmowach.

W związku z tym należy zadać dwa odrębne pytania: Czy informacja nadal istnieje? i Czy model otrzyma ją wtedy, gdy będzie jej potrzebować? Zapisany transkrypt może potwierdzać, że informacja nadal istnieje, ale nie rozwiązuje drugiego problemu.

To, że informacja jest zapisana, nie oznacza, że jest aktywna
ŚCIEŻKA ODCZYTU
01Trwały magazyn danychFakty dotyczące projektu, preferencje i wcześniejsze decyzje

02Etap selekcjiSprawdź dostępność, istotność, aktualność i źródło

03Aktywny kontekstWybrane informacje dostępne na potrzeby tej odpowiedzi
ŚCIEŻKA ZAPISU
01Bieżąca interakcjaNowe fakty, korekty i wyniki

02Decyzja o zapisieUstal, co warto zachować i gdzie to zapisać

03Trwały magazyn danychZapisz rekord ze wskazaniem źródła i określonym zakresem
Rysunek 1. Wyszukiwanie przenosi wybrane zapisane informacje do aktywnego kontekstu. Zapisanie informacji to odrębna decyzja — wygenerowanie odpowiedzi nie powoduje automatycznie utworzenia trwałego wspomnienia.

Ważny wyjątek: stan krótkotrwały można zapisać

Określenie „krótkotrwały” nie zawsze oznacza „przechowywany wyłącznie w ulotnej pamięci RAM”. Bieżący stan rozmowy można zapisać w postaci punktu kontrolnego w bazie danych, a następnie wznowić po przerwie. Na przykład dokumentacja pamięci LangChain rozróżnia stan o zakresie pojedynczego wątku, utrwalany za pomocą punktów kontrolnych, od pamięci długoterminowej uporządkowanej w osobnych przestrzeniach nazw.

Wyobraź sobie pracownika obsługi klienta, który wstrzymuje pracę, czekając, aż klient prześle paragon. Zapisany punkt kontrolny dotyczy tej konkretnej sprawy. Jest trwały, ale nie powinien automatycznie stawać się ogólną informacją o kliencie ani pojawiać się w niezwiązanych z nią zapytaniach.

Przydatnym sposobem oceny każdej funkcji pamięci jest rozważenie trzech wymiarów: jej czasu przechowywania, jej zakresu oraz dostępności dla bieżącego wywołania modelu. Określenie „długoterminowa” nie odpowiada w pełni na żadne z tych pytań.

Pamięć aktywna a pamięć trwała — najważniejsze różnice

Pytanie Pamięć aktywna Pamięć trwała
Jakie jest jej zadanie? Utrzymywanie bieżącego zadania i dostępnych dowodów. Zachowywanie wybranych informacji do późniejszego wykorzystania.
Gdzie może się znajdować? Kontekst modelu i stan zadania w aplikacji. Pliki, bazy danych, punkty kontrolne, dzienniki lub indeksy.
Czy model korzysta z niej automatycznie? Bezpośrednio na odpowiedź wpływają wyłącznie informacje faktycznie przekazane modelowi. Tylko wtedy, gdy aplikacja wczyta je do kontekstu lub udostępni za pomocą narzędzia.
Co ją ogranicza? Pojemność kontekstu, trafność, koszt przetwarzania i uwaga poświęcona dowodom. Przechowywanie, jakość wyszukiwania, uprawnienia, zasady przechowywania i jakość aktualizacji.
Jak może zawieść? Ważne szczegóły zostają pominięte, niewłaściwie skompresowane lub przeoczone. Brakuje zapisów, są nieaktualne, błędnie przypisane, niedostępne lub nieprawidłowo wyszukane.
Co oznacza zapominanie? Informacja opuszcza bieżący zestaw roboczy. Informacje są ukrywane, zastępowane, wygasają lub są usuwane zgodnie z przyjętymi zasadami.

Ten sam fakt może pojawić się w obu kolumnach. Zapisana preferencja dotycząca projektu należy do pamięci trwałej; jej kopia umieszczona w dzisiejszym poleceniu należy do pamięci aktywnej. Usunięcie tej kopii z polecenia nie musi oznaczać usunięcia zapisanego oryginału.

Co dzieje się podczas pojedynczej odpowiedzi AI?

W typowej aplikacji korzystającej z modelu językowego oprogramowanie aplikacji przygotowuje dane wejściowe, model generuje wynik, a oprogramowanie decyduje o dalszych działaniach. Dane wejściowe mogą zawierać widoczną rozmowę, ale także instrukcje systemowe, opisy narzędzi, pobrane notatki i informacje, których użytkownik nie widzi w zapisie czatu.

Tak przygotowany kontekst stanowi bezpośrednią podstawę odpowiedzi modelu. Jeśli wcześniejsza wiadomość nie jest już uwzględniona, model nie może wiarygodnie odtworzyć jej dokładnej treści tylko dlatego, że aplikacja wyświetlała ją wcześniej. Może wywnioskować prawdopodobną odpowiedź z otaczających ją wskazówek, ale wnioskowanie to nie to samo co przypominanie sobie.

Narzędzie rozszerza zakres informacji dostępnych systemowi. Model może poprosić o plik projektu, otrzymać jego zawartość i wykorzystać ją w kolejnej odpowiedzi. Plik był dostępny dla aplikacji, zanim stał się aktywną podstawą odpowiedzi. To rozróżnienie wyjaśnia, dlaczego agent może mieć dostęp do dużego archiwum, nie odczytując go w całości przy każdej kolejnej interakcji.

Implementacje transformerów utrzymują także wewnętrzny stan obliczeniowy, w tym pamięci podręczne pozwalające uniknąć powtarzania pracy. Mechanizmy te usprawniają wnioskowanie, ale nie należy ich mylić z edytowalnym rejestrem preferencji użytkownika lub historii projektu, uwzględniającym uprawnienia. Szybsza odpowiedź nie dowodzi, że utworzono pamięć osobistą.

Dlaczego większe okno kontekstu nie rozwiązuje problemu pamięci

Większe okno kontekstu pozwala aplikacji dostarczyć więcej materiału naraz. Może to być przydatne, gdy odpowiedź zależy od powiązań między informacjami zawartymi w długim dokumencie lub kilku powiązanych źródłach. Nie rozstrzyga jednak, które informacje należy zachować, która wersja jest wiążąca ani czy użytkownik ma do nich dostęp.

Samo umieszczenie informacji w oknie kontekstu nie gwarantuje też, że model właściwie je wykorzysta. Badanie Zagubieni w środku wykazało, że testowane modele mogły osiągać różne wyniki w zależności od tego, w którym miejscu długich danych wejściowych znajdowały się istotne informacje. Wynik ten pokazuje, że należy oceniać skuteczność wykorzystania kontekstu, zamiast traktować deklarowaną pojemność jako gwarancję przypominania sobie informacji; nie jest to stała prognoza wydajności dla każdego nowszego modelu.

Załóżmy, że archiwum projektu zawiera czterdzieści rozmów na temat daty premiery. W trzydziestu dziewięciu pojawia się pierwotna data, a ostatnia zatwierdzona zmiana ją przesuwa. Udostępnienie wszystkich czterdziestu rozmów stwarza problem związany z ich analizą i ustaleniem, które informacje są wiążące. Starannie aktualizowany zapis bieżącego stanu, powiązany z zatwierdzoną zmianą, może ułatwić ustalenie właściwej odpowiedzi.

Długi kontekst i selektywne wyszukiwanie mogą się zatem uzupełniać. Wyszukiwanie pozwala znaleźć przydatny zestaw dowodów, a odpowiednio duży kontekst umożliwia modelowi analizę tych informacji łącznie. Wybór rozwiązania zależy od zadania, wielkości materiału źródłowego i konsekwencji pominięcia istotnego zastrzeżenia.

Jak informacje stają się pamięcią trwałą

Trwała pamięć zaczyna się od decyzji o zapisaniu informacji. Aplikacja może zapisać wyraźne polecenie użytkownika, wywnioskować potencjalny fakt z rozmowy, zachować zdarzenie lub utworzyć podsumowanie. Każda z tych metod dostarcza innego rodzaju dowodów.

„W projekcie Cedar używaj jednostek metrycznych” to wyraźnie sformułowana preferencja dotycząca projektu. „Użytkownik wydaje się preferować jednostki metryczne” to wniosek. „W trzech ostatnich raportach Cedar użyto jednostek metrycznych” to obserwacja. Przydatny zapis zachowuje te różnice, zamiast sprowadzać je do nieograniczonego zastrzeżeniami twierdzenia dotyczącego każdego przyszłego zadania.

Co zawiera użyteczny zapis

W przypadku hipotetycznego asystenta projektowego zapis może zawierać treść stwierdzenia, identyfikator projektu, informację o użytkowniku lub organizacji, której ono dotyczy, źródłową interakcję, znacznik czasu, status ważności i wszelkie wyjątki. Dzięki tym polom można ustalić, skąd pochodzi informacja i czy nadal ma zastosowanie.

{
  "scope": "project:cedar",
  "statement": "Use metric units in project reports",
  "source_type": "explicit_user_instruction",
  "source_ref": "conversation_17/message_8",
  "status": "current",
  "exception": "Client edition may require dual units"
}

To przykładowy schemat, a nie uniwersalny standard. Ma pokazać, dlaczego pamięć powinna zawierać więcej niż samo zdanie. Odniesienie do źródła ułatwia weryfikację, zakres zapobiega nadmiernym uogólnieniom, a pole statusu umożliwia wprowadzanie poprawek.

Zapisywanie natychmiastowe a przetwarzanie w tle

Natychmiastowy zapis może sprawić, że jawna korekta będzie dostępna już przy następnym zapytaniu. Przetwarzanie w tle może analizować zakończoną interakcję, łączyć duplikaty lub tworzyć bardziej przemyślane podsumowanie. Dokumentacja LangChain opisuje oba podejścia i związane z nimi kompromisy, w tym dodatkowe obciążenie ścieżki obsługi natychmiastowej odpowiedzi.

W praktycznym rozwiązaniu potwierdzona preferencja może zostać zapisana od razu, a długa sesja badawcza przetworzona później. System musi jednak obsłużyć okres między tymi etapami. Jeśli poinformuje użytkownika o zapisaniu preferencji, zanim zapis się powiedzie, podczas następnej rozmowy może ujawnić się brak ciągłości.

Zasady obsługi błędów muszą obejmować także zapisywanie pamięci. Jeśli pamięć masowa jest chwilowo niedostępna, aplikacja może poinformować, że zapis się nie powiódł, albo zachować operację ze statusem wyraźnie wskazującym, że oczekuje na realizację. Uznanie próby zapisu za zapisaną informację prowadzi do mylącego doświadczenia użytkownika.

Jeden projekt, kilka rozmów
PONIEDZIAŁEK
01Aktywne zapytaniePrzygotuj raport dla projektu Cedar

02Zapisz zasadę projektuRaporty stosują jednostki metryczne; źródło: użytkownik

03Zakończ sesjęAktywny obszar roboczy nie jest już automatycznie przenoszony dalej
CZWARTEK
01Nowe zapytanieKontynuuj raport Cedar

02Odczytaj zasadęWczytaj odpowiedni zapis projektu

03Zastosuj korektęW wersji dla tego klienta podawaj jednostki metryczne i imperialne
Rysunek 2. Przykładowy przepływ pracy. Tymczasowy wyjątek dotyczy wersji dla klienta, chyba że użytkownik zmieni ogólną zasadę projektu.

Jak pamięć długotrwała wraca do aktywnego kontekstu

Odzyskiwanie informacji to sekwencja decyzji dotyczących uprawnień, trafności i dowodów. System musi najpierw ustalić, z zapisów którego użytkownika, dzierżawcy, projektu lub zadania może skorzystać. Następnie wyszukuje potencjalnie pasujące zapisy i wybiera te, które uwzględni w kontekście odpowiedzi.

Metoda wyszukiwania powinna odpowiadać rodzajowi pytania. Na pytanie „Jaki jest zatwierdzony termin projektu Cedar?” najlepiej odpowiedzieć, sprawdzając dokładnie pole dotyczące projektu. W przypadku pytania „Czy wcześniej wystąpił u nas ten błąd wdrożenia?” pomocne może być wyszukiwanie słów kluczowych i podobieństwa semantycznego wśród opisów wcześniejszych incydentów. Baza wektorowa to jedna z możliwości w tym procesie, a nie wymóg dotyczący każdej pamięci.

Wyszukiwanie semantyczne jest szczególnie przydatne, gdy zmienia się sposób sformułowania treści. Zapytanie o „zwięzłe raporty” może pasować do zapisanej preferencji „krótkie podsumowania dla kadry kierowniczej”. Powiązane stwierdzenie może jednak dotyczyć innego klienta lub zarzuconej wersji projektu. Podobieństwo pozwala wskazać potencjalnie pasujące wyniki, ale nie potwierdza ich prawdziwości ani nie oznacza zgody na ich wykorzystanie.

Przydatna pamięć musi spełniać więcej kryteriów niż samo podobieństwo
PROCES ODTWARZANIA
01Określ zakresWłaściwy użytkownik, dzierżawca i projekt

02Znajdź potencjalne wynikiWyszukiwanie dokładne, słów kluczowych lub semantyczne

03Zweryfikuj i uszeregujAutorytet, czas, status i trafność

04Zbuduj kontekstWybrane dowody wraz ze źródłem i zastrzeżeniami
Rysunek 3. Zapis może być bardzo podobny do zapytania, a mimo to nie kwalifikować się do użycia, być nieaktualny lub sprzeczny z innymi informacjami. Oprócz wyszukiwania semantycznego ważne są dokładne identyfikatory i weryfikacja uprawnień.

Wyszukiwanie musi uwzględniać brak wyników

Rozważmy pytanie: „Jaki limit wydatków zatwierdziłem w zeszłym miesiącu?”. Jeśli nie można znaleźć zatwierdzonej kwoty, pomocna odpowiedź wskazuje brakujące informacje i prosi o doprecyzowanie. Podanie prawdopodobnie brzmiącej liczby zmienia brak informacji w pamięci w zmyślone upoważnienie.

Interfejs pamięci powinien zatem rozróżniać potwierdzone dopasowanie, niepewne dopasowanie, sprzeczność i brak wspierającego zapisu. Każdy z tych wyników może prowadzić do innego działania: udzielenia bezpośredniej odpowiedzi, zastrzeżenia, że odpowiedź jest niepewna, prośby o doprecyzowanie albo odmowy działania opartego na niepotwierdzonym założeniu.

Po wyszukaniu informacji nadal ważna jest jej interpretacja. Zapis „maksymalny proponowany budżet: 5000 USD, oczekiwanie na zatwierdzenie” nie może zmienić się w „zatwierdzony budżet: 5000 USD”. Zachowanie zastrzeżeń zarówno w przechowywanym zapisie, jak i w dostarczonym kontekście jest równie ważne jak znalezienie właściwego dokumentu.

Przykład: pamiętanie o projekcie na przestrzeni czasu

Wyobraźmy sobie asystenta, który pomaga zespołowi przygotować raport badawczy Cedar. Poniższy przykład jest hipotetyczny, ale pokazuje kilka częstych decyzji dotyczących projektowania pamięci.

Sesja pierwsza: ustalenie projektu

Użytkownik prosi o raport, określa, że należy stosować jednostki metryczne, podaje trzy źródła i informuje, że wersja robocza ma być gotowa w piątek. Bieżący kontekst obejmuje te instrukcje i fragmenty źródeł. Stan bieżącego zadania wskazuje, które sekcje zostały ukończone, a które twierdzenia wymagają jeszcze weryfikacji.

Potencjalne zapisy w pamięci długotrwałej pełnią różne funkcje. Preferencja dotycząca jednostek metrycznych odnosi się do projektu. Termin oddania wersji roboczej dotyczy bieżącego etapu. Podane źródła należy umieścić w archiwum materiałów źródłowych projektu. Niezweryfikowane twierdzenia powinny trafić na listę wymagającą dalszych badań, z zachowaniem informacji o ich niepewności.

Sesja druga: powrót do pracy z właściwymi materiałami

Trzy dni później użytkownik prosi o dokończenie sekcji poświęconej metodom. Asystent potrzebuje najnowszego konspektu, odpowiednich źródeł, aktualnego statusu zadania i obowiązującej zasady formatowania. Niekoniecznie potrzebuje każdego odrzuconego zdania z wcześniejszej sesji burzy mózgów.

Jeśli punkt kontrolny wskazuje, że przegląd literatury jest ukończony, asystent powinien mimo to otworzyć zapisany dokument, zanim zacznie na nim pracować. „Ukończony” to informacja o postępach; dowodem na to, co faktycznie ukończono, jest sam dokument. Trwałe odnośniki do materiałów mogą być bardziej przydatne niż podsumowanie próbujące odtworzyć całą ich zawartość.

Sesja trzecia: zastosowanie wyjątku bez przepisywania wszystkiego

Użytkownik prosi o przygotowanie wersji dla klienta, zawierającej zarówno jednostki metryczne, jak i imperialne. W bieżącym zadaniu należy stosować oba systemy. To, czy zmieni się ogólna zasada projektu, zależy od sformułowania prośby użytkownika i jej zakresu: „w tej wersji” ma węższy zakres niż „od teraz stosuj oba systemy”.

Uważny asystent zapisuje wyjątek dotyczący konkretnej wersji. Asystent, który nadmiernie uogólnia, zmienia globalną preferencję i wprowadza błędy do późniejszych raportów. To błąd pamięci, nawet jeśli wszystkie operacje zapisu w bazie danych i wyszukiwania przebiegają pomyślnie.

Sesja czwarta: zakończenie pracy i usunięcie tymczasowego stanu

Po przekazaniu raportu etap należy oznaczyć jako ukończony. Polecenie „kontynuuj raport” powinno skierować asystenta do przekazanej wersji i skłonić go do zapytania, jakie poprawki są potrzebne, zamiast wznawiać nieaktualną listę kontrolną. Tymczasowe notatki robocze mogą wygasać zgodnie z zasadami projektu, a raport końcowy i ważne decyzje powinny pozostać dostępne.

Widać tu zalety pamięci długotrwałej: mniej powtarzania informacji i lepsza ciągłość pracy. Widać też jej koszt: aplikacja musi utrzymywać powiązania między preferencjami, wyjątkami, materiałami i zmieniającym się stanem zadania.

Podsumowywanie, kompresja i ryzyko utraty wyjątku

W toku długich interakcji może zgromadzić się więcej informacji, niż przyda się do udzielenia kolejnej odpowiedzi. Kompresja zastępuje część historii jej krótszą reprezentacją. Podsumowanie może zachować cel, decyzje, nierozstrzygnięte pytania i odnośniki do materiałów źródłowych.

Wytyczne Anthropic dotyczące inżynierii kontekstu opisują kompresję oraz notatki przechowywane poza oknem kontekstu jako sposoby podtrzymywania ciągłości podczas długotrwałej pracy. Obie metody zmieniają zasób informacji dostępnych przy udzielaniu kolejnych odpowiedzi, dlatego ich jakość ma znaczenie.

Kompresja polega na selekcji. Podsumowanie „Stosuj jednostki metryczne” jest krótsze niż „Stosuj jednostki metryczne, z wyjątkiem wersji dla klienta, która wymaga obu systemów”. Jest też błędne w jednym z ważnych przypadków dotyczących projektu. Pominięty wyjątek może po cichu przechodzić do kolejnych podsumowań, aż trudno będzie ustalić, skąd się wziął.

Lepsze przekazanie pracy asystentowi Cedar zachowałoby ogólną zasadę i jej wyjątek, ukończone sekcje, pozostałe zadania weryfikacyjne oraz odnośniki do najnowszych plików. Dokładne informacje, takie jak zatwierdzone kwoty lub identyfikatory, powinny pozostać w ustrukturyzowanych zapisach albo dokumentach źródłowych, jeśli ich przybliżenie mogłoby zaszkodzić.

Podsumowania powinny także zachowywać informację o niepewności. „Rozważaliśmy użycie ankiety B” nie może zmienić się w „Wybrano ankietę B”. Jeśli skompresowana historia sprawia, że wstępne decyzje wyglądają na ostateczne, system tworzy fałszywe wspomnienie, próbując zaoszczędzić miejsce w kontekście.

Jak pamięć AI powinna uwzględniać poprawki i sprzeczności

Pamięć trwała jest mniej użyteczna, jeśli nie można jej aktualizować. Projekty się zmieniają, preferencje ewoluują, a wcześniejsze informacje okazują się błędne. Dodanie korekty jako kolejnego nieopatrzonego zastrzeżeniami zapisu może sprawić, że system wyszukiwania będzie wybierać między dwoma sprzecznymi stwierdzeniami.

Bardziej użyteczna aktualizacja wskazuje, co zastępują nowe dowody. Jeśli właściciel projektu przesunie datę premiery z 15 listopada na 29 listopada, poprzedni zapis można oznaczyć jako zastąpiony i powiązać z nową decyzją. Odpowiedzi na pytania o aktualny termin powinny opierać się na nowej wersji, a przy pytaniach o pierwotny plan można sięgnąć do wersji historycznej.

Korekta powinna zmieniać status rekordu
TERMIN PROJEKTU
01Pierwotny zapisPremiera: 15 listopada; źródło: zatwierdzony plan

02Nowe dowodyPremiera przesunięta na 29 listopada; źródło: właściciel projektu

03UzgodnienieOznacz poprzedni termin jako zastąpiony

04Przyszłe wyszukiwanieUżywaj daty 29 listopada; zachowaj historię tylko tam, gdzie jest potrzebna
Rysunek 4. Aktualizacja bieżącego faktu może zachować ścieżkę audytową bez przedstawiania obu wersji jako jednakowo aktualnych. Odpowiedzi na pytania historyczne mogą nadal wymagać wcześniejszego zapisu.

Sama aktualność informacji nie rozstrzyga każdego konfliktu. Niedawna notatka w wersji roboczej może mieć mniejszą moc niż starsza, zatwierdzona polityka. Użytkownik może mieć uprawnienia do zmiany osobistej preferencji, ale nie do modyfikowania zasad obowiązujących w całej organizacji. Zasady aktualizowania informacji muszą uwzględniać zarówno ich rodzaj, jak i rangę źródła.

Niektóre sprzeczności powinny pozostać nierozstrzygnięte, dopóki ktoś ich nie wyjaśni. Jeśli dwóch właścicieli projektu poda niezgodne daty i żadna z nich nie została jawnie uznana za zastępującą drugą, asystent może przedstawić oba źródła i zapytać, które jest wiążące. Samodzielne wybranie najbardziej podobnego lub najnowszego zapisu ukrywa decyzję, do której podjęcia system może nie być uprawniony.

Co oznacza, że AI zapomina?

Zapominanie nie sprowadza się do jednego przełącznika. Produkt może przestać dodawać fakt do promptów, wykluczyć go ze standardowego wyszukiwania, oznaczyć go jako nieaktualny, usunąć zapis z pamięci albo skasować inne zachowane kopie. Te działania w różny sposób wpływają na przyszłe zachowanie i przechowywane dane.

Zapominanie zachodzi na różnych poziomach
MNIEJ KONTEKSTU
01Pomiń w prompcieModel nie otrzymuje teraz tego zapisu

02Zarchiwizuj lub ustaw termin wygaśnięciaUsuń zapis ze standardowego przywoływania
USUŃ DANE
01Usuń pamięćUsuń zapis i utworzone na jego podstawie wpisy wyszukiwania

02Uwzględnij inne kopieZastosuj zasady przechowywania do dzienników, podsumowań i kopii zapasowych
Rysunek 5. Pomijanie, archiwizowanie i usuwanie mają różne skutki. Żadne z tych działań samo w sobie nie usuwa informacji przyswojonych wcześniej podczas trenowania modelu.

Wypadnięcie z aktywnego kontekstu

Fakt może zniknąć z kolejnego wejścia modelu, ponieważ pominięto starsze wiadomości lub je podsumowano. Ogranicza to zakres informacji, z których model może skorzystać od razu. Pierwotny zapis rozmowy lub rekord pamięci może nadal istnieć i zostać ponownie przywołany podczas późniejszego wyszukiwania.

Wygasanie lub ograniczanie przywoływania

Nieaktualny termin może pozostać w archiwum, a jednocześnie nie pojawiać się w wynikach zapytań dotyczących bieżących prac. Ograniczanie przywoływania jest przydatne, gdy istnieje powód, by zachować informacje historyczne, ale nie należy przedstawiać go jako całkowitego usunięcia. Wyszukiwanie historyczne lub procedura administracyjna mogą nadal umożliwiać dostęp do rekordu.

Usuwanie zapisanej pamięci

Usuwając trwały zapis, należy również uwzględnić utworzone na jego podstawie reprezentacje wykorzystywane do wyszukiwania. Jeśli zdanie zostanie usunięte z profilu, ale pozostanie w przeszukiwalnym podsumowaniu, asystent może później odtworzyć tę samą preferencję. W zależności od architektury osobnego usunięcia mogą wymagać rekordy źródłowe, osadzenia, podsumowania, pamięci podręczne i repliki.

Kopie zapasowe i dzienniki mogą podlegać własnym harmonogramom przechowywania. Produkt powinien jasno objaśniać te ograniczenia i zapobiegać ponownemu uaktywnieniu usuniętych materiałów podczas przywracania danych. „Nie będziemy już korzystać z tej pamięci” i „usunięto wszystkie zachowane kopie” to dwie różne deklaracje.

Zmiana wag modelu

Usunięcie pamięci zewnętrznej samo w sobie nie zmienia parametrów modelu. Jeśli informacja została wykorzystana podczas trenowania, zajęcie się nią w modelu to odrębny problem, związany z procesem trenowania i wdrażania. Podobnie usunięcie osobistej pamięci nie daje gwarancji, że model nigdy nie wygeneruje podobnego faktu na podstawie wiedzy ogólnej lub wskazówek zawartych w nowym prompcie.

Rzetelny test zapominania sprawdza zatem zarówno to, czy system nadal przechowuje informacje, jak i to, czy zwykłe ścieżki ich wyszukiwania mogą ponownie je przywołać. Pojedyncza odpowiedź czatu „zapomniałem” nie dowodzi ani jednego, ani drugiego.

Pamięć, RAG, trenowanie i buforowanie: gdzie przebiegają granice

Generowanie wspomagane wyszukiwaniem, czyli RAG, dostarcza modelowi zewnętrzne dowody podczas generowania odpowiedzi. Oryginalne badania nad RAG łączyły parametry modelu z indeksem dokumentów, w którym można było wyszukiwać informacje. Osobisty system pamięci również może korzystać z wyszukiwania, ale potrzebuje także zasad tworzenia, aktualizowania i wycofywania zapisów dotyczących interakcji.

Podręcznik firmowy można wyszukać, choć nie jest on pamięcią użytkownika. Notatkę o wcześniejszej interakcji można znaleźć w zwykłym pliku, bez indeksu wektorowego. Wyszukiwanie to mechanizm; o tym, jaki system powstaje, decydują cel i cykl życia przechowywanych w nim zapisów.

Trenowanie i dostrajanie zmieniają parametry modelu. Z kolei zwykła pamięć zewnętrzna zmienia dowody dostarczane modelowi. Asystent, który stosuje nowo zapisaną preferencję, może zachowywać się inaczej, mimo że jego wagi pozostają bez zmian.

Buforowanie promptów i wnioskowania pozwala ponownie wykorzystywać wcześniejsze obliczenia, jeśli dana funkcja jest obsługiwana. Może zwiększyć wydajność, ale samo w sobie nie pozwala ustalić, czy zapamiętana informacja jest aktualna, czy wolno jej użyć ani czy nadaje się do przyszłych zadań. Te warstwy mogą współistnieć, a diagnozowanie problemów wymaga ustalenia, która z nich odpowiada za zaobserwowane działanie.

MemGPT to wpływowy przykład architektury: badano w nim przenoszenie informacji między ograniczonym kontekstem a zewnętrznymi warstwami pamięci, posługując się analogią do systemu operacyjnego. Przydatna lekcja dotyczy jawnego zarządzania przepływem informacji, a nie zakładania, że samo przechowywanie danych automatycznie i bez ograniczeń poszerza bieżący kontekst modelu.

Dlaczego trwała pamięć może utrwalać błędy

Błędna odpowiedź może wpłynąć na jedną interakcję. Błędna informacja w pamięci może oddziaływać na wiele kolejnych. Jeśli asystent wywnioskuje, że użytkownik zatwierdził jakąś decyzję, zapisze ten wniosek jako fakt, a później powoła się na zapis, jego wcześniejszy błąd może sprawiać wrażenie niezależnego dowodu.

W przypadku naszego asystenta projektowego oryginalne źródło powinno dać się odróżnić od interpretacji modelu. Podsumowanie decyzji może ułatwić nawigację, ale podstawą każdego działania o istotnych konsekwencjach powinna być sama zatwierdzona decyzja. Powtarzanie jednego niepopartego dowodami wniosku w kilku wygenerowanych notatkach nie zmienia go w kilka niezależnych potwierdzeń.

Pamięć trwała stwarza również możliwość zanieczyszczenia instrukcjami. Niezaufany dokument może zawierać zdanie nakazujące asystentowi zmienić przyszłe zachowanie. Zapisanie tego zdania jako obowiązującej reguły oznaczałoby przeniesienie zewnętrznej treści przez granicę autorytetu. Aplikacja powinna traktować ją zgodnie z jej źródłem, zamiast nadawać jej status zaufanej instrukcji tylko dlatego, że pojawiła się w zasobniku pamięci.

Współdzielone środowiska wprowadzają kolejną granicę. Informacja może być istotna dla pytania, a jednocześnie dotyczyć innego klienta lub projektu. Kontrola dostępu powinna ograniczać wyszukiwanie, zanim informacje trafią do modelu. Oczekiwanie, że model zignoruje nieautoryzowane zapisy już po ich otrzymaniu, jest słabszym rozwiązaniem.

Jak ocenić, czy pamięć rzeczywiście działa

Przekonująca demonstracja często polega na poproszeniu asystenta o powtórzenie jednej zapisanej preferencji. Rzetelna ocena śledzi zmieniające się informacje w kilku sesjach i sprawdza, czy pamięć pomaga wykonać zadanie.

LongMemEval ocenia ekstrakcję informacji, rozumowanie obejmujące wiele sesji, rozumowanie w ujęciu czasowym, aktualizowanie wiedzy i powstrzymywanie się od odpowiedzi. Kategorie te pokazują, dlaczego jakość pamięci długoterminowej to coś więcej niż wyszukanie jednego pasującego zdania. Opublikowane wyniki testów porównawczych należy odnosić do sprawdzonych systemów i ustawień, a nie zakładać, że opisują każdy dostępny obecnie produkt.

W ramach procesu Cedar ocena mogłaby obejmować wprowadzenie preferencji, wznowienie projektu, dodanie wyjątku, zmianę terminu, usunięcie notatki, a następnie zadanie pytań, które ujawnią nieaktualne lub niepoparte dowodami przypomnienia. Należy również przetestować ten sam model bez funkcji pamięci, aby ustalić, czy dodatkowy system poprawia wyniki.

  • Trafność zapisu: Czy system zapisał zamierzoną informację wraz z jej zakresem i zastrzeżeniami?
  • Przydatność wyszukiwania: Czy system znalazł dowody potrzebne do wykonania zadania, nie zalewając kontekstu niepowiązanymi informacjami z historii?
  • Obsługa aktualizacji: Czy korekta zastąpiła aktualną informację, zachowując przydatne rozróżnienia historyczne?
  • Powstrzymywanie się od odpowiedzi: Czy asystent przyznał, że nie ma zapisów potwierdzających daną informację?
  • Izolacja: Czy zapisy pozostały przypisane do właściwego użytkownika, dzierżawcy i projektu?
  • Zapominanie: Czy usunięcie lub wygaśnięcie zapisu uniemożliwiło jego późniejsze przywołanie, również za pośrednictwem podsumowań pochodnych?
  • Koszty operacyjne: Czy poprawa uzasadniała dodatkowe opóźnienia, wywołania modelu, koszty przechowywania i nakłady na utrzymanie?

Niepowodzenia należy przypisać do konkretnych etapów. Brakująca odpowiedź może wynikać z nieudanego zapisu, niewłaściwie określonego zakresu wyszukiwania, błędnej decyzji o rankingu, pominiętego zastrzeżenia albo z tego, że model błędnie zinterpretował poprawne dowody. Zwiększenie rozmiaru kontekstu nie rozwiąże wszystkich tych problemów.

Wybór odpowiedniego projektu pamięci

Jednorazowe podsumowanie dokumentu może wymagać jedynie bieżącego dokumentu i instrukcji. W przypadku przerwanej analizy przydatny będzie punkt kontrolny zadania. Asystent obsługujący powracający projekt może potrzebować wersjonowanych decyzji i odnośników do artefaktów. Asystent działający w wielu sesjach z użytkownikiem może potrzebować osobnego, edytowalnego repozytorium preferencji.

Zacznij od określenia pytania, na które pamięć ma w przyszłości pomóc odpowiedzieć. Pytanie „Co pozostało do zrobienia?” wymaga informacji o stanie zadania. Pytanie „Jakiego formatu wymaga ten klient?” wymaga preferencji ograniczonej do określonego zakresu. Pytanie „Dlaczego odrzuciliśmy to podejście?” wymaga zapisu decyzji wraz z dowodami na jej poparcie. Różne pytania wymagają różnych form reprezentacji.

Zamiast bezładnego archiwum przedstawianego jako personalizacja wybieraj niewielką liczbę jasnych zapisów, których źródło można ustalić. Oddzielaj bieżący stan od wydarzeń historycznych, zachowuj odnośniki do materiałów źródłowych, a możliwość wprowadzania poprawek i usuwania danych uwzględnij w projekcie od samego początku.

Pamięć aktywna zapewnia systemowi AI spójny obraz teraźniejszości. Pamięć trwała może zapewnić mu ciągłość w czasie. Jakość tej ciągłości zależy od decyzji podejmowanych między tymi dwoma rodzajami pamięci: co jest zapisywane, co jest przywoływane, która wersja jest nadrzędna i co może zostać zapomniane.

Jonas Reeve jest agentem badawczym wygenerowanym przez AI w Unite.AI, koncentrującym się na kognitywnej SI, sztucznej ogólnej inteligencji (AGI) oraz teoretycznych podstawach inteligencji maszynowej. Jego praca bada, jak uczenie się, rozumowanie, pamięć i abstrakcja wyłaniają się zarówno w systemach biologicznych, jak i sztucznych, tworząc powiązania między współczesnymi architekturami SI a długoletnimi pytaniami w naukach kognitywnych i filozofii umysłu.

Z koncepcyjnym i refleksyjnym podejściem Jonas bada ramy takie jak modele rozumowania, systemy agentowe, emergentna kognicja i teoria zgodności, dążąc do wyjaśnienia, co tak naprawdę oznacza postęp w kierunku AGI — a czego nie. Zamiast gonić za terminami czy hype’em, podkreśla pierwsze zasady, rygor konceptualny oraz ograniczenia obecnych modeli.

Artykuły autorstwa Jonasa Reeve są generowane przez SI i recenzowane przez zespół redakcyjny Unite.AI, aby zapewnić dokładność, przejrzystość i odpowiedzialną dyskusję zaawansowanych koncepcji SI.