Альфа-версия. Возможны ошибки. noHuman Team запускает ИИ-сотрудников на вашем компьютере с настоящим доступом к файлам, браузеру и рабочему столу. Начинайте с задач, где ошибка не страшна, и не отключайте очередь одобрений. Что пока не работает

Назад в блог
Обложка статьи «Память ИИ-агента: как сохранить контекст между сеансами»
9 мин чтенияСтоимость и окупаемость

Память ИИ-агента: как сохранить контекст между сеансами

Почему ИИ забывает всё между сеансами и как это исправить. Сравнение векторных баз, файловой памяти, RAG и сжатия для постоянного контекста ИИ.

Автор:

Опубликовано · Обновлено

Вы объясняете ИИ-ассистенту свой проект: стек, бизнес-цели, соглашения об именовании. На следующий день вы начинаете новый сеанс, и ассистент уже ничего этого не знает. Практичная система памяти хранит текущую работу в коротком файле, держит подробные заметки вне промпта и достаёт старые факты, когда они понадобятся агенту. Сжатие может освободить место в длинной беседе, но не гарантирует, что ничего не потеряется.

Кратко
  • Модель не переносит память о проекте между независимыми сеансами, если продукт не сохраняет её и не загружает заново
  • Три разные задачи: память сеанса, память между сеансами и усвоенные предпочтения
  • Файлы, поисковые индексы, RAG и дообучение решают разные задачи памяти
  • Сжатие пересказывает старые реплики; долгосрочные факты всё равно нужно держать в постоянном хранилище
  • Начните с редактируемых файлов, а поиск добавляйте, когда объём материалов этого потребует

Без постоянного контекста вам приходится снова и снова объяснять проект и предпочтения. В продуктах это называют постоянным контекстом ИИ, долговременной памятью ИИ или контекстом между сеансами. Все эти термины описывают одно: информацию, которая хранится вне модели и снова передаётся ей, когда становится нужной.

Агент может продолжить вчерашнюю работу, только если решения, открытые вопросы и следующие шаги где-то записаны.

Почему ИИ забывает всё между беседами

Большие языковые модели работают с контекстным окном — ограниченным объёмом входных данных, куда входят инструкции, сообщения и результаты работы инструментов. Чтобы информация дожила до следующего независимого сеанса, приложение обязано сохранить её и загрузить заново.

Ограничения контекста зависят от модели и провайдера, и со временем производители их меняют. Вывод инструментов, исходные файлы, снимки экрана и длинные беседы могут занимать доступное место быстрее, чем кажется по числу сообщений.

Приложение может отклонить слишком большой запрос, удалить старые реплики или пересказать их. Пересказ экономит место, но в нём может пропасть деталь, которая позже окажется важной. Сохраняйте долгосрочные решения вне беседы, пока окно не заполнилось.

Три разные задачи памяти, которые нужно решить:

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

Набор уровней в разных продуктах разный. Прежде чем полагаться на память, проверьте, можно ли просматривать, исправлять и удалять сохранённую информацию.

3уровня памяти: текущий сеанс, работа между сеансами и долгосрочные факты

Четыре подхода к памяти ИИ

Векторные базы данных (семантический поиск)

Прошлые беседы и контекст хранятся в базе данных в виде векторных представлений (Pinecone, Weaviate, Chroma, Qdrant). Когда ИИ нужен контекст, он ищет семантически похожее содержимое и добавляет его в промпт.

Плюсы:

  • Создана для поиска по коллекциям, слишком большим, чтобы загрузить их в один промпт
  • Семантический поиск находит нужный контекст, даже если формулировки отличаются
  • Есть и облачные сервисы, и инструменты для самостоятельного размещения, например Pinecone, Weaviate и pgvector

Минусы:

  • Добавляет к выборке шаг построения векторных представлений и поиска
  • Качество поиска нестабильно: он может вернуть нерелевантный контекст или пропустить нужный фрагмент
  • Нужна инфраструктура: конвейер построения векторных представлений, хостинг базы данных, поддержка индекса
  • Облачные сервисы добавляют расходы на использование и хранение, которые зависят от провайдера и объёма данных

Подходит для: больших баз знаний и приложений, которые должны находить фрагменты во множестве документов.

Файловая память (структурированные заметки)

