3,583 papers
arXiv:2604.07877 72 9 апр. 2026 г. FREE

MemReader: активное управление памятью — вместо пассивного дампа 4 конкретных решения

КЛЮЧЕВАЯ СУТЬ
AI запоминает «привет, как дела?» с той же старательностью, что и «ухожу через месяц» — при длинных проектах контекст превращается в свалку, где важное тонет в болтовне. MemReader позволяет выстроить живой реестр решений: модель перестаёт быть ксероксом и начинает фильтровать. Фишка: перед каждым сохранением — три явных вопроса: ценное ли, однозначное, полное? На основе ответов — одно из четырёх действий: записать, придержать, поискать в памяти или выбросить. Контекст остаётся актуальным, а не растёт как опухоль.
Адаптировать под запрос

TL;DR

Большинство AI-систем с памятью работают как пассивная стенография: модель видит диалог и записывает всё подряд. MemReader вводит другой подход — перед тем как что-либо сохранить, модель отвечает на три вопроса: стоит ли это помнить, понятно ли без контекста, достаточно ли полная информация. На основе ответов выбирается одно из четырёх действий: записать, придержать, поискать в памяти или проигнорировать.

Главная проблема пассивных систем — память засоряется. Модель запоминает "привет, как дела?" с той же старательностью, что и "я хочу уволиться через три месяца". При длинных проектах контекст превращается в свалку: важное тонет в незначительном, устаревшая информация конфликтует с новой, местоимения висят без привязки к конкретному.

MemReader решает это через явный цикл "подумать → выбрать действие → получить результат": сначала модель рассуждает о ценности, полноте и однозначности информации, потом выбирает из четырёх конкретных операций. Принцип — не "записать всё", а поддерживать актуальное состояние.


🔬

Схема метода

ВХОД: новое сообщение от пользователя

ШАГ 1 — Оценка (3 вопроса, в одном блоке рассуждений):
  Q1: ЦЕННОСТЬ — это важное (решение, предпочтение, ограничение)?
                  Или болтовня / общие знания / уточняющий вопрос?
  Q2: ОДНОЗНАЧНОСТЬ — есть ли местоимения / ссылки без контекста?
                       Нужна история, чтобы понять смысл?
  Q3: ПОЛНОТА — достаточно данных для осмысленной записи?
                 Или нужно дождаться продолжения?

ШАГ 2 — Действие (4 варианта, на основе оценки):
  ADD    → ценное + полное + однозначное   → записать в долгосрочную память
  BUFFER → ценное, но неполное/неоднозначное → придержать до уточнений
  SEARCH → есть ссылка на прошлое          → сначала найти контекст, потом решить
  IGNORE → низкая ценность                 → пропустить, не сохранять

Оба шага выполняются в одном промпте. Цикл повторяется при каждом новом сообщении.


🚀

Пример применения

Задача: Вы ведёте долгий проект с Claude — разрабатываете контент-стратегию для телеграм-канала. Разговор идёт уже несколько сессий: обсуждали аудиторию, потом рубрики, потом спорили о тональности. Claude начинает путаться: что финальное решение, а что черновик.

Промпт:

Ты — менеджер памяти для нашего проекта по контент-стратегии телеграм-канала.

После каждого моего сообщения выполняй оценку перед тем, как что-то сохранить:


Q1 ЦЕННОСТЬ: Это решение, предпочтение, ограничение или дедлайн?
   Или это вопрос, уточнение, болтовня, общеизвестный факт?
Q2 ОДНОЗНАЧНОСТЬ: Есть ли "это", "он", "мы решили" без привязки к конкретному?
   Нужен контекст, чтобы понять смысл?
Q3 ПОЛНОТА: Достаточно ли данных для чёткой записи прямо сейчас?
   Или нужно дождаться продолжения?


На основе ответов выбери одно действие:

ADD    → ценное + полное + однозначное
         → добавь в [ПАМЯТЬ]: {ключ}: {значение}

BUFFER → ценное, но неполное или неоднозначное
         → добавь в [БУФЕР]: {запись} | ждёт уточнения: {что именно}

SEARCH → есть ссылка на прошлое решение
         → сначала проверь [ПАМЯТЬ], потом ADD или BUFFER

IGNORE → низкая ценность → пропусти, ничего не сохраняй

После каждого сообщения показывай актуальное состояние:
[ПАМЯТЬ]: ...
[БУФЕР]: ...

Стартовое состояние:
[ПАМЯТЬ]: пусто
[БУФЕР]: пусто

Первое сообщение: мы решили, что канал будет для малого бизнеса, не для корпораций

