← ИИ-платформа Svaya

Что платформа помнит между шагами, сессиями и прогонами

Помнит ли платформа, о чем был разговор? Это самый простой вопрос про память у систем на LLM (больших языковых моделях). В работающем техническом решении память нужна в нескольких разных местах, и у каждого свое хранилище и свой срок. Термины (шаг, попытка, прогон, сессия, установка, ядро платформы, точка подтверждения, точка передачи, контролер, правила соответствия, карта замен) определены на обзорной странице.

Схема горизонтов памяти. Память шага до конца попытки, память процесса в базе данных ядра на дни и недели, память диалога на сервере с заменой персональных данных между сессиями, память установки с итогами прогонов и решениями людей между прогонами
Четыре горизонта памяти. Что помнит каждый, где лежит и сколько живет.

Четыре горизонта памяти

ГоризонтЧто покрываетСколько живет
Память шагаОдну попытку одного шагаДо конца попытки, на диск не записывается
Память процессаПрогон от запуска до завершенияДни и недели, переживает перезапуск платформы и многодневное ожидание контролера
Память диалогаПереписку сотрудника или покупателя магазина с ИИ-ассистентом на LLM между сессиямиПереживает обновление страницы, новое окно браузера и новую рабочую смену. Диалог закрывается сервером после объявленного срока простоя или по явной команде закрытия из системы заказчика
Память установкиИтоги прошлых прогонов и решения контролеров на точках подтвержденияМежду разными задачами и прогонами, срок хранения задан правилами соответствия

Память шага - это рабочие данные одной попытки, на диск они не записываются, и разбирать в ней нечего. Дальше о трех остальных горизонтах.

Память процесса, из-за которой задача переживает ожидание

Прогон маршрута может быть долгоживущим процессом. Он может остановиться на точке подтверждения и ждать контролера столько, сколько понадобится (до вечера, до понедельника или до возвращения согласующего сотрудника из отпуска). Состояние прогона лежит в базе данных ядра платформы. Из-за перезапуска платформы, ее обновления или отказа одной из копий ядра прогон не теряется, он продолжается с того места, где стоял.

Память процесса нужна и проверке при установке. Если шаг читает данные, которых в этой точке маршрута еще нет, потому что предыдущие шаги их не записывают, описание задачи отвергается. Так проверка при установке отсеивает описания, в которых шаг длинного процесса остался бы без данных от предыдущих шагов.

Память диалога, где одно лицо получает одно условное обозначение

Если техническое решение отвечает сотруднику или покупателю магазина в чате (ИИ-ассистент на LLM), переписка не начинается с нуля при каждом входе. История диалога хранится на стороне платформы и подставляется в контекст при сборке следующего ответа. Историю подставляет сервер. Подменить ее, прислав другую историю в запросе с рабочего места, нельзя.

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

Отсюда правило, которое мы не меняем ни под какие права доступа. Тексты диалогов хранятся только с заменой персональных данных на условные обозначения. Текст с восстановленными данными существует только на экране адресата в момент ответа и на диск не записывается. Иначе роль аналитика качества (сотрудник заказчика, который читает диалоги ИИ-ассистента, чтобы оценивать ответы) стала бы каналом доступа к персональным данным покупателей в открытом виде.

Память установки, где лежат итоги прогонов и решения контролеров

После завершения прогона платформа записывает его итог, то есть чем закончился маршрут, какое решение принял контролер на точке подтверждения и с каким комментарием. Запись делается после прогона и вне пути, по которому идет ответ, поэтому она не замедляет саму задачу.

Читать эту память может следующий прогон, если так объявлено в описании задачи. Пример с нашего стенда. Редактор отклонил ответ на отзыв покупателя и написал в комментарии, что покупатель просил не называть его по имени. Следующий прогон по тому же отзыву получает этот комментарий в контекст до вызова LLM и пишет ответ иначе. Комментарий при этом лежит в памяти уже с заменой имени, и в LLM имя не уходит.

Доступ к памяти установки проверяется при каждом чтении по ролям того, от чьего имени идет прогон.

Регламенты со сроком действия, отдельный вид памяти установки

