Как перестать кормить нейросеть таблетками от амнезии и при чем тут OpenMemory
Представьте, что вы наняли отличного разработчика, но каждое утро он забывает всё, что делал вчера. Вы снова объясняете ему, что проект на Python, база данных в Docker, а заказчик не любит синий цвет. Именно так чувствуют себя современные LLM без костылей. Мы пытаемся лечить это с помощью RAG: нарезаем тексты на куски, превращаем в векторы и надеемся, что поиск по сходству вытащит нужный контекст. Но это не память, это просто поиск по ключевым словам на стероидах.
Недавно я наткнулся на OpenMemory. Проект позиционирует себя не как очередную векторную базу, а как «когнитивный движок памяти». И это чертовски интересная попытка сделать агентов чуть более человечными.
В чем проблема обычного RAG
Когда мы используем классический RAG, модель не понимает контекст времени или отношений. Если вы полгода назад любили темную тему, а вчера перешли на светлую, обычный векторный поиск может выдать оба факта с одинаковым весом. Модель запутается.
OpenMemory пытается имитировать работу человеческого мозга. Вместо плоского списка векторов здесь используется иерархическая структура. Разработчики выделили несколько типов памяти:
- Эпизодическая: события и цепочки действий.
- Семантическая: голые факты.
- Процедурная: навыки и алгоритмы.
- Эмоциональная: отношение пользователя к вещам.
Проект сейчас находится в стадии активной переписки (full rewrite), так что баги — норма жизни, но сама концепция подкупает своей логикой.
Что умеет этот движок
Главная фишка — это Temporal Knowledge Graph (временной граф знаний). Система понимает, что факты имеют срок годности. У каждой записи есть атрибуты valid_from и valid_to. Если в 2021 году CEO компании была Алиса, а в 2024 стал Боб, OpenMemory закроет период Алисы и будет выдавать актуальную информацию, сохраняя историю.

Объяснимость вместо магии
Векторный поиск часто работает как черный ящик: что-то нашлось, почему именно это — бог знает. В OpenMemory есть механизм Explainable traces. Вы можете буквально посмотреть «трассу» воспоминания и понять, почему движок решил достать именно этот факт. Это критично для отладки сложных агентов.
Забывание как фича
В систему встроен Decay engine. Это адаптивное забывание. Вместо жесткого TTL (времени жизни записи), здесь работает комбинация значимости, новизны и частоты обращения. Если факт не важен и о нем давно не спрашивали, он постепенно «тускнеет» в памяти.
Как это пощупать в коде
Разработчики сделали SDK для Python и Node.js. Самое приятное — локальность. По умолчанию всё крутится на SQLite прямо у вас на машине. Никаких обязательных облаков и подписок на Pinecone.
Для Python установка выглядит привычно:
pip install openmemory-py
А использование сводится к паре строк:
from openmemory.client import Memory
mem = Memory()
# Добавляем знание о предпочтениях пользователя
mem.add("user prefers dark mode", user_id="u1")
# Ищем по смыслу
results = mem.search("preferences", user_id="u1")
Кстати, если вы используете LangChain или CrewAI, там уже есть готовые интеграции. Можно просто подменить стандартную историю чата на OpenMemory, и ваш агент перестанет быть «золотой рыбкой».
Архитектурные нюансы
Проект можно запустить двумя способами. Первый — как библиотеку внутри вашего приложения (Embedded). Второй — как отдельный сервер в Docker. Серверный вариант дает еще и Dashboard для визуализации того, что там нейросеть себе напридумывала, и поддержку протокола MCP (Model Context Protocol).
Последнее особенно круто для тех, кто пользуется Claude Desktop или Cursor. Можно подключить OpenMemory как MCP-сервер, и ваш IDE-ассистент начнет запоминать детали ваших проектов между сессиями.
(Примечание: схема выше описывает иерархическую декомпозицию памяти от входа до консолидации)
Кому это пригодится
Я вижу несколько сценариев, где OpenMemory может выстрелить:
- Персональные ассистенты: когда нужно помнить предпочтения пользователя годами.
- Сложные агенты для кодинга: чтобы модель помнила архитектурные решения, принятые неделю назад.
- Системы автоматизации: где важно отслеживать изменение фактов во времени (кто был ответственным, какие доступы были у сотрудника).
Стоит ли пробовать сейчас
Проект живой, у него почти 4000 звезд на GitHub, но помните про плашку «Rewriting». Документация местами может отставать от реальности, а API — меняться без предупреждения.
Если вам нужно простое хранилище документов, оставайтесь на обычном RAG. Но если вы строите систему, которая должна «жить» и развиваться вместе с пользователем, загляните в репозиторий CaviraOSS/OpenMemory. Идея скрестить векторный поиск с графом знаний и временными метками — это именно то, чего не хватает для создания по-настоящему умных агентов.
Начать можно с их CLI-утилиты opm. Она позволяет быстро накидать фактов в базу и потестировать поиск без написания кода. Просто, наглядно и дает понимание, подходит ли вам такая логика работы с данными.
