РУКОВОДСТВО · ОБНОВЛЕНО 2026-10-06
Память AI-агента: что сохранять, обновлять и удалять
Сохранённая история сама по себе не даёт надёжной памяти. Разберём отбор фактов, их происхождение, актуальность и границы между пользователями.
Разделите состояние текущего диалога и долгосрочные записи, нужные для будущих задач. Сохраняйте источник, область доступа и актуальность каждого факта, предусмотрите исправление и удаление. Память приложения не означает обучение модели; сохранённое предположение не должно становиться подтверждённым фактом или разрешением на действие.
1. Определите полезные записи
Начните с конкретных будущих задач: помнить выбранный формат отчёта, состояние проекта или подтверждённое предпочтение пользователя. Не сохраняйте весь диалог только ради обещания «ничего не забывать». Отдельно храните рабочее состояние незавершённой задачи и факты, применимые в новых сессиях. Условия сохранения и доступность функции должны быть понятны пользователю. Временная оценка, шутка и предположение агента не равны устойчивому предпочтению. Выберите, какие записи требуют подтверждения человеком, и не включайте секреты или лишние персональные сведения в память без необходимости для сценария.
2. Сохраните происхождение и область
Для записи укажите владельца, проект, источник, время и тип: подтверждённый факт, предпочтение или рабочая гипотеза. Это позволяет проверить, почему агент использовал значение и к кому оно относится. Источник из документа не является командой расширить права. При поиске памяти фильтруйте доступ до передачи модели, а не после генерации ответа. Один похожий вектор не делает запись другого клиента допустимым контекстом. Схема памяти может быть обычной структурированной таблицей или другим хранилищем; векторный поиск является вариантом извлечения, а не обязательным определением памяти.
3. Обновляйте противоречия явно
Если пользователь изменил срок проекта, старое значение должно получить понятный статус, а новое — связь с причиной изменения. Не оставляйте два противоречащих факта без правила выбора. Для разных источников задайте порядок проверки или запросите уточнение. Сохраняйте возможность открыть основание и исправить запись. При автоматическом выделении фактов модель может ошибиться, поэтому проверяйте, не превратилось ли её собственное предложение в якобы решение пользователя. Версионируйте логику отбора и обновления; изменение промпта извлечения памяти также требует контрольных примеров на неоднозначных диалогах.
4. Извлекайте только нужный контекст
Для новой задачи выберите относящиеся к ней записи с актуальными правами и ограниченным объёмом. Большое хранилище не нужно целиком помещать в каждый запрос. Проверяйте, не вытесняет ли старое предпочтение прямую текущую инструкцию пользователя. Не смешивайте факты разных проектов только из-за похожего названия. Дайте модели понимать статус гипотезы и дату источника. LangChain описывает различие краткосрочной и долгосрочной памяти, а состояние API имеет собственный контракт. Использование идентификатора продолжения разговора не создаёт автоматически ваш процесс утверждения и актуализации долгосрочных записей.
5. Проверьте исправление и забывание
Составьте сценарии: новая сессия, изменение предпочтения, отозванный доступ, удаление факта и одноимённые проекты разных пользователей. После удаления проверьте индекс, кэш и другие используемые копии согласно вашей политике хранения. Не обещайте исчезновение из всех резервных копий, если процесс этого не обеспечивает. Покажите пользователю предусмотренный способ исправить память. В Tokenmost проверяйте реальную поддержку состояния и историю на стороне приложения: статья не обещает встроенную долговременную память. Fixtures позволят проверить права, обновление и удаление без платной сети; качество выделения фактов оценивают отдельно.
Частые вопросы
Память агента меняет веса модели?
В описанной архитектуре нет: приложение сохраняет и извлекает записи для контекста. Это отдельный механизм, а не обучение модели.
Нужна ли векторная база?
Не всегда. Структурированные факты можно хранить и получать по ключам и фильтрам. Выбор поиска зависит от задач, объёма и прав доступа.
Что важнее: старое предпочтение или текущая инструкция?
Проверьте правила продукта и прямую текущую инструкцию пользователя. Память не должна автоматически отменять новое явно заданное требование.
Удаление одной записи означает полное забывание?
Проверьте остальные используемые копии, индекс и кэш. Объём удаления зависит от реализованного процесса и политики хранения.