Что переносится между обращениями: настройка истории сообщений и цена в токенах, переменные агента, саммари в CRM и срок хранения переписки — 45 дней.
Между обращениями клиента агент помнит ровно то, что вы указали в трёх настройках: сколько истории передавать в модель, что удерживать в переменных через memorize и что фиксировать саммари в карточке CRM. Настройка «Передавать историю сообщений» определяет, сколько прошлых реплик уходит в модель и во сколько токенов это обойдётся. По умолчанию переписка хранится 45 дней.
Тот же номер телефона, тот же клиент — но агент здоровается заново, будто видит его впервые. Человек уже называл имя, город доставки и повод обращения месяц назад, а сегодня раскладывает всё это по новой, слово в слово. За такой сценой обычно стоят три настройки, которые решают, что агент подтянет из прошлого разговора, а что придётся оплатить заново.
В большинстве каналов Савви повторное сообщение продолжает тот же диалог, а не открывает новый — устройство диалога и агента в целом описано в статье что такое ИИ-агент. Это видно на примере из документации про бьюти-сферу: клиент, который записывается на услугу раз в месяц и задаёт похожие вопросы, весь этот месяц числится в одном и том же диалоге — именно поэтому для такого сценария понадобилась отдельная настройка ограничения истории по времени.
У диалога при этом есть срок годности. По умолчанию Савви хранит сообщения и сами диалоги 45 дней: дальше неактивная переписка удаляется со всех серверов платформы. Если клиент вернулся через месяц, диалог почти наверняка ещё на месте; если через полтора-два — искать в нём уже нечего. Период хранения отдельно для сообщений и отдельно для диалогов задаётся в дополнительных настройках агента, в разделе «Безопасность», и его можно сократить или увеличить под свою задачу.
Проверьте на своих диалогах.Регистрация без карты, 500 ₽ на тест по промокоду BLOG500
Собрать агента«Передавать историю сообщений» в дополнительных настройках агента определяет, сколько последних сообщений диалога агент видит при каждом новом ответе — и напрямую влияет на то, сколько токенов уходит на обработку. Режимов четыре: не передавать историю вовсе, передавать её всю, ограничить числом сообщений или ограничить временем.
| Режим | Что видит агент | Когда уместен |
|---|---|---|
| Не передавать историю | Только текущее сообщение, диалог работает как вопрос-ответ | Короткие обращения без развития темы |
| Передавать всю историю | Весь диалог с первого сообщения | Длинный цикл сделки, где важнее контекст, чем токены |
| За Х сообщений | Заданное число последних реплик независимо от давности | Периодические обращения с похожими вопросами |
| За Х минут | История только за заданный отрезок времени | Клиент возвращается редко, старый контекст скорее мешает |
Лимит по числу сообщений и лимит по времени работают по-разному, и разница проявляется как раз на клиенте, который вернулся через месяц. Ограничение в Х сообщений не обнуляется от того, что между репликами прошли недели: агент всё равно получит заданное число последних реплик, даже если они годовалой давности. Ограничение в Х минут для месячного перерыва просто отрежет всё, что было раньше, и агент увидит только новое сообщение.
В бьюти-сфере, где клиент записывается на услугу раз в месяц и повторяет одни и те же вопросы, рекомендуется ограничивать контекст истории именно по времени. Иначе агент из раза в раз тащит за собой прошлый цикл записей вместо актуального обращения.
Чем больше истории агент передаёт в модель при каждом ответе, тем выше стоимость самого сообщения: и старые реплики, и новое обращение считаются одним и тем же счётом токенов.
Переменные — второй источник памяти, и он не зависит от настройки истории сообщений. Значение, записанное через функцию memorize или зафиксированное в отдельной переменной, остаётся доступным агенту даже в режиме «Не передавать историю», потому что хранится отдельно от самой ленты сообщений.
Выбор между фиксированной переменной с проверкой формата и динамической через memorize раскрыт в материале про переменные ИИ-агента; здесь важнее другое: именно эти значения переживают урезанную или отключённую историю и подставляются в разговор с вернувшимся клиентом. Например, если при первом обращении клиент назвал город доставки и это сохранено переменной, агент подставит его в приветствие месяц спустя, даже если сама история сообщений уже вне окна в несколько минут.
Третий источник — карточка сделки в CRM. Когда файл базы знаний с флагом «Создание саммари» срабатывает в amoCRM или Битрикс24, агент оставляет короткий пересказ разговора прямо в карточке, и эта запись живёт по правилам самой CRM-системы, а не по сорокапятидневному сроку хранения переписки на платформе.
Есть и обратный путь: настройка «Передавать саммари» в amoCRM и Битрикс24 формирует пересказ переписки, которая шла в карточке ещё до подключения агента, и передаёт его агенту — от одного до пятидесяти сообщений в зависимости от заданного лимита. Оба механизма по amoCRM и Битрикс24 расписаны шаг за шагом в саммари диалога в CRM; здесь важно, что это самостоятельный канал контекста, который переживает и удаление старого диалога, и урезанную настройку истории.
Отдельной платы за память у агента нет — она входит в стоимость обычного диалога, но размер этой платы зависит от того, сколько истории агент тянет за собой при каждом ответе. Диалог у Савви обходится примерно в 15 ₽ при оплате по токенам, из расчёта 1000 токенов = 1 ₽. Чем длиннее история, переданная модели при очередном ответе (весь диалог месячной давности против последних пяти сообщений), тем больше токенов уходит на обработку самого контекста, а не на генерацию ответа.
Покажите агенту, что у клиента уже есть история, а не отправляйте это на волю случая: откройте дополнительные настройки и посмотрите, какой режим стоит в поле «Передавать историю сообщений» — часто там держится значение по умолчанию, которое никто не трогал с момента создания агента.
Если обращения редкие и похожие, как ежемесячная запись из примера выше, переключите режим на историю за нужное число минут, чтобы старый контекст не тянулся хвостом. Если тема разговора длинная и растягивается на недели, оставьте передачу всей истории и следите за стоимостью через отчёт по диалогам. Для фактов, которые должны остаться независимо от выбранного режима — имя, город, дата прошлого обращения, — заведите переменную вместо того, чтобы полагаться на историю сообщений: так эти данные не потеряются ни при смене режима, ни при истечении сорока пяти дней хранения. А там, где канал связан с amoCRM или Битрикс24, включите «Передавать саммари» — тогда контекст подтянется в карточку сделки ещё до того, как агент напишет первое слово.
Нет: и история сообщений, и переменные существуют в границах одного диалога. Если клиент обратился по другому каналу или для него завели новую сделку в CRM, это уже другой диалог, и связать его с прежним автоматически агент не умеет: контекст передаётся в рамках того диалога, где идёт текущее обращение.
По умолчанию Савви хранит сообщения и диалоги 45 дней, дальше неактивная переписка удаляется со всех серверов платформы. Срок для сообщений и для самих диалогов задаётся раздельно в дополнительных настройках агента, в разделе «Безопасность», и его можно изменить под свою задачу.
Документация прямо разбирает этот случай и рекомендует ограничить историю по времени, а не по числу сообщений: иначе агент из месяца в месяц тянет за собой один и тот же старый цикл обращений вместо актуального. Число минут подбирается под сам цикл, например под ежемесячную запись на услугу.
Агент перейдёт в режим вопрос-ответ: каждое сообщение обрабатывается само по себе, без ссылки на предыдущие реплики диалога. Переменные и саммари в CRM продолжают работать как отдельные источники контекста: они не зависят от этой настройки.
От одного до пятидесяти: число задаётся флагом «Ограничить количество сообщений для саммари» в настройках amoCRM или Битрикс24. Если ограничение выключено, платформа берёт последние пятьдесят сообщений переписки, которая велась в карточке до подключения агента.
Нет, режим истории и саммари настраиваются отдельно от инструкции агента, на уровне общих настроек. В инструкции стоит прописать только поведение с уже знакомым контекстом: например, не переспрашивать то, что уже хранится в переменной.