Продукт

4 слоя памяти в EPIHEN: как ассистент не забывает контекст

20 мая 2026·10 минут чтения·EPIHEN Team

В обзорной статье про EPIHEN мы коротко упомянули, что у агента четыре слоя памяти. Здесь разберём каждый слой по отдельности: что туда попадает, как долго хранится, кто решает что запомнить и зачем такая сложная схема вообще нужна.

Чтобы было понятнее, представьте человеческую память. У нас есть сенсорная память (то, что мы видели секунду назад), рабочая память (что мы держим в голове в текущей беседе), эпизодическая (события из жизни) и семантическая (знания о мире). Эти системы работают параллельно и независимо. У EPIHEN устроено схоже — четыре независимых слоя, каждый со своей задачей. Если бы их склеили в один, агент либо забывал бы важное, либо тонул в шуме.

Слой 1. Кратковременная память — окно контекста

Самый простой слой. Это всё, что вы написали в текущей сессии, плюс ответы агента, плюс системный промпт. Технически — это «окно контекста» большой языковой модели, которое подаётся ей с каждым новым запросом.

Размер окна зависит от модели. Claude Opus 4.7 — 200K токенов в base-mode, до 1M в long-context. Gemini 2.5 Pro — те же 2M токенов. GPT-5.5 — 400K. Это огромные числа: 200K токенов — это примерно 500-700 страниц текста. То есть в кратковременной памяти умещается несколько часов плотного разговора.

Но кратковременная память исчезает с закрытием сессии. Это её главное ограничение — и именно поэтому нужны остальные три слоя.

Слой 2. Оперативная память — факты текущего чата

Когда вы пишете «меня зовут Аня» или «я работаю над миграцией Postgres 14 → 16», модель в кратковременной памяти, конечно, это видит. Но представьте, что разговор длится три часа, и через два часа вы спрашиваете «какие риски при моей миграции?». В этот момент исходное сообщение «миграция Postgres 14 → 16» может оказаться за пределами окна, особенно если в середине были тяжёлые запросы — длинные коды, PDF-файлы, картинки.

Оперативная память решает именно эту проблему. После каждого сообщения отдельный процесс (мы зовём его таламус) сканирует, не появились ли в реплике факты, важные на уровне всего чата. Если появились — записывает в БД с привязкой к этому чату. При следующем запросе оперативные факты автоматически подмешиваются в системный промпт, поэтому агент помнит «миграция Postgres 14 → 16» даже если оригинальное сообщение уже выпало из окна.

Что обычно попадает в оперативную память:

Не попадает: проходные реплики, эмоции, мелкие детали. Это критично — иначе оперативная память бы раздулась за неделю до бесполезного шума.

Слой 3. Долговременная память — что мы знаем про вас как про человека

Долговременная память — главная фишка, отличающая EPIHEN от обычного чата с LLM. Это база знаний, которая живёт между всеми вашими чатами и сессиями. Создали вы её сегодня в чате про код, а завтра спросили в чате про путешествия «какой ноутбук взять в командировку» — агент учтёт, что вы backend-разработчик, потому что это знание уже в долговременной памяти.

Записываются туда не любые факты, а только те, что прошли два фильтра:

  1. Стабильность. Факт должен быть истинен не только в этом моменте, но и через месяц. «Я люблю горный туризм» — да, стабильно. «Я устал» — нет, ситуативно.
  2. Полезность. Факт должен помочь агенту лучше отвечать на будущие запросы. «Я веган» — критично полезно для рецептов. «Я родился во вторник» — почти бесполезно, не записываем.

Кроме самих фактов, в долговременной памяти живут предпочтения — что вы хотите видеть и не хотите. Например: «отвечай развёрнуто, не люблю короткие отписки», «не используй смайлики», «когда даёшь код — давай с комментариями». Эти предпочтения подмешиваются в системный промпт на каждом запросе любого чата.

Управление долговременной памятью прозрачное: вы можете в любой момент открыть её и увидеть все сохранённые факты. Можно удалить любой факт вручную, можно сказать агенту «забудь, что я backend-разработчик, я перешёл во фронтенд» — он перепишет соответствующую запись.

Слой 4. Проектная память — изолированные зоны

