Управляемая память для AI-агентов: AGM и open-source SDK
Как устроена managed memory API для AI-агентов с AGM-ревизией убеждений: архитектура, open-source SDK, сравнение решений и практические примеры.
Управляемая память для AI-агентов: зачем нужна AGM-ревизия убеждений и как это работает
Представьте: ваш AI-агент несколько месяцев ведёт проект. Он помнит, что «клиент предпочитает тёплые тона», но сегодня клиент изменил мнение — теперь он хочет холодную палитру. Что происходит дальше? В большинстве современных систем агент начнёт осциллировать: то применять старое знание, то новое, не понимая, какое из них актуально.
После того как пользователь подтвердил информацию и попросил агента её запомнить, тот согласился — но на протяжении нескольких последующих взаимодействий продолжал колебаться между двумя противоречащими убеждениями. Это не баг конкретного фреймворка — это фундаментальная проблема архитектуры памяти в LLM-агентах.
Именно для решения этой проблемы появилась концепция управляемого API памяти (managed memory API) с формальной ревизией убеждений по модели AGM. В этой статье разберём, как это работает, почему существующие решения не справляются и что предлагает новый подход с открытым SDK.
Почему существующие подходы к памяти агентов ломаются
Хотя отдельные компоненты памяти для AI-агентов существуют в различных системах, их архитектурный синтез и формальное обоснование остаются недостаточно изученными.
Посмотрим, как устроены популярные решения — и где у каждого из них слабое место:
| Система | Архитектура | Разрешение противоречий | Временная модель |
|---|---|---|---|
| Mem0 | Векторное хранилище + entity linking | LLM-driven, перезапись | Отсутствует |
| Letta | Git-бэкенд + Markdown-файлы | Text-level merge | Частичная |
| Zep / Graphiti | Knowledge graph с временны́ми окнами | Временны́е границы фактов | Есть |
| Anthropic Memory | Key-value + model-level retrieval | Отсутствует | Отсутствует |
| Kumiho | Graph-native + Redis + Neo4j | AGM-compliant belief revision | Полная |
Разрешение противоречий в Mem0 зависит от того, правильно ли LLM идентифицирует противоречия при вводе данных. В системе нет структурной модели замещения, временны́х окон и истории версий. Обновления перезаписывают данные, поэтому вопрос «что пользователь предпочитал в прошлом квартале» остаётся без ответа.
Letta разрешает конкурентные записи через текстовое слияние Git, которое может обнаруживать, но не семантически разрешать противоречивые убеждения — слияние требует вмешательства человека или LLM на уровне текстового диффа.
В таких системах воспоминания хранятся и извлекаются, но не моделируются как факты с временны́ми границами, которые могут быть заменены. Для агентов, которым нужно рассуждать о том, как менялись вещи, это существенный пробел.
Что такое AGM-ревизия убеждений и зачем она нужна агентам
AGM — это теория рациональной ревизии убеждений, разработанная Альчуррóном, Гэрденфорсом и Мэкинсоном (1985). Она определяет набор постулатов, которым должна удовлетворять любая «разумная» система обновления знаний при получении новой, возможно противоречащей информации.
«Агенты, как правило, пересматривают свои убеждения при столкновении с данными, которые им противоречат, выбирая из возможных пересмотров тот, который достаточен для восстановления согласованности.» — AGM Belief Revision Theory
Парадигма AGM для ревизии убеждений обеспечивает очень элегантную и мощную основу для рассуждений об идеализированных агентах.
Ключевые постулаты AGM применительно к памяти агента:
- Success («Успех»): новое убеждение обязательно попадает в обновлённое состояние.
- Consistency («Согласованность»): после ревизии база убеждений не должна содержать противоречий.
- Relevance («Релевантность»): из старой базы удаляется минимально необходимое количество убеждений.
- Core-Retainment («Сохранение ядра»): убеждение удаляется только если оно участвовало в порождении противоречия.
Центральный формальный вклад состоит в установлении соответствия между фреймворком AGM-ревизии убеждений и операционной семантикой системы памяти на основе графа свойств, доказывающего выполнение базовых постулатов AGM (K2–K6) и постулатов Ханссона для баз убеждений (Relevance, Core-Retainment).
Архитектура Kumiho: граф-native память с AGM
Kumiho — это граф-native когнитивная архитектура памяти, основанная на формальной семантике ревизии убеждений. Структурные примитивы, необходимые для когнитивной памяти — неизменяемые ревизии, изменяемые теговые указатели, типизированные рёбра зависимостей, URI-адресация — идентичны тем, что нужны для управления результатами работы агентов как версионируемыми активами.
Двойное хранилище
Архитектура реализует модель двойного хранилища: Redis для рабочей памяти, Neo4j для долгосрочного графа, с гибридным полнотекстовым и векторным поиском.
graph TD
A["Новый факт / событие"] --> B["Рабочая память Redis"]
B --> C{"Проверка на противоречие"}
C -->|"Противоречия нет"| D["Добавление в граф Neo4j"]
C -->|"Противоречие найдено"| E["AGM Belief Revision"]
E --> F["Supersedes Edge создаёт новую ревизию"]
F --> G["AnalyzeImpact: обход Depends_On рёбер"]
G --> H["Пересмотр зависимых убеждений"]
D --> I["Версионируемый граф знаний"]
H --> I
I --> J["Гибридный поиск: fulltext + vector"]
J --> K["Контекст агента"]
Как работает разрешение противоречий
Система разрешает конфликты через AGM-совместимые операторы ревизии убеждений: ребро Supersedes создаёт новую ревизию с формальными гарантиями (Success, Consistency, минимальное изменение через Relevance).
В Letta обновление убеждения в одном файле не идентифицирует автоматически другие файлы, зависящие от него. В Kumiho функция AnalyzeImpact обходит типизированные рёбра Depends_On для определения всех нижестоящих выводов, которые могут потребовать переоценки — возможность, которую плоские файловые системы не могут выразить.
Преимущества граф-native подхода над Git-моделью
Граф-native подход даёт более богатые примитивы версионирования, чем файловая модель Git: типизированные когнитивные рёбра (не просто диффы файлов), многоуровневые тегированные указатели (не просто головы веток), вложения артефактов (не просто содержимое файлов) и иерархическое разграничение по проектам/пространствам (не просто деревья директорий).
Open-source SDK: как использовать на практике
Новизна подхода заключается в демонстрации того, что архитектурные решения, мотивированные требованиями production-систем, удовлетворяют установленным ограничениям рациональности AGM. Насколько известно авторам, до этой работы не существовало исследований, связывающих теорию AGM с архитектурами памяти AI-агентов.
Vот минимальный пример использования managed memory API с AGM-ревизией:
from kumiho import MemoryClient
client = MemoryClient(api_key="...", agent_id="agent-42")
# Добавляем факт в память агента
client.remember(
fact="Клиент предпочитает тёплые тона",
tags=["preference", "client:acme"],
validity_from="2026-01-01"
)
# Позже — поступает противоречивый факт
result = client.remember(
fact="Клиент теперь предпочитает холодные тона",
tags=["preference", "client:acme"],
validity_from="2026-05-01"
)
# AGM-ревизия автоматически:
# 1. Создаёт Supersedes-ребро
# 2. Помечает старый факт как superseded
# 3. Обходит зависимые убеждения через AnalyzeImpact
print(result.superseded_beliefs) # ["Клиент предпочитает тёплые тона"]
print(result.downstream_affected) # список зависимых фактов для пересмотра
# Поиск с временны́м контекстом
history = client.recall(
query="предпочтения клиента acme",
include_superseded=True # показать всю историю изменений
)
# Анализ downstream-влияния при изменении факта
impact = client.analyze_impact(
belief_id="belief:client-acme-preference"
)
for dep in impact.dependencies:
print(f"Зависит: {dep.fact} — статус: {dep.status}")
Сравнение: как разные системы обрабатывают одно противоречие
| Сценарий | Mem0 | Letta | Kumiho (AGM) |
|---|---|---|---|
| «Клиент: тёплые тона» → «Клиент: холодные тона» | Перезапись без истории | Merge conflict, нужен LLM/человек | Supersedes-ребро, история сохранена |
| Вопрос «что предпочитал в январе?» | ❌ Невозможно | ❌ Частично | ✅ Полная история версий |
| Пересмотр зависимых выводов | ❌ Ручной | ❌ Ручной | ✅ AnalyzeImpact автоматически |
| Формальные гарантии согласованности | ❌ | ❌ | ✅ AGM postulates K2–K6 |
Ограничения и честный взгляд на трудности
Несмотря на элегантность подхода, реальность сложнее:
Лучшая память обычно означает больше токенов, больше задержки, больше хранилища, больше систем. Память, полезная сейчас, в какой-то момент устареет. Обновление обходится дорого и несёт риски.
Чем больше обновлений, ревизий и сжатий — тем выше риск искажения того, что произошло на самом деле.
Для каких задач AGM-managed memory оправдана:
- ✅ Долгоживущие production-агенты (CRM, юридические ассистенты, медицинские системы)
- ✅ Мультиагентные пайплайны с разделяемой памятью
- ✅ Системы с требованием аудита и версионирования знаний
- ✅ Агенты, работающие с часто меняющимися фактами предметной области
Для каких — нет:
- ❌ Простые чат-боты с краткосрочной сессионной памятью
- ❌ Сценарии, где важна скорость, а не историчность
- ❌ Команды без опыта работы с Neo4j или графовыми базами
Заключение
Проблема памяти AI-агентов — это не только «как сохранить факт», но и «как разумно его обновить». Большинство существующих решений решают первую задачу и игнорируют вторую: отсутствие графовой структуры означает отсутствие отслеживания отношений, обработки противоречий и обновления знаний.
Kumiho и концепция managed memory API с AGM-ревизией убеждений предлагают принципиально другой подход: архитектура отличается на структурном уровне — векторный граф с онтологически-осведомлёнными рёбрами автоматически обрабатывает отслеживание отношений, противоречия и временны́е рассуждения.
Это не серебряная пуля — операционная сложность реальна. Но для команд, строящих долгоживущих агентов с реальными требованиями к памяти, это первый фреймворк, который предлагает формальные гарантии, а не эвристики поверх LLM.
Агент, который не умеет «забывать правильно», так же опасен, как агент, который ничего не помнит.
Что делать прямо сейчас:
- Изучить arxiv.org/abs/2603.17244 — полный текст исследования по Kumiho.
- Оценить, нужна ли вашему агенту история ревизий или достаточно простого key-value store.
- Если строите мультиагентную систему — рассмотреть AGM как архитектурный стандарт для разрешения конфликтов памяти.