Память для ИИ-агентов: как научить нейросеть помнить
ИИ-агент без памяти — как собеседник с амнезией: он может отвечать на текущий вопрос, но не способен вести диалог, адаптироваться к пользователю или учиться на прошлом опыте. Именно поэтому разработка механизмов памяти — одна из ключевых задач при создании умных ассистентов. В этой статье разберём, как устроена «память» современных агентов и какие подходы используют разработчики.
Зачем агенту память?
- Поддерживать контекст диалога (например, помнить имя пользователя или тему разговора).
- Накапливать знания о мире (базы данных, статьи, диалоги).
- Адаптироваться под предпочтения пользователя («ты не любишь спойлеры — я их не буду упоминать»).
Без памяти даже самый продвинутый ИИ-агент останется «одноразовым инструментом».
Основные подходы к организации памяти
1. Заполнение слотов (Slot Filling)
Простейший метод, в котором память агента — это набор «слотов» (переменных), которые нужно заполнить данными.
- NER (Named Entity Recognition): извлечение именованных сущностей (даты, имена, локации) из текста.
- Классификаторы: автоматическое определение категории запроса (например, «бронирование отеля» → слоты: город, дата, бюджет).
Используется в чат-ботах с чёткими сценариями (техподдержка, бронирование).
2. Очень длинный контекст БЯМ
Современные большие языковые модели (БЯМ) вроде GPT-4 или Claude 3 могут обрабатывать до 1 млн токенов, сохраняя связность текста. Это позволяет «запихнуть» всю историю диалога в промпт.
3. RAG (Retrieval-Augmented Generation)
Подход, в котором агент ищет релевантные данные в своей базе знаний перед генерацией ответа.
3.1 Чанкинг (Chunking)
Как правильно разбивать тексты — отдельная наука. Без чанкинга поиск в базе знаний превращается в лотерею.
3.2 Очистка данных
- Повторы, опечатки, нерелевантные фрагменты (например, рекламные вставки в статьях).
- Полное игнорирование смолтолка (smalltalk).
- Сокращение «водянистого» текста до ключевых тезисов.
4. Суммаризация (Summarization)
Периодическое сжатие диалога или документа в краткий конспект. Например:
- После 10 сообщений в чате агент генерирует саммари и сохраняет его в память.
- Раз в день агент создаёт отчёт о взаимодействиях с пользователем.
5. Структурированный вывод + вызов функций (Structured Output + Function Calling)
Агент сохраняет данные в формате JSON или через API:
- Запись встречи в календарь → структура {«event»: «совещание», «time»: «2024-05-20 14:00»}.
- Интеграция с внешними БД (например, обновление профиля пользователя в CRM).
6. Гибридные подходы
6.1 Графовая память
Представление знаний в виде узлов (сущности) и рёбер (связи). Например:
Позволяет строить ассоциативные цепочки, но требует сложной логики обновления графа.
6.2 АГ-память (Ассоциативно-гетерархическая)
Расширение графовой памяти до гиперграфов, когда связи могут включать не только пары узлов, но и целые подграфы. Позволяет:
- Создавать самореферентные структуры («эта заметка ссылается на саму себя в разделе 2.3»).
- Автоматически перестраивать иерархию данных.
Об АГ-памяти мы подробно поговорим в отдельной статье — это тема для глубокого анализа.
Экзотика: Tree-of-Thoughts и Graph-of-Thoughts
Расширения классического CoT (Chain-of-Thought) — подходы, в которых агент планирует действия через древовидные или графовые структуры. Например:
- ToT (Tree-of-Thoughts): генерация нескольких «мыслей», их оценка и выбор оптимальной ветки.
- GoT (Graph-of-Thoughts): создание динамических связей между идеями.
Эти методы требуют продвинутого Function Calling (например, вызов алгоритмов поиска по графу) и пока остаются нишевыми.
Практика: как это работает у меня
В своих ассистентах я внедрял память ещё до эры ChatGPT:
- 2019: модуль для DialogFlow, в котором агент запоминал контекст диалога через именованные сущности и внешнюю БД в виде списка пар (id, value).
- С 2022: гибрид RAG + графовая память в текущих персональных помощниках и прочих агентах.
Как и OpenAI с их «Memory», все рано или поздно приходят к необходимости хранить данные между диалоговыми сессиями.
Заключение
Память ИИ-агента — не единая технология, а слоёный пирог из подходов: RAG, суммаризация, структурированные данные и графы. Выбор зависит от задачи:
- Для FAQ-бота хватит заполнения слотов.
- Для персонального ассистента нужен гибрид RAG + графовая память.
Что дальше? В следующих статьях разберём:
- Как работает АГ-память.
- Почему Tree-of-Thoughts и Graph-of-Thoughts — это не магия, а строгая математика.
Подписывайтесь на блог и Telegram-канал «Технооптимисты» (https://t.me/drv_official) — следите за тем, как эволюционируют ИИ-агенты!