Проблема предыдущих трёх слоёв: они все «принадлежат пользователю в целом». Если вы используете EPIHEN и для рабочих задач, и для личных, ваша долговременная память будет содержать факты сразу из двух миров. Это и неудобно (агент путает контексты), и небезопасно (если кто-то получит доступ к одному проекту, увидит и второй).

Проектная память — четвёртый слой, в котором каждому проекту выделяется собственная независимая зона. Создали проект «Работа», в нём через пару недель набралась проектная память: имена коллег, технологии, текущие задачи. В проект «Личное» эта память не утекает ни одним фактом.

Внутри проекта работает та же логика, что и в долговременной памяти: таламус сканирует разговоры и решает что записать. Но scope ограничен проектом. Если вы в личном чате обсуждали диету, а потом перешли в рабочий — агент не вспомнит про диету: в рабочем проекте этой информации нет, она в личном.

Подробнее про проектную изоляцию — в отдельной статье.

Кто решает, что запомнить: таламус

Во всех слоях запись управляется одним и тем же модулем — мы зовём его таламус. Это отдельная LLM-инстанция (более лёгкая чем основной агент), которая получает на вход последнее сообщение пользователя и решает: запомнить или нет, и в какой слой записать.

Таламус работает асинхронно. После каждого ответа агента он в фоне обрабатывает реплику, не блокируя ответ юзеру. Если что-то нужно записать — пишет в БД. Если ничего нового нет — игнорирует.

Почему отдельный модуль, а не сам агент решает? Из-за стоимости и качества. Заставлять полноценный Opus 4.7 на каждый ход думать «а не стоит ли это запомнить» — это дорого и медленно. Маленькая модель (типа Haiku или Flash), специально обученная фильтровать факты, делает это за копейки и не тормозит основной диалог.

Как агент использует память при ответе

Когда вы отправляете запрос, EPIHEN не просто шлёт его в Opus с одной системной инструкцией. Реально происходит так:

  1. Сбор контекста: берётся кратковременная память (текущий чат) + оперативная (факты этого чата) + долговременная (стабильные знания о вас) + проектная (зона текущего проекта).
  2. Эти слои склеиваются в единый «расширенный системный промпт» с понятной структурой: что юзер любит, что делал, над чем работает.
  3. Расширенный промпт + сам запрос идёт в выбранную модель (Opus, Sonnet, etc.).
  4. Модель отвечает уже с пониманием полного контекста, а не из вакуума.

Эффект ощущается с третьего-четвёртого использования. На первом запросе ничего магического: модель просто отвечает. На десятом запросе — она уже «знает» вас, помнит ваши проекты, ваши предпочтения, не задаёт уточняющих вопросов про базовый контекст.

Что насчёт забывания

Память — это не только что записать, но и что забыть. Долговременная и проектная памяти ограничены по объёму (примерно 200 фактов на проект и около 500 на пользователя в общей долговременной). Когда лимит достигнут, таламус начинает прорежать: старые факты, на которые агент давно не ссылался, постепенно вытесняются новыми.

Это намеренное решение. Альтернатива — хранить вечно всё — приводит к тому, что через год использования в долговременной памяти лежат 5000 фактов, половина из которых устарела или вовсе про другого человека (если, например, у пользователя сменилась работа). Качество ответов падает, потому что промпт раздувается шумом.

Вручную можно почистить память в любой момент — это безопасное действие, факты можно восстановить по транскрипту чатов если очень надо.

Резюме

Четыре слоя памяти в EPIHEN:

Всё это работает прозрачно: вы можете посмотреть и поправить любую запись. Контролируете не вы, что попадает в окно контекста, а вы вместе с таламусом, которому отданы решения «достойно ли это записать».

В следующей статье разбираем проектную изоляцию подробнее — что именно изолируется, как переключаться между проектами и почему это важнее, чем кажется.

Попробовать EPIHEN

50 поинтов в подарок при регистрации. Этого хватит, чтобы накопить первые факты в долговременной памяти и почувствовать разницу.

Создать аккаунт

Читать дальше

Продукт
Изоляция проектов: личное и работа в одном чате без утечек
Продукт
Что такое EPIHEN: AI-агент с памятью между сессиями