Model nie pamięta. Ty pamiętasz.
Duże modele językowe (LLM) nie posiadają pamięci.
Kiedyś myślałem, że każda sesja czatu przechowuje własny kontekst. Myliłem się. Kiedy rozmawiasz z LLM, model nie pamięta Twojego poprzedniego pytania, chyba że prześlesz je ponownie.
Model jest bezstanowy (stateless). Oznacza to, że każde zapytanie to nowy początek.
Aby stworzyć konwersację, musisz samodzielnie zarządzać historią. Robisz to, przesyłając tablicę wszystkich poprzednich wiadomości wraz z każdym nowym zapytaniem.
„Pamięć” to po prostu lista wiadomości:
- Użytkownik: Cześć.
- Asystent: Cześć!
- Użytkownik: Jak się masz?
Jeśli nie dołączysz dwóch pierwszych linii do swojego kolejnego zapytania, model nie będzie wiedział, że już się przywitałeś.
Dowiedziałem się tego, unikając korzystania z SDK. Większość programistów używa narzędzi takich jak Anthropic SDK, aby ukryć tę złożoność. SDK zajmuje się historią wiadomości i nagłówkami za Ciebie.
Jeśli chcesz dowiedzieć się, jak działają LLM, zamiast tego użyj surowego fetch. Nie używaj abstrakcji. Gdy samodzielnie zarządzasz cyklem żądania i odpowiedzi, widzisz każdą decyzję.
Ta ręczna kontrola pozwala później budować zaawansowane strategie, takie jak:
- Okna przesuwne (sliding windows) do zarządzania długimi czatami.
- Retrieval Augmented Generation (RAG).
- Wyszukiwanie semantyczne.
Zrozumienie tej tablicy jest fundamentem rozwoju AI. To Ty dostarczasz kontekst. Model wie tylko to, co mu prześlesz.
Źródło: https://dev.to/marcochavezco/the-model-doesnt-remember-you-do-3mmk