Результат: Модель покажет внутреннее рассуждение по трём вопросам: это ценное (решение по аудитории) + однозначное (конкретная формулировка) + полное (достаточно для записи) → выберет ADD. В [ПАМЯТЬ] появится запись вида "целевая аудитория: малый бизнес, не корпорации". При следующих сообщениях модель будет явно показывать весь цикл: что оценивает, почему выбирает то или иное действие, что уходит в буфер. Итог — структурированный живой реестр решений вместо хаотичной истории чата.


🧠

Почему это работает

Без инструкций LLM работает как ксерокс. Модель генерирует следующий токен, не рефлексируя над тем, что стоит помнить, а что нет. Попросишь "запомни важное" — она запомнит то, что статистически чаще помечалось важным в обучающих данных. Это не то же самое, что ваш реальный приоритет в конкретном проекте.

Модель хорошо следует явным алгоритмам ветвления. Если задать структуру "если X → делай Y, иначе → делай Z" с конкретными условиями — она следует ей надёжно. Три вопроса + четыре действия — это такой алгоритм. Он убирает двусмысленность: не "решай сам", а "пройди по этим шагам".

Четыре выхода вместо одного создают систему предохранительных клапанов. Когда у модели только один вариант (записать) — она записывает всё. Когда есть BUFFER — она может честно придержать неполное. Когда есть IGNORE — явно обозначить, что выбросила. Рассуждение становится прозрачным, и вы видите что происходит с каждым кусочком информации.

Рычаги управления: - Категории для Q1 → добавьте свои типы важного: "финансовые ограничения", "дедлайны", "договорённости с клиентом", "стоп-слова" - Формат записи в ADD → задайте шаблон: дата + ключ + значение + уровень уверенности - Условие сгорания буфера → укажите через сколько сообщений буфер должен требовать уточнения или удаляться - Триггер для SEARCH → добавьте ключевые слова, при которых модель обязана проверить историю: "мы договорились", "как я говорил", "по-прежнему"


📋

Шаблон промпта

Ты — менеджер памяти для нашего проекта: {описание_проекта}.

После каждого сообщения выполняй оценку:


Q1 ЦЕННОСТЬ: Это {список_важных_категорий}?
   Или это вопрос / уточнение / болтовня / общеизвестный факт?
Q2 ОДНОЗНАЧНОСТЬ: Есть ли местоимения или ссылки без контекста?
Q3 ПОЛНОТА: Достаточно ли данных для чёткой записи прямо сейчас?


Выбери действие:
ADD    → ценное + полное + однозначное
         → [ПАМЯТЬ]: {ключ}: {значение}

BUFFER → ценное, но неполное или неоднозначное
         → [БУФЕР]: {запись} | ждёт: {что уточнить}

SEARCH → есть ссылка на прошлое
         → проверь [ПАМЯТЬ], потом ADD или BUFFER

IGNORE → низкая ценность → пропусти

После каждого сообщения показывай:
[ПАМЯТЬ]: ...
[БУФЕР]: ...

Стартовое состояние:
[ПАМЯТЬ]: {начальное_состояние_или_пусто}
[БУФЕР]: {начальный_буфер_или_пусто}

Плейсхолдеры: - {описание_проекта} — тема и цель: "разработка стратегии для телеграм-канала", "подготовка к переговорам с инвесторами" - {список_важных_категорий} — что считать важным: "решение, ограничение, предпочтение, дедлайн, договорённость" - {начальное_состояние} — если продолжаете старую сессию, вставьте накопленную память

🚀 Быстрый старт — вставь в чат:

Вот шаблон менеджера памяти. Адаптируй под мою задачу: {опиши свой проект}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит про тип проекта и что считать "важным" — потому что без этого Q1 работает на общих критериях, а не на ваших конкретных приоритетах.


⚠️

Ограничения

⚠️ Только для длинных проектов: Метод окупается при работе на 10+ сообщений. Для разовых вопросов и ответов — избыточен.

⚠️ SEARCH ограничен текущей сессией: Полную силу метод раскрывает только с системами долгосрочной памяти (Claude Projects, ChatGPT с памятью). В обычном чате SEARCH видит только историю текущего разговора.

⚠️ Реестр памяти разрастается: При очень длинных разговорах сам блок [ПАМЯТЬ] начинает занимать место в контексте. Периодически просите модель сжать его в компактный список.

⚠️ Q1 требует калибровки: Если плохо прописали категории важного — модель пропустит нужное или сохранит лишнее. Потратьте 2 минуты на список приоритетных типов данных для своего проекта.


🔗

Ресурсы