Отдельный вид памяти установки - это регламенты, положения и инструкции как записи в базе установки с номером редакции, датами начала и конца действия и ссылкой на заменяющую редакцию. При запуске ядра платформы и затем раз в сутки платформа перечитывает эти записи и составляет перечень документов, которые пора пересмотреть. Признаки у перечня формальные.

  • Подходит к концу или истек срок действия.
  • Прошел интервал пересмотра, записанный в самой редакции.
  • Стоит пометка «пересмотреть», которую поставил сотрудник заказчика, ответственный за регламенты.
  • Записана отметка о внешнем событии, например об изменении документа в системе заказчика.

Перечень платформа записывает в журнал установки, то есть в служебный журнал ядра платформы, который читает администратор установки. Отдельного экрана для ответственного за регламенты на нашем стенде пока нет.

Пример с нашего стенда. Мы положили в записи о редакциях три строки.

  • Действующая редакция правил возврата товара, у которой подходил к концу срок действия и давно прошел интервал пересмотра.
  • Свежая редакция правил доставки.
  • Замененная старая редакция правил возврата.

После перезапуска ядра платформа назвала кандидатом на пересмотр только первую, по двум признакам сразу (срок действия и интервал пересмотра). Свежую и замененную она не тронула.

Здесь платформа останавливается на формальных признаках. Судит о том, устарел ли документ по существу, и переписывает его ответственный за регламенты. Индекс поиска по документам (RAG) - это собранная платформой база фрагментов регламентов для ответов по ним. Свежесть индекса и актуальность самого регламента - это разные величины, и одна из другой не следует. Индекс, собранный по последней редакции документа, ничего не говорит о том, не устарел ли документ, а просроченный регламент ничего не говорит о состоянии индекса.

Правила, общие для памяти диалога и памяти установки

Для обеих действуют такие правила:

  • Доступ к памяти проверяется на каждом чтении. Отказ в доступе - это штатная ошибка шага. Задача уходит в точку передачи, и прогон не зависает.
  • Классы данных и сроки хранения задаются правилами соответствия в описании задачи. Служба информационной безопасности заказчика видит их в описании задачи, и изменить их можно, не пересобирая платформу.
  • Запись в память установки - это объявленная часть описания задачи, которую платформа выполняет после прогона, а историю диалога сервер пишет на каждой реплике. Нового вида шага для записи в память в формате маршрута нет, и мы так решили. Чем меньше видов шагов, тем меньше правил приходится проверять при установке.

Чего платформа не помнит

Границы памяти такие:

  • Не дообучается на данных заказчика. Память здесь - это хранилища, а сама LLM от прогона к прогону ничему не учится.
  • Не переносит контекст между заказчиками. Установка изолирована, и то, что накопилось у одного заказчика, у другого не появляется.
  • Не хранит персональные данные в открытом виде ни в текстах диалогов, ни в памяти установки.

На какой стадии память сегодня

Память процесса работает во всех технических решениях каталога, на ней держится каждое ожидание контролера. Память диалога и память установки проверены на нашем стенде в сентябре 2026 года на двух маршрутах стенда (ИИ-ассистент продавца в торговом зале и ответ на отзыв покупателя). Отбор кандидатов на пересмотр регламентов проверен там же на маршруте ответов по внутренним документам. Платформа находит просроченную редакцию и не трогает свежую и замененную. Экрана для перечня пока нет. Установок у заказчиков нет, замера на их данных нет.

Где посмотреть память на записанном запуске

На карточках технических решений витрины видно, какие шаги читают состояние прогона и по каким условиям расходятся ветки, например на карточке ответов по внутренним документам. Условие перехода читает то, что записал предыдущий шаг, и это самая наглядная часть памяти процесса. Соседние страницы раздела разбирают агентский цикл, объявление маршрута, проверки результата и границы самостоятельности платформы.


Остальные страницы раздела: Что платформа доводит до конца сама и где обязателен человек, Как платформа повторяет шаг, пока не получит результат, Почему порядок шагов задачи объявлен заранее и кто его задает, Как устроена Svaya и где проходят границы ее самостоятельности, Что платформа делает, когда результат шага не годится.

Записанные запуски и схемы маршрутов — на витрине платформы. Общее описание — страница платформы, развёрнутая статья — как устроена Svaya.