TL;DR
Все популярные системы AI-памяти совершают одну и ту же ошибку: они сжимают и структурируют информацию в момент записи — до того, как известно, какой вопрос будет задан. Что отброшено при сжатии — не вернуть никогда. True Memory переворачивает логику: хранить дословно, извлекать умно.
Главная находка — из 357 вопросов, на которые система ответила неправильно, 92% ошибок исчезли, когда модели дали полный текст разговора вместо сжатого. Это значит: проблема была не в том, как AI рассуждал, а в том, что он получил обрезанную информацию. Когда AI ошибается — скорее всего, ему дали пересказ вместо оригинала.
Решение состоит из двух частей. Первая — умный фильтр на входе: новизна (это уже было?), важность (это вообще стоит запомнить?), неожиданность (это противоречит тому, что известно?). Вторая — многоступенчатый поиск при ответе: сначала по ключевым словам, потом по смыслу, потом пересортировка с учётом контекста запроса.
Схема метода
ВХОД: любое сообщение / событие разговора
ШАГ 1: ФИЛЬТР ЗАПИСИ (только для систем с памятью)
└── Новизна: это уже есть в памяти?
└── Важность: числа, даты, обязательства, эмоции?
└── Неожиданность: противоречит известному?
→ Если прошло фильтр — хранить ДОСЛОВНО, без сжатия
ШАГ 2: ПОИСК ПО ЗАПРОСУ (в момент вопроса, не раньше)
└── Лексический поиск: по ключевым словам
└── Смысловой поиск: по значению
└── Слияние двух потоков
└── Переранжирование: временной буст + контекст персонажа
ВЫХОД: релевантные фрагменты → передать в LLM → ответ
Система работает как готовый инструмент (требует настройки). Принципы — применимы вручную.
Пример применения
Допустим, вы ведёте стратегический проект с командой три месяца. Каждую неделю встречаетесь с Claude, обсуждаете ходы, решения, договорённости. Через месяц Claude "забывает" детали — потому что вы (или память-инструмент) сохранили краткий пересказ, а не сами разговоры.
Задача: Вы заметили, что AI даёт неточный ответ — путает детали из прошлых обсуждений стратегии продукта.
Промпт — диагностика и исправление:
Я замечаю, что твой ответ про [тему] расходится с тем,
что мы обсуждали раньше.
Вот оригинальный текст того разговора — без сокращений:
[вставить полный текст]
Прочитай его и ответь на вопрос заново:
[вопрос]
Промпт — правильная структура памяти для проекта:
Я начинаю долгий проект. Буду периодически давать тебе
записи наших разговоров — дословно, без сокращений.
Когда я спрашиваю что-то конкретное, ищи в этих записях
точные детали: числа, даты, конкретные договорённости,
формулировки.
Не пересказывай — цитируй. Если детали отсутствуют
в записях — прямо скажи об этом.
Вот первая запись:
[полный текст разговора]
Результат: Модель будет работать с оригинальными текстами, а не с вашей или собственной интерпретацией. Точность ответов на конкретные вопросы — кто что сказал, какая была цифра, что именно договорились — вырастет значительно.
Почему это работает
Языковая модель не "помнит" — она читает. Когда вы даёте AI сжатый пересказ, она работает с чужой интерпретацией. Пересказ всегда теряет детали — числа, оговорки, точные формулировки. Если потерянная деталь оказывается ключевой для вопроса, который задан через неделю, — ошибка неизбежна.
Сжатие до запроса — это лотерея. Когда вы просите AI "запомни ключевые факты", он решает что важно прямо сейчас. Но вы ещё не знаете, о чём спросите через месяц. Система хороша для предсказуемых вопросов и беспомощна для неожиданных.
Умный поиск в момент вопроса — другая логика: храним всё, ищем точно. Это требует больше места, но при запросе модель получает именно то, что нужно под конкретный вопрос — не чужую интерпретацию "что могло бы пригодиться".
Рычаги управления для чата: - Объём записей → больше оригинального текста = точнее ответ, но занимает контекст - Цитирование vs пересказ → просите AI цитировать, а не пересказывать источник - Диагностика ошибки → если AI ошибся: дайте оригинал, не улучшайте запрос
Шаблон промпта
Шаблон 1 — Дословная память для проекта
Я работаю над {название проекта}. Это долгосрочная работа.
Буду давать тебе записи встреч, разговоров и решений —
дословно. Не сокращай их сам.
Когда я задаю вопрос, ищи ответ в оригинальных записях.
Если находишь точную информацию — цитируй.
Если не находишь — прямо скажи.
Запись {номер} от {дата}:
{полный текст}
Что подставлять:
- {название проекта} — "запуск подкаста", "редизайн сайта", "переговоры с инвестором"
- {дата} — реальная дата встречи
- {полный текст} — стенограмма, транскрипт, переписка без сокращений
Шаблон 2 — Диагностика ошибки AI
Твой ответ про {тему} кажется неточным.
Вот оригинальный источник — без сокращений:
{полный текст оригинала}
Прочитай и ответь заново: {вопрос}
Если в тексте нет нужной информации — так и скажи.
🚀 Быстрый старт — вставь в чат:
Вот шаблоны для работы с долгим контекстом по принципу
дословного хранения. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит название проекта, тип записей (встречи, переписка, документы) и формат, в котором вы хранить первичные данные — потому что от этого зависит как структурировать передачу оригинальных текстов.
Почему это работает (для технически любопытных)
Исследователи обнаружили поразительную вещь: 92% ошибок AI при работе со сжатым контекстом исчезают, если дать полный оригинал. Это значит — модель умеет отвечать правильно. Проблема не в её "интеллекте", а в том, что ей дали неполные данные.
Это меняет стратегию: когда AI ошибается с вашим проектом — первый шаг не "перефразируй вопрос", а "дай больше оригинального текста".
Фильтр записи (novelty/salience/prediction error) — это способ решить: что стоит тащить в контекст, а что нет. В ручном режиме вы делаете то же самое интуитивно. Теперь у этой интуиции есть формула: запомни то, что ново (раньше не говорили), важно (числа, даты, обязательства) и неожиданно (противоречит известному).
Ограничения
⚠️ Требует кода для полной реализации: True Memory — готовая система на Python + SQLite. Принципы применимы вручную, сама архитектура — нет.
⚠️ Контекстное окно не бесконечно: Хранить всё дословно и передавать напрямую в чат работает для проектов среднего объёма. На масштабе в сотни часов разговоров — уже нужна автоматизация.
⚠️ Фильтр записи в бенчмарках отключён: Все высокие цифры точности получены с отключённым умным фильтром — принимали всё подряд. Фильтр в production пока не проверен на открытых тестах.
⚠️ Собственная система оценки: Авторы используют семантический матчинг (semantic-match judge), который мягче строгого сравнения текстов. Абсолютные цифры (93%) нельзя напрямую сравнивать с чужими результатами.
Как исследовали
Команда Sauron Labs построила полноценную систему памяти и сравнила её с коммерческими аналогами — Mem0, Supermemory, Zep, EverMemOS — на трёх публичных бенчмарках. LoCoMo: 1540 вопросов по 10 долгим разговорам. LongMemEval: 500 вопросов. BEAM-1M: 700 вопросов на контексте в миллион токенов — это примерно тысячи часов разговоров.
Самый показательный эксперимент — диагностика в 357 вопросах, на которые ранняя версия системы ответила неправильно. Исследователи взяли те же вопросы и дали модели полный текст разговора. Правильных ответов стало 92% вместо 0%. Вывод жёсткий: "Мозги" у модели в порядке — подводит трубопровод доставки информации.
Интересный дизайн-выбор: гzip-сжатие как мера новизны. Если новое сообщение хорошо сжимается вместе с тем, что уже в памяти — оно похоже на уже известное, значит, не очень ново. Если сжимается плохо — несёт что-то действительно новое. Это заменило косинусное сходство, которое давало парадокс: шум типа "окей" казался очень непохожим на факты, а важные обновления — слишком похожими.
Адаптации и экстраполяции
🔧 Ручная версия фильтра памяти
Перед тем как просить AI "запомни это" — прогони через три вопроса:
Новизна: Я уже говорил что-то похожее? Если да — стоит ли повторять? Важность: Есть ли тут числа, даты, имена, конкретные обязательства? Неожиданность: Это противоречит тому, что было раньше?
Если хотя бы два из трёх — "да", значит это стоит сохранить дословно.
🔧 Принцип двух типов памяти для проектов
В реальной работе с AI-проектами стоит разделить:
- Эпизодическая память (что именно говорилось) → храни дословно: транскрипты, переписка, черновики
- Семантическая память (что мы поняли/решили) → краткие выводы, договорённости, факты
При вопросе о деталях — давай эпизодическую. При вопросе о стратегии — семантическую.
У меня два типа контекста по проекту {название}:
РЕШЕНИЯ И ФАКТЫ (семантическая память):
{краткие договорённости, цифры, ключевые решения}
ОРИГИНАЛЬНЫЕ ОБСУЖДЕНИЯ (эпизодическая память):
{полные тексты где обсуждали детали}
Вопрос: {вопрос}
Ищи ответ сначала в фактах. Если нужны детали —
в оригинальных обсуждениях. Цитируй источник.
Ресурсы
Storage Is Not Memory: A Retrieval-Centered Architecture for Agent Recall — Joshua Adler, Guy Zehavi, Sauron Labs (2026)
Связанные системы упомянутые в работе: Mem0, Zep/Graphiti, Supermemory, EverMemOS
Теоретическая база: Bartlett (1932) — реконструктивная память; Tulving (1972) — эпизодическая/семантическая память; Craik & Lockhart (1972) — глубина кодирования