Прямой подход — записывать важный контекст в текстовые файлы, а приложение загружает их или ищет по ним, когда это нужно агенту.

Плюсы:

  • Может работать без отдельного сервиса базы данных
  • Файлы может читать и править человек, так что сохранённый контекст можно проверять и исправлять
  • Предсказуема, если приложение загружает в промпт файлы с известными именами
  • Легко отлаживать, потому что можно посмотреть исходный текст

Минусы:

  • Загрузка всех файлов в каждый промпт перестаёт работать, когда коллекция растёт
  • Чтобы поддерживать порядок, нужны структура и дисциплина
  • Не умеет искать по семантическому сходству

Подходит для: персональных ассистентов, небольших команд и агентов, которым нужна проверяемая память о проекте.

Выбирайте систему памяти, в которой можно просматривать, редактировать и удалять сохранённую информацию. noHuman Team хранит долговременную память в файлах Markdown и строит по ним поисковые индексы. Вы можете исправить сам файл, а не считать запись индекса первоисточником.

Генерация с дополненной выборкой (RAG)

RAG сочетает векторный поиск со структурированным извлечением документов. Перед каждым ответом ИИ достаёт из базы знаний релевантные фрагменты (чанки).

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

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

Подходит для: приложений с большим объёмом знаний: юридических исследований, медицинских записей, технической документации.

Дообучение

Знания встраиваются прямо в модель с помощью дополнительного обучения. Модель усваивает ваши шаблоны, предпочтения и предметную область.

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

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

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

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

Подход noHuman Team: практичная память, которая работает

noHuman Team использует редактируемые файлы Markdown как постоянный первоисточник. На каждом ходе приложение загружает короткий файл с текущим состоянием, а для материалов вне промпта предлагает grep, полнотекстовый и векторный поиск. Когда активная модель приближается к пределу контекста, уровень сеанса может сжать старую историю беседы.

Уровень 1. CURRENT.md для текущей работы

Каждый noHuman может вести личный файл CURRENT.md с текущей задачей, препятствиями и следующим шагом:

# Developer Current Work
## Task: Implement user settings page
## Done: API routes complete, form validation working
## Next: Frontend components, tests
## Blockers: Waiting on design specs from CEO

На каждом ходе приложение загружает CURRENT.md в контекст этого noHuman и ограничивает файл небольшим размером. Файл лежит на диске, поэтому перезапущенный сеанс может прочитать то же состояние задачи.

Уровень 2. Записи журнала и ветки

В журнал можно записывать события дня, а в файлах веток хранятся история и состояние отдельной работы:

  • Принятые решения и их причины
  • Выполненные задачи с путями к файлам
  • Возникшие проблемы и опробованные решения
  • Извлечённые уроки

По умолчанию эти файлы в промпт не попадают. noHuman может найти или открыть их, когда нужны подробности, а активный контекст остаётся сосредоточен на текущей задаче.

Уровень 3. Факты и общая память команды

В файлах фактов хранятся предпочтения основателя, решения по проекту, сведения об окружении и известные проблемы. TEAM.md даёт всей команде короткий общий контекст. И то и другое остаётся редактируемым Markdown, а не скрытым состоянием модели.

Храните сырую историю в журналах и ветках. Решение, которое должно направлять будущую работу, записывайте как факт или в общую память команды.

Умное сжатие: удерживаем контекст в пределах лимитов

Даже при файловой памяти живая беседа растёт. Когда активный контекст приближается к пределу, noHuman Team может сжать старую историю беседы в краткий пересказ.

Когда контекст разрастается, система:

  1. Берёт самые старые сообщения в беседе
  2. Пересказывает их, сохраняя ключевые решения и фрагменты кода
  3. Заменяет полные сообщения пересказом
  4. Освобождает место в контекстном окне для новой работы

Результат зависит от беседы и модели. Сжатие уменьшает активную переписку, но в пересказе могут потеряться точная формулировка, код или небольшое решение. Прежде чем полагаться на пересказ, запишите важную информацию в память.

Как построить собственную систему памяти для ИИ

Подберите подходящий уровень для каждой задачи