MemReader: From Passive to Active Extraction for Long-Term Agent Memory Авторы: Jingyi Kang, Chunyu Li (равный вклад), Ding Chen, Bo Tang, Feiyu Xiong, Zhiyu Li Организации: MemTensor (Shanghai) Technology; China Telecom Research Institute Связанные системы: Mem0, Zep, MemOS, MemGPT (фон, на котором строится критика) Базовые модели: Qwen3-0.6B, Qwen3-4B


📋 Дайджест исследования

Ключевая суть

AI запоминает «привет, как дела?» с той же старательностью, что и «ухожу через месяц» — при длинных проектах контекст превращается в свалку, где важное тонет в болтовне. MemReader позволяет выстроить живой реестр решений: модель перестаёт быть ксероксом и начинает фильтровать. Фишка: перед каждым сохранением — три явных вопроса: ценное ли, однозначное, полное? На основе ответов — одно из четырёх действий: записать, придержать, поискать в памяти или выбросить. Контекст остаётся актуальным, а не растёт как опухоль.

Принцип работы

Разница между «запомни важное» и MemReader — это разница между «будь хорошим человеком» и конкретным списком правил. Первое работает на усмотрение модели. Второе — надёжно. Модель хорошо следует явному алгоритму «если X → делай Y», но плохо угадывает ваши личные приоритеты. Три вопроса — фильтр на входе. Четыре выхода — предохранительные клапаны. BUFFER позволяет честно придержать неполное вместо записи обрывка. IGNORE — явно выбросить ненужное. Вы видите каждое решение, а не гадаете что осело в памяти.

Почему работает

Без инструкции модель работает как ксерокс: копирует то, что статистически помечалось важным при обучении. Не то, что важно в вашем конкретном проекте. Когда выход один (записать) — модель пишет всё. Четыре выхода создают систему, где каждый кусок информации получает осознанный маршрут — и рассуждение становится прозрачным. Вы больше не гадаете что попало в память, а что нет. Явная структура «вопрос → действие» убирает двусмысленность и заставляет модель работать по вашей логике, а не по общей.

Когда применять

Длинные проекты на 10+ сообщений — стратегия, консалтинг, написание, исследования, любой многосессионный рабочий процесс. Особенно когда важно не перепутать черновик с финальным решением, или когда несколько сессий и модель теряет нить. Полную силу раскрывает в Claude Projects и ChatGPT с включённой памятью — там SEARCH видит всю историю, а не только текущий разговор. НЕ подходит для разовых вопросов — три вопроса и четыре действия здесь избыточны.

Мини-рецепт

1. Назначьте роль: скажите модели что она — «менеджер памяти» для конкретного проекта. Без контекста проекта Q1 работает по общим критериям.
2. Пропишите Q1 под себя: укажите что считать важным — «решения, ограничения, дедлайны, договорённости с клиентом». Это самый критичный шаг — без него модель фильтрует по-своему.
3. Вставьте четыре действия с условиями: ADD (ценное + полное + однозначное), BUFFER (ценное, но неполное или с висящими местоимениями), SEARCH (есть ссылка на прошлое решение), IGNORE (болтовня, уточняющий вопрос, общеизвестный факт).
4. Попросите показывать состояние после каждого сообщения: [ПАМЯТЬ] и [БУФЕР] — видите что происходит с каждым кусочком информации.
5. Если продолжаете старую сессию: вставьте накопленную память как стартовое состояние — иначе SEARCH ничего не найдёт.

Примеры

[ПЛОХО] : Запомни важное из нашего разговора про стратегию
[ХОРОШО] : Ты — менеджер памяти для нашего проекта: контент-стратегия телеграм-канала. После каждого моего сообщения оцени: Q1 ЦЕННОСТЬ: Это решение, предпочтение, ограничение или дедлайн? Или болтовня, уточняющий вопрос, общеизвестный факт? Q2 ОДНОЗНАЧНОСТЬ: Есть местоимения или ссылки без привязки к конкретному? Q3 ПОЛНОТА: Достаточно данных для чёткой записи прямо сейчас? Выбери одно действие: ADD → ценное + полное + однозначное → [ПАМЯТЬ]: ключ: значение BUFFER → ценное, но неполное или неоднозначное → [БУФЕР]: запись | ждёт: что уточнить SEARCH → есть ссылка на прошлое решение → проверь [ПАМЯТЬ], потом ADD или BUFFER IGNORE → низкая ценность → пропусти После каждого сообщения показывай: [ПАМЯТЬ]: ... [БУФЕР]: ... Стартовое состояние: [ПАМЯТЬ]: пусто [БУФЕР]: пусто
Источник: MemReader: From Passive to Active Extraction for Long-Term Agent Memory
ArXiv ID: 2604.07877 | Сгенерировано: 2026-04-10 04:26

