Перейти к содержимому

Долгосрочная память

Кратковременная память живёт один запуск. Долгосрочная память (LTM) сохраняется между запусками и сессиями. Подключите бэкенд в контекст через long_term_memory=:

from mmar_carl import ReasoningContext, InMemoryLTM, JsonFileLTM
context = ReasoningContext(
outer_context=data,
api=client,
long_term_memory=JsonFileLTM("ltm.json"), # or InMemoryLTM()
session_id="user-42", # scopes LTM entries
)
БэкендПерсистентность
InMemoryLTMТолько в процессе (теряется при выходе). Подходит для тестов.
JsonFileLTM("path.json")Сохраняется в JSON-файл между запусками.

Оба реализуют LTMBase — создайте подкласс для подключения LTM к вашей собственной базе данных.

Из шага читайте значение LTM через ссылку $ltm.key. Программно:

context.ltm_retrieve("preferred_tone") # exact-key lookup (None if absent)
context.recall("past decisions about pricing", top_k=5) # similarity search

LTMBase определяет store, retrieve, delete, search и clear — все с областью видимости сессии через ключевое слово session_id (по умолчанию session_id контекста).