Если ИИ-агент в вашем приложении должен помнить клиента между разговорами, Mem0 добавляет для этого слой памяти: приложение сохраняет факты, ищет их перед ответом и обновляет по ходу работы. Библиотека решает техническую часть, а правила остаются за компанией: что вообще можно запоминать, кто читает записи, сколько они живут и как стираются по запросу человека. Без этих правил память агента превращается в склад чужих данных без владельца.
Что помнит агент
Mem0 хранит память приложения как набор записей с операциями добавления, поиска, обновления и удаления. Ценность памяти определяется тем, какие факты вы разрешили сохранять, а ответ на этот вопрос даёт только компания.
Согласно документации Mem0, система даёт приложению долговременную память: факты извлекаются из разговоров, сохраняются, а при поиске ранжируются по близости к запросу через векторное хранилище. Есть облачная платформа с API и открытая версия для самостоятельного развёртывания. Для компании это первый вопрос выбора: где физически лежат записи и кто за них отвечает.
| Тип факта | Пример | Решение |
|---|---|---|
| Предпочтение по работе | Клиент просит писать в мессенджер, а звонков избегает | Сохранять, срок жизни ограничить |
| Контекст проекта | Согласованный формат отчёта и ответственный | Сохранять с датой и источником |
| Чувствительные сведения | Здоровье, паспортные данные, платёжные реквизиты | Исключить из памяти на входе |
| Догадка модели | Предположение о настроении или намерениях клиента | Исключить, хранить только сказанное человеком |
Правило фильтрации ставят до записи, а проверка после записи запаздывает: скрипт приложения проверяет, что именно уходит в память, и отсекает категории из запретного списка. Модель предлагает формулировку факта, скрипт решает, сохранять ли её, а человек сверяет важные записи. Ошибочный факт в памяти вредит дольше ошибочного ответа, потому что возвращается в каждом следующем разговоре.
Условный пример: агент отдела продаж помнит, что клиент просил присылать коммерческие предложения в формате таблицы и согласовывать их с финансовым директором. Эти два факта избавляют менеджера от пересказа в каждом новом диалоге. Сведения о здоровье клиента или его семейных обстоятельствах скрипт отсекает по списку категорий, даже если они прозвучали в разговоре: записывать их в память запрещено. Если сотрудник считает запись ошибочной или лишней, у него есть кнопка «пометить на удаление», а владелец процесса разбирает такие пометки раз в неделю.
Идентификаторы и права
Документация Mem0 описывает идентификаторы user_id, agent_id и run_id: ими записи привязываются к человеку, к агенту и к отдельной сессии. На этой привязке держится разграничение памяти. Если в приложении работает несколько сотрудников и несколько клиентов, каждая запись помечается владельцем, а поиск всегда выполняется с фильтром по нему. Забытый фильтр означает, что агент расскажет одному клиенту о делах другого.
Идентификатор в запрос подставляет сервер приложения, который знает, кто вошёл в систему. Браузеру и чат-боту присылать его самостоятельно запрещено: сервер определяет значение сам, иначе подмена одного значения откроет чужую память. То же правило действует для агентских инструментов: права проверяет сервер, а модели достаточно знать, что она вызывает функцию «найти в памяти». Подробно эта логика описана в статье про права, секреты и проверку ИИ-агентов.
Разграничьте и роли внутри компании. Сотрудник поддержки видит память о клиентах своего отдела, руководитель видит сводку, а разработчик получает доступ к хранилищу только для отладки и только на обезличенных данных. Отдельно решите, видит ли сам клиент, что о нём запомнили. Показать клиенту список записей и предложить исправить или удалить лишние — самый ясный способ держать память честной.
Записывайте в журнал каждое чтение и изменение памяти: кто, когда, по какому идентификатору. Сами тексты записей оставляйте вне журнала, иначе он станет вторым хранилищем персональных данных. Журнал нужен для разбора инцидентов и для ответа на запрос клиента о том, что о нём известно.
Срок и удаление
Бессрочная память накапливает устаревшее: клиент сменил должность, проект закрыт, договорённость отменена. Для каждого типа факта задайте срок жизни и правило пересмотра. Предпочтения по общению живут дольше, текущие договорённости по проекту закрываются вместе с проектом, а черновые догадки хранить незачем. В документации Mem0 у записи есть дата истечения: после неё запись скрывается из обычного поиска. Скрытая запись всё же остаётся в хранилище, поэтому для настоящего стирания нужна операция удаления, а срок проверяйте регулярным заданием.
Удаление должно работать по запросу человека и по сроку. По документации, операция удаления входит в набор базовых, но вам надо проверить на тестовых данных, что после неё запись пропадает из поиска, и отдельно уточнить, как с ней обращаются резервные копии по вашему регламенту. Если клиент просит стереть сведения, приложение удаляет записи памяти, исходные реплики из логов и производные данные в одном процессе. Правила обработки персональных данных разобраны в материале про 152-ФЗ и чат-ботов.
Раз в месяц запускайте обзор памяти: сколько записей создано, сколько устарело, какие запросы на удаление выполнены и за какое время. Если записей накапливается больше, чем люди успевают проверить, сокращайте перечень разрешённых категорий. Чем меньше агент запоминает, тем проще отвечать за его память.
Какие факты о клиентах ваш агент должен помнить дольше месяца?
Проверка записи и чтения
Перед запуском проверьте память как отдельный компонент, без участия модели в ответе. Тест состоит из вымышленных пользователей и нескольких сценариев, а результат сверяется с ожиданиями вручную.
- Создайте двух вымышленных клиентов с разными идентификаторами и запишите каждому по три факта, среди которых один запрещённый.
- Проверьте, что запрещённый факт отсеян скриптом ещё до обращения к памяти.
- Запросите память первого клиента и убедитесь, что в выдаче нет ни одной записи второго.
- Обновите факт и убедитесь, что поиск возвращает новую версию, а старая отсутствует или помечена устаревшей.
- Удалите запись, повторите поиск и проверьте, что она пропала из выдачи, затем сверьте журнал приложения.
Отдельным тестом проверьте поведение при противоречии: в памяти лежит старый факт, клиент говорит новый. Агент должен обновить запись или уточнить у человека, а молча выбирать любую версию ему запрещено. Повторяйте набор после каждого обновления библиотеки: поведение поиска и фильтров зависит от версии.
Mem0 и MCP memory
Эти два варианта решают соседние задачи. Mem0 встраивается в код вашего приложения как библиотека или сервис: вы сами вызываете добавление и поиск и управляете схемой записей. MCP memory — сервер по протоколу MCP, к которому подключается готовый клиент вроде Claude или Cursor, и память становится инструментом агента. Подробности второго варианта в статье про MCP memory для ИИ-агента.
Выбор определяется тем, кто хозяин диалога. Если вы строите свой чат-бот или внутренний сервис и хотите управлять каждой записью, берут библиотеку памяти. Если сотрудники работают в готовых программах и нужно дать им общий контекст, подходит протокольная интеграция. Бывает и сочетание, но тогда правила прав и удаления пишутся единые, иначе у компании появятся два хранилища с разными порядками.
Лицензия открытой версии в репозитории указана как Apache-2.0, последние изменения в репозитории вышли в начале октября 2026 года, но облачная платформа и самостоятельная установка отличаются по составу функций и по тому, у кого лежат данные. Эту разницу фиксируйте в решении о развёртывании вместе с оценкой рисков для персональных данных.
Запишите на листе пять категорий фактов, которые агенту разрешено помнить, и три, которые запрещены. Соберите память на тестовых данных и пройдите проверку из пяти шагов. Если в проекте нужны серверная проверка прав и регламент удаления, ориентир — раздел про ИИ-агентов для бизнеса.