Какие настройки останавливают диалог, если он стал слишком длинным или дорогим: лимит сообщений, максимальная стоимость и оповещения о балансе.
От слишком длинного или дорогого диалога защищают три настройки: лимит сообщений, максимальная стоимость диалога и лимит в 10 вызовов на одну функцию. При достижении порога агент перестаёт отвечать. Отдельно можно включить оповещения о балансе в Telegram и MAX и увидеть цену диалога в тестовом чате — до того, как она станет сюрпризом в конце месяца.
Один диалог способен незаметно съесть дневной бюджет: клиент раз за разом переспрашивает одно и то же, агент послушно дёргает одну и ту же функцию в ответ, и к обеду баланс уже в минусе. У платформы для этого случая есть предохранители. Вопрос практический — где их поставить, чтобы диалог останавливался вовремя и не обрывал живой разговор на середине фразы.
За это отвечают две настройки из блока «Защита от спама» в дополнительных настройках агента: «Максимальное количество сообщений в диалоге» и «Максимальная стоимость диалога». При достижении заданного значения агент перестаёт отвечать пользователю: оба ограничения работают как жёсткий стоп-кран без промежуточного предупреждения.
Разница между ними в единице измерения, и от неё зависит, какую задачу решает настройка.
| Настройка | Что считает | Когда удобнее |
|---|---|---|
| Максимальное количество сообщений | реплики в диалоге | нужен предсказуемый предел разговора независимо от его цены |
| Максимальная стоимость диалога | рубли, списанные за диалог | цена реплик разная, например из-за таблиц и файлов базы знаний |
Обе настройки существуют именно на случай, когда клиент пишет непреднамеренно много или кто-то целенаправленно засыпает агента сообщениями: без потолка переписка тянет токены и деньги без остановки. Про то, из чего складывается сама стоимость реплики и как её снизить на здоровых диалогах, подробно написано в статье «Сколько стоит чат-бот с ИИ». Здесь же — только про аварийный тормоз на случай сбоя.
Проверьте на своих диалогах.Регистрация без карты, 500 ₽ на тест по промокоду BLOG500
Собрать агентаПлатформа ограничивает количество обращений к одной функции внутри диалога десятью попытками, и лимит общий для любой интеграции: таблицы, CRM, базы знаний. При превышении диалог останавливается с ошибкой «Достиг максимального количества вызовов функций на диалог».
Чаще всего в лимит упирается один и тот же тип сценария: клиент по кругу меняет параметры запроса, а агент послушно ищет заново — уточнил дату, потом город, потом бюджет, и каждое уточнение это новый вызов той же функции с новыми аргументами. Каждая из десяти попыток уже оплачена к моменту остановки. Ошибка здесь работает как сигнал: где-то в диалоге функция вызывается заметно чаще, чем нужно для ответа.
Часть таких вызовов вообще не обязана идти через модель. Проверки вроде «сообщение содержит нужное слово» или «сработал определённый файл базы знаний» можно вынести в вызов действия по триггеру: условие проверяется без обращения к LLM, и токены на эту проверку не списываются вовсе. Лимит в десять вызовов при этом продолжает действовать, но расходуется он только на то, что действительно требует решения модели.
Первая реакция после дорогого диалога обычно одна: поставить лимиты пожёстче и забыть о проблеме. Здесь легко перегнуть: жёсткий потолок сообщений одинаково обрывает и зациклившегося бота, и живого клиента, который просто задал шестое уточнение по сложному заказу.
Лимит по числу сообщений считает реплики подряд и не смотрит на намерение клиента. Долгая консультация по подбору сложного продукта (b2b-сделка, юридический вопрос, запись с несколькими условиями) легко занимает пятнадцать-двадцать сообщений при нормальном ходе разговора. Слишком низкий потолок обрывает именно такие диалоги первыми, потому что они и так самые длинные из всех.
Практический ориентир: сначала посмотреть на реальную длину типичного диалога в своей нише, и только потом отступать от неё в большую сторону с запасом. Похожая ловушка разбирается в статье про настройку ИИ-агента: там же собраны другие места, где агент незаметно становится дороже ожидаемого из-за истории вызовов функций и объёма контекста.
Лимиты останавливают уже случившийся перерасход, но узнать о риске стоит раньше. Оповещения от Савви в Telegram и MAX присылают сообщение среди прочего о том, что баланс скоро закончится или уже закончился. Подробно о том, какие ещё события попадают в эти уведомления и как их подключить, написано в статье «Оповещения от агента».
Если оповещение пропущено и баланс всё же ушёл в минус, для персонального канала API это выглядит как код ответа 402 с пометкой user_balance_below_zero — сообщение клиенту не уйдёт, пока счёт не пополнят. По остальным каналам логика та же: обслуживание приостанавливается до пополнения счёта.
Есть и способ увидеть цену диалога заранее, до подключения канала: флаг «Отображать стоимость диалога в тестовом чате» на вкладке «Служебное» показывает счётчик прямо во время тестирования агента. Вкладка доступна на тарифе Интегратор (ПРО с участием в партнёрской программе), поэтому на других тарифах цену диалога стоит смотреть по факту, в истории обращений.
У дорогого диалога и у сломанного диалога общий симптом: высокий счёт. Различает их только то, куда именно ушли токены.
Дорогой, но исправный диалог обычно длинный по содержанию: клиент перечисляет условия заказа, агент несколько раз обращается к разным функциям по делу, история переписки нужна для контекста. Сломанный диалог выглядит иначе — одна и та же функция вызывается подряд с похожими аргументами, а ответ клиенту не двигается вперёд. Именно второй случай и упирается в лимит вызовов раньше, чем в лимит стоимости.
Отдельная ловушка — демо-ссылка на агента. Переписка в демо-чате и разговор по демо-звонку списываются с того же баланса, что и обращения настоящих клиентов, только с ограничением по длительности звонка. Если тестовый доступ разослали десятку коллег для проверки, счёт за это придёт с того же счётчика, что и за реальную работу агента.
Начните с осторожных значений: лимит сообщений — с запасом от длины типичного диалога в вашей нише, максимальная стоимость — в несколько раз выше средних 15 ₽ за обычную переписку, лимит вызовов функций трогать не нужно вовсе, он общий для платформы.
Проверяйте раз в неделю историю остановленных диалогов: если лимит вызовов срабатывает регулярно на одном и том же сценарии, причина обычно в логике действия, и её стоит переработать, пока она не привела туда же снова. Подробный список моделей и их относительная стоимость — в руководстве платформы, а условия подписок и тарифов — на главной странице Савви.
Агент перестаёт отвечать клиенту. Настройка «Максимальная стоимость диалога» находится в дополнительных настройках, в блоке «Защита от спама», и работает как жёсткий потолок: после достижения заданной суммы платформа останавливает генерацию ответов в этом диалоге.
Да, рядом с ограничением по стоимости есть настройка «Максимальное количество сообщений в диалоге». Она обрывает переписку по счётчику реплик и полезна там, где нужен предсказуемый потолок независимо от того, сколько токенов ушло на каждую конкретную реплику.
Десять раз: это общий лимит платформы, единый для любой функции. При превышении диалог останавливается с ошибкой «Достиг максимального количества вызовов функций на диалог», а токены на все десять попыток уже списаны с баланса.
Подключить оповещения от Савви в Telegram или MAX — среди прочих событий они присылают сообщение о том, что баланс скоро закончится или уже закончился. Это отдельная настройка от уведомлений про срабатывание файлов базы знаний.
Для персонального канала API это код ответа 402 с пометкой user_balance_below_zero — сообщение не отправится, пока счёт не пополнят. По остальным каналам обслуживание тоже приостанавливается до пополнения баланса.
Да, и это частая неожиданность. Переписка в демо-чате и разговор по демо-ссылке для голосового агента списываются с того же баланса, что и обычные диалоги с клиентами: длительность звонка ограничена, а скидки на то, что это тест, нет.