Videomajster
· 9 min czytania · Maciej Poczek

Jak sprawiłem, że AI mnie pamięta

Każdy model AI to Pan Miszuk z „Ricka i Morty'ego” — rodzi się do zadania i wyparowuje. Jak zbudowałem bibliotekę, do której zaglądają wszystkie kolejne Miszuki, i dlaczego samo zapisywanie notatek nie wystarczyło.

Tłum Miszuków: „Przestań już pisać prompty i po prostu pozwól mi umrzeć”. Dla nich każde zadanie to całe życie.

Kojarzycie Pana Miszuka (ang. Meeseeks) z „Ricka i Morty’ego”? Jeśli nie — śpieszę z wyjaśnieniem. W piątym odcinku pierwszego sezonu, „Meeseeks and Destroy”, pojawia się pudełeczko. Naciskasz wielki czerwony przycisk, wyskakuje niebieski ludek, oznajmia „Jestem Pan Miszuk! Oto ja!” i pomaga bohaterom rozwiązać problem.

„Ale zaraz, miało być o tym, jak AI cię zapamiętało, a nie o streszczaniu jakiejś debilnej kreskówki.”

I jest o AI. Każdy dostępny na rynku model — ChatGPT, Claude, Gemini, nawet Grok — to właśnie taki Pan Miszuk. Otwierasz aplikację, a tam: „Cześć, tu twoje imię, jak mogę pomóc?”.

Wracając do Miszuków: jak sami o sobie mówią, zbyt długa egzystencja jest dla nich bolesna. Rodzą się, żeby wykonać zadanie, po czym wyparowują.

Z AI jest tak samo. Otwierasz rozmowę, piszesz, Miszuk chętnie pomaga — aż dochodzi do momentu, w którym kończy mu się kontekst, czyli jego pamięć krótkotrwała. Musi ją wtedy sprasować, żeby dalej z tobą gadać. I zapomina szczegóły sprzed kilkunastu godzin, bo część musiał wyrzucić. Im więcej razy prasuje, tym bardziej rozmowa robi się bolesna dla obu stron.

A co, jeśli otworzysz nową rozmowę? Pojawia się kolejny Pan Miszuk, który nie ma zielonego pojęcia, o czym rozmawialiście w poprzedniej. Po prostu nie ma — bo niby skąd, skoro to inny Miszuk niż ten, któremu zwierzyłeś się ze swoich problemów gastrycznych.

Kartka, biblioteka i klucz pod wycieraczką

Pan Miszuk z rozłożonymi rękami, napis: „Jezus Maria! O co ty mnie człowieku pytasz?
Tak zaczyna się każda nowa rozmowa. On nie udaje zdziwionego — on naprawdę nie wie, bo poprzedni Miszuk zabrał wiedzę ze sobą.

Taki problem zauważyłem podczas pierwszych miesięcy pracy z AI. Każda kolejna rozmowa nie miała pojęcia, co wydarzyło się w poprzednich.

Twórcy próbują to rozwiązać plikiem pamięci. Tyle że przy wielu rozmowach ten plik puchnie, a nasz Miszuk olewa czytanie go w całości. Wyłapuje fragmenty i dalej nie wie, gdzie co jest.

Wpadłem więc na ŚWIETNY pomysł: po każdym zadaniu Miszuk powinien zapisać, co zrobił.

W sumie szczerze — wyczytałem to w internetach. Metoda nazywa się LLM wiki i wymyślił ją Andrej Karpathy, taki łepski gość, który współzakładał OpenAI, potem robił AI w Tesli, a od niedawna siedzi w Anthropic. Jego pomysł w jednym zdaniu: okno kontekstu jest wąskim gardłem, więc pamięć ma leżeć na dysku, a nie w głowie. Model to procesor, kontekst to RAM, a wszystko, co ma przetrwać dłużej niż jedno zadanie, musi być zapisane.

No i super — zbudowałem razem z Miszukiem taką bibliotekę, w której wszystkie Miszuki po wykonanej robocie zapisują, co i jak zrobiły. Lokalnie na komputerze, w Obsidianie.

Różnica wobec tego puchnącego pliku, który przed chwilą wyśmiałem, jest taka: zamiast jednego worka na wszystko robi się z tego wiele osobnych notatek. A po osobnych da się szukać.

No dobra, ale co, jeśli chcę, żeby Miszuk z telefonu też mógł z niej czytać? Synchronizacja! Tyle że Miszuki z telefonu mogły tylko czytać, nie zapisywać — bo to wszystko stało na moim komputerze, a jak komputer jest wyłączony, to i tak dupa blada.

Wtedy zaczął rodzić mi się pomysł zbudowania własnego serwisu do streamingu na własnym serwerze. Eureka! Przeniosę bibliotekę na serwer, który chodzi całą dobę.

I tak się stało. Miszuki z telefonu — kiedy akurat nie byłem przy komputerze — mogły wykonywać za mnie zadania i jednocześnie spisywać, co zrobiły, żeby kolejne mogły z tego korzystać.

Tylko problem był taki, że nowo narodzone Miszuki nie miały zielonego pojęcia o istnieniu biblioteki.

Znowu genialny pomysł: napiszemy im kartkę. „Jak nie wiesz, co inne Miszuki robiły do tej pory — za rogiem, koło toalety, masz bibliotekę. Klucz pod wycieraczką. Idź i se poszukaj.” Zapisałem im w instrukcjach podstawowych, gdzie ta biblioteka jest i jakie mniej więcej są w niej regały.

Jak Miszuki zaczęły rozwalać budowlę

Tłum Miszuków z bronią, napis: „Tak pisało w twoich notatkach — teraz zginą niewinni ludzie
Notatka po spartolonym zadaniu jest groźniejsza niż brak notatki. Braku ktoś poszuka. Notatce uwierzy.