УровеньЧто хранитБюджет токеновКогда читается
История беседыКонтекст текущей задачиОграничен активной модельюПри каждом сообщении
CURRENT.mdТекущая задача, препятствия, следующие шагиДо 1500 токеновНа каждом ходе
Журналы и веткиПодробная историяХранится на дискеПо запросу
Факты и TEAM.mdДолгосрочные факты и общий контекстНамеренно компактныйЗагружаются или извлекаются по необходимости

Сделайте память редактируемой

ИИ-агенты иногда запоминают что-то неверно или хранят устаревшую информацию. Если вы не можете просмотреть и исправить то, что сохранил агент, ошибки накапливаются с каждым следующим сеансом. Всегда выбирайте систему памяти, в которой данные можно открыть и отредактировать напрямую.

Пусть агент сам ведёт память

Дайте агенту чёткие правила работы с памятью. Он может просматривать недавнюю работу, превращать долгосрочное решение в факт, обновлять текущее состояние и помечать противоречия, чтобы вы их разрешили.

Пусть файл Markdown остаётся первоисточником, даже если вы добавите поисковый индекс. Когда индекс разойдётся с файлами, пересоберите его по ним.

Начните с простого, а сложность добавляйте позже

Начните с одного короткого файла текущего состояния. Затем:

  • Добавьте ежедневные заметки, когда понадобится недавняя история
  • Добавьте сжатие, когда сеансы приближаются к пределу контекста модели
  • Добавьте отдельный файл CURRENT.md для каждого агента, когда запустите команду
  • Добавьте полнотекстовый или векторный поиск, когда имена файлов и прямой поиск по тексту перестанут находить нужные материалы
1редактируемый первоисточник; поиск добавляется, когда коллекция растёт

Начинайте с файлов, которые можно проверить. Добавляйте векторный индекс, когда семантический поиск решает проблему, которую вы можете показать, а не потому, что он якобы нужен любой системе памяти.

Память должна быть проверяемой

У файлов, поисковых индексов, RAG и дообучения разные типы сбоев. Начинайте с самой маленькой системы, которая находит контекст, нужный для ваших задач, а прежде чем добавлять ещё один уровень, измерьте, что поиск пропускает.

Стремитесь к надёжному доступу к контексту, важному для текущей задачи, и к журналу, который вы можете исправлять.


Главное

  • Независимым сеансам нужна внешняя система, которая сохраняет и заново загружает контекст проекта
  • Короткий файл текущего состояния, история с поиском и долгосрочные факты выполняют разные задачи
  • Редактируемые файлы легко исправлять; индексы помогают искать в большой коллекции
  • Сжатие освобождает место в контексте, но не гарантирует, что ничего не потеряется
  • Дайте агенту явные правила: как переносить решения в факты и исправлять устаревшие

Часто задаваемые вопросы

Что такое память ИИ-агента и почему она важна? Память ИИ-агента хранит контекст вне модели и передаёт его в последующие сеансы. Она может включать состояние текущей задачи, решения по проекту, предпочтения и историю работы, по которой можно искать.

Чем память сеанса отличается от постоянной памяти ИИ? Память сеанса — это контекст, привязанный к одной беседе. Постоянная память ИИ использует внешнее хранилище, например файлы или базы данных, чтобы другой сеанс мог позже получить эту информацию. Продукты ведут себя по-разному, поэтому закрытие чата не везде означает одну и ту же политику хранения.

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

Как работает сжатие контекста у ИИ-агентов? Сжатие заменяет старые реплики более коротким пересказом, когда беседа приближается к пределу контекста. Оно сохраняет место для новой работы, но результат — пересказ с потерями. Прежде чем сжимать, запишите точные решения, пути и требования в долговременную память.

Сколько стоит внедрить память для ИИ-агента? Стоимость зависит от объёма хранилища, использования векторных представлений, вызовов модели, хостинга и сопровождения. Локальные файлы Markdown позволяют обойтись без отдельной облачной базы данных, а векторный поиск добавляет работу по индексации и построению векторных представлений. У дообучения и управляемого поиска цены определяет провайдер, поэтому перед составлением бюджета проверьте его актуальную документацию.


Установите noHuman Team, чтобы на своём компьютере пользоваться редактируемыми файлами текущего состояния, ветками, фактами, журналами, поиском и сжатием сеансов. Ежемесячная подписка начинается с 7-дневного пробного периода; платёжные данные нужны при оформлении. Провайдер ИИ берёт плату отдельно.

Поделиться: X / Twitter