Проблемы LLM

ПроблемаСутьКак обойти
Команда "запомни важное" работает на статистике, не на твоих приоритетахПросишь модель сохранять важное. Она сохраняет то, что чаще помечалось важным в обучающих данных. Не то, что важно в твоём конкретном проекте. Итог: "привет, как дела?" и "я ухожу через три месяца" попадают в память с равным весомЗаменить расплывчатый запрос явным алгоритмом. Задать список конкретных категорий важного. Например: "решения, ограничения, дедлайны, договорённости". Модель фильтрует по твоим критериям, а не по общим

Методы

МетодСуть
Явный алгоритм ветвления — фильтр памятиПеред любым сохранением модель проходит три вопроса: Q1 — ценность (это решение, ограничение, дедлайн? или болтовня?), Q2 — однозначность (есть местоимения без привязки? нужен контекст чтобы понять?), Q3 — полнота (достаточно данных для записи прямо сейчас?). По ответам выбирается одно из четырёх действий: ADD — ценное + полное + однозначное записать. BUFFER — ценное, но неполное придержать до уточнения. SEARCH — есть ссылка на прошлое сначала найти в истории. IGNORE — низкая ценность пропустить. Оба шага — в одном блоке . Почему работает: Явный алгоритм "если X делай Y" модель выполняет надёжно. Не "решай сам", а "пройди по шагам". Несколько вариантов на выходе исключают режим "записываю всё" — модель вынуждена различать и выбирать. Когда применять: Длинные проекты на 10+ сообщений. Многосессионная работа (Claude Projects, ChatGPT с памятью). Когда не работает: Разовые запросы. Обычный чат без памяти — SEARCH видит только текущую сессию
📖 Простыми словами

MemReader: From Passive to Active Extraction for Long-TermAgentMemory

arXiv: 2604.07877

Современные AI-ассистенты в плане памяти напоминают Плюшкина: они тащат в свою «базу знаний» всё подряд, от важных паролей до случайного «привет, как дела». Проблема в том, что LLM по своей природе — это просто пассивные ксероксы, которые не понимают ценности информации. Они тупо сохраняют куски текста, надеясь, что потом разберутся. В итоге, когда ты просишь нейронку вспомнить финал ваших переговоров, она вываливает на тебя кучу черновиков и мусора, потому что для неё всё имеет одинаковый вес. MemReader меняет саму механику: модель перестает быть пассивным слушателем и превращается в активного фильтра, который анализирует входящий поток данных еще до того, как нажать кнопку «сохранить».

Это как если бы ты нанял личного ассистента, который вместо того, чтобы записывать каждое твоё слово на диктофон, сидел бы с блокнотом и постоянно задавал себе вопросы: «Это вообще важно? Я пойму это завтра без контекста? Мне хватает инфы, чтобы сделать вывод?». Если ты просто бросил фразу «давай сделаем так», ассистент не будет это записывать, а уточнит, что именно «так», или подождет конкретики. Это превращает свалку логов в структурированную рабочую память, где лежат только готовые решения, а не процесс их мучительного обсуждения.

Вся магия держится на трех вопросах и четырех действиях. Метод заставляет модель оценивать автономность записи (понятна ли она сама по себе) и её полноту. Если инфы мало, модель выбирает действие «придержать» или «проигнорировать», вместо того чтобы плодить сущности. Если же данные критичны, включается активная запись. Это избавляет от главной боли длинных контекстов — когда модель начинает путаться в показаниях, потому что в её памяти пять разных версий одного и того же плана, и она просто выбирает ту, что попалась под руку первой.

Хотя MemReader тестировали на длинных диалогах с агентами, этот подход — спасение для любой сложной работы. Представь разработку кода, написание книги или ведение юридического дела, где контекст копится неделями. Принцип активной фильтрации универсален: он превращает AI из забывчивого собеседника в надежное хранилище смыслов. Это переход от простого SEO-подобного поиска по ключевым словам к смысловому управлению памятью, где качество данных важнее их объема.

Короче, пора признать: просто «запихивать» всё в контекстное окно — это путь в никуда, модель неизбежно начнет лажать и галлюцинировать. Будущее за рефлексивной памятью, которая умеет говорить «нет» лишнему хламу. Если хочешь, чтобы твой AI-агент не превратился в склеротика через два часа работы, его нужно учить не просто запоминать, а фильтровать и уточнять. Либо ты управляешь памятью модели, либо она тонет в собственном шуме, и MemReader — это первый реальный инструмент, чтобы не пойти ко дну.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с