Biblioteka rosła. Miszuki chodziły, szukały, skrupulatnie czytały.

Ale w pewnym momencie informacji było tyle, że pojedynczy Miszuk przestał być w stanie znaleźć wszystko. Wpadał do biblioteki, znajdował pierwszy lepszy wpis, w którym była mowa o jego zadaniu, i leciał robić — bo jak pamiętacie, egzystencja jest dla nich bolesna.

Jak się pewnie domyślacie, Miszuki zaczęły sromotnie partolić każde zadanie. Trochę jak każdy kolejny rząd.

Jeden Miszuk spartolił swoje — napisał notatkę. Przyszedł kolejny, poprawił po nim — napisał notatkę. Trzeci wpadał do biblioteki, czytał notatkę tego pierwszego, i zamiast pięknie dobudować kolejny fragment, rozdupcał całą budowlę. Bo myślał, że to, co pierwszy spartolił, tak właśnie ma wyglądać.

Biblioszuk

Różowy stwór siedzący w kącie maszynowni, napis: „Co się gapisz? Mnie tu nie ma
Bibliotekarz, o którym zapomniałem. Siedział w rogu przez pół roku i zajmował trzy gigabajty.

Z pomocą znowu przyszły internety i głębokie miszukanie. Wyszło, że fajnie byłoby, gdyby w bibliotece siedział bibliotekarz. Taki, który ma pełny katalog, szybko znajduje wszystko na dany temat, robi z tego krótkie streszczenie i przynosi pod nos wszystkie pozycje, w których temat się pojawia.

I tu wchodzimy w prawdziwy RAG (Retrieval-Augmented Generation) i MCP (Model Context Protocol).

Ok, robimy to. Przy budowaniu biurka dla naszego wyspecjalizowanego Biblioszuka okazało się, że jednego już mamy. Siedział w rogu biblioteki, obsługiwał moich ziomków, którzy mieli pomagać przy budowie serwisu do streamingu. Zapomniałem o nim. Zajmował trzy gigabajty i czytał po łebkach.

Zwolniliśmy go i zatrudniliśmy nowego, z lepszym wykształceniem — takiego, który rozumie i po polsku, i po angielsku. Kazaliśmy mu zaindeksować wszystkie książki. Pierwsze czytanie całości zajęło mu godzinę i sześć minut, bo robi to gołym procesorem. Mógłbym wziąć szybszego, ale głupszego. Wolałem poczekać.

I najważniejsze: Biblioszuk nie jest wynajęty z zewnątrz. Siedzi na moim serwerze, czyta moje książki i nic z tej biblioteki nie wychodzi na zewnątrz — bo stoją tam moje hasła, moje wyceny i wszystko, co przez rok wymyśliłem. Nie chciałem oddawać tego obcej firmie w zamian za wygodę.

Ale bibliotekarz nie leczy wszystkiego

Grupa rozwścieczonych Miszuków, jeden wskazuje palcem, napis: „To ten lamus napisał, że da się to naprawić!
Wpis sprzed trzech godzin nadal twierdzi, że problem rozwiązany. Robota poszła dalej, notatka została.

Biblioteka z bibliotekarzem rozwiązuje jeden problem: nowy Miszuk nie wie, co robili poprzedni. Tyle że jest drugi, o którym dowiedziałem się boleśniej.

Notatka pisana w połowie roboty kłamie.

Wygląda to tak: siedzimy nad czymś od trzech godzin, Miszuk zapisuje w bibliotece „naprawiliśmy X, przyczyną było Y”. Godzinę później okazuje się, że przyczyną wcale nie było Y i naprawa nic nie dała. Ale notatka już leży na półce. Nikt do niej nie wraca, bo robota poszła dalej. I następny Miszuk za tydzień czyta ją jak ewangelię.

Zrobiłem więc coś, co podpatrzyłem u siebie z zupełnie innej beczki — z lotniczego dziennika pokładowego.

Każdy wpis ma godzinę. Wpisu nigdy się nie poprawia. Jak o czternastej ustaliliśmy, że winna jest sieć, to ta linijka zostaje tam na zawsze — a gdy o szesnastej okazuje się, że sieć była niewinna, dopisujemy nową: „obalone, patrz wpis z czternastej”.

I tu jest cały myk: „o czternastej ustaliliśmy X” zostaje prawdą na zawsze, nawet jeśli X okazało się bzdurą. Bo to nie jest zapis o tym, jak jest. To zapis o tym, co wtedy myśleliśmy.

Notatka może się zestarzeć. Godzina nie.

Efekt uboczny okazał się ciekawszy od zamierzonego: moje pomyłki zostają na widoku. Nie da się ich po cichu wygumkować, bo poprawianie wstecz jest zakazane. Przeglądam czasem taki dziennik i widzę czarno na białym, ile razy byłem absolutnie pewny czegoś, co dwie godziny później się rozpadło.

Zdrowe. Upokarzające, ale zdrowe.

Cykl życia Miszuka dzisiaj

Pan Miszuk z rękami na biodrach, napisy: „Oczywiście, że wszystko pamiętam!
Nadal nic nie pamięta. Po prostu wie już, gdzie sprawdzić — i to wystarcza.

Pan Miszuk rodzi się. Mówi „Jestem Pan Miszuk! Oto ja!”. Następnie dostaje prosto w ryj wielkim banerem, że tu jest biblioteka — z migającym neonem. A jak wejdzie do środka, czeka już na niego Biblioszuk, który znajduje mu wszystko, czego potrzebuje do wykonania zadania.

A mnie zostaje wrażenie, że AI jednak pamięta, o czym wcześniej rozmawialiśmy.

Tematy: AI · pamięć · RAG

← Wszystkie teksty