Тестирование и отладка
Скопировать ссылку на статью
Скопировано

Содержание

  1. Тестовый чат
  2. Чем тестовый чат отличается от обычного
  3. Один ответ — это несколько итераций
  4. Блоки данных в тестовом чате
  5. Тестируйте постоянно
  6. Как читать чат, когда что-то идёт не так

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

Тестовый чат

Кнопка «Тестировать AI-агента» открывает чат на странице настройки агента. Вы пишете агенту так же, как писал бы клиент, а он отвечает по своей текущей конфигурации — той версии, которая открыта в карточке.

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

Это бесплатно

Сколько угодно проверок и никаких списаний — тестовый чат не тарифицируется (см. «Что не тарифицируется»). Поэтому проверять работу агента можно и нужно много.

Это изолированно

Переписка идёт только между вами и агентом; реальным клиентам ничего не уходит, настоящие диалоги, клиенты или заказы в CRM не создаются.

Сброс — с чистого листа

Кнопка с иконкой корзины очищает переписку: агент забывает контекст, собранные данные и своё место в сценарии и стартует заново. Так удобно прогонять один и тот же сценарий с нуля много раз.

Кнопка «Тестировать AI-агента» на странице агента и открытый тестовый чат

Чем тестовый чат отличается от обычного

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

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

Один ответ — это несколько итераций

Прежде чем разбирать блоки, важно понять, как агент работает. Один ответ клиенту — это не одно действие, а цикл из нескольких итераций. На каждой итерации агент смотрит, какие шаги ему сейчас доступны и что уже собрано, решает, какие шаги вызвать, система их выполняет и возвращает результат — и так по кругу, пока агент не решит остановиться: ответить клиенту или завершить работу. Подробно сам цикл описан в разделе «Цикл работы агента».

Тестовый чат показывает каждую итерацию подряд, блок за блоком. Поэтому после одного вашего сообщения данных выводится много — это нормально: вы видите весь ход работы агента, а не только финальный ответ. Большинство блоков можно развернуть (значок «>»), чтобы увидеть подробности.

Блоки данных в тестовом чате

Блоки появляются в чате постепенно, в процессе работы агента. Внутри одной итерации они обычно складываются так:

  • Шаги, запущенные по событию — оранжевый блок из двух строк: вверху со значком молнии указано событие, которое сработало («Сообщение от клиента», «Назначение диалога» и т.п.), а ниже со значком ветвления — шаг, который это событие запустило. Такие шаги обычно отрабатывают раньше самого агента.
  • Доступные шаги — серый блок «Доступно шагов: N». Список шагов, которые агент может вызвать на этой итерации, с учётом их видимости, условий срабатывания и типа события. Это первое, что стоит проверять: если нужного шага в списке нет, агент физически не сможет его вызвать, как бы хорошо ни был написан промпт. Причина почти всегда в условиях или видимости шага (см. «Условия»).
  • Задачи из дашборда — оранжевые блоки. Текущее состояние, которое система подсвечивает агенту: над каким шагом сценария он сейчас работает, сколько данных собрано («Собрано данных: 1 из 6») и каких обязательных полей не хватает, значения установленных сигналов и накопленный контекст. По сути это то, чем система направляет агента, — если задача поставлена неверно, агент может повести себя непредсказуемо. Подробнее — «Рабочий дашборд».
  • Размышление агента — зелёный блок со значком лампочки. Агент своими словами описывает, как он понял ситуацию, перед тем как действовать. Это его «мысли вслух» и ценный блок для отладки: он прямо показывает, почему агент собирается поступить так, а не иначе.
  • Шаги, которые агент решил вызвать — зелёные блоки со значком воспроизведения. Каждый блок — один шаг, который выбрал агент, с объяснением, зачем он его вызывает, и с данными, которые передаёт (например, что именно сохранить в карточку). За одну итерацию агент может вызвать несколько шагов — тогда и блоков будет несколько подряд.
  • Результат выполнения — голубые блоки. После того как шаги отработали, система показывает, что они реально сделали и что вернули агенту: «Клиент создан» или «Клиент обновлён» (с перечнем изменённых полей), «Заказ создан» или «Заказ обновлён», запланированные напоминания. Именно этот результат агент получает на вход следующей итерации и опирается на него дальше.
  • Ошибки — выделенные блоки. Если шаг не выполнился или модель вернула некорректный ответ, это видно отдельным блоком с названием шага и текстом ошибки.
  • Причина остановки — блок со значком паузы. В конце агент показывает, почему он завершил итерации: ожидание ответа — он ответил или задал вопрос и ждёт реакции клиента; работа завершена — задача выполнена и ответа не ждёт (например, диалог передан оператору или закрыт); продолжает работу — он ещё не закончил и переходит к следующей итерации.

После всех этих блоков идёт само сообщение агента клиенту — то единственное, что в реальном чате увидел бы клиент.

Ход работы в тестовом чате: доступные шаги, задачи дашборда, размышление, вызванные шаги и причина остановки

Тестируйте постоянно

Тестовый чат бесплатный не просто так — им и нужно пользоваться постоянно. Любое изменение в агенте проверяйте сразу: внесли правку — прогнали сценарий — посмотрели, что поменялось.

Одной проверки мало. Агент работает на LLM, поэтому его ответы не строго детерминированы: на одно и то же сообщение он в разных прогонах может повести себя по-разному. Если агент один раз ответил как надо, это ещё не гарантия, что он будет так отвечать всегда. Поэтому важные сценарии прогоняйте по несколько раз, сбрасывая переписку, и смотрите, насколько стабильно поведение. Именно стабильность вы и проверяете перед тем, как запускать версию на реальных клиентах (см. «Версии и статусы агента»).

Как читать чат, когда что-то идёт не так

Когда агент ведёт себя не так, как вы ожидали, ответ почти всегда уже есть в тестовом чате:

  • Проверьте доступные шаги. Если агент «не сделал» то, что вы настроили, посмотрите, был ли нужный шаг в списке доступных. Если его там нет — дело не в агенте, а в условиях, видимости или типе события шага.
  • Прочитайте размышления агента. Зелёные блоки с «мыслями» показывают, как агент понял ситуацию. Часто оказывается, что рассуждал он логично — просто исходя не из той картины, которую вы держали в голове. Это сразу подсказывает, что поправить в промпте или сценарии.
  • Проверьте задачи в дашборде. Если агент собирает не те данные или идёт не по тому шагу, посмотрите, какие задачи перед ним стояли. Неверно поставленная задача — частая причина «неправильного» поведения.
Благодарим за отзыв.
Была ли статья полезна?
Нет
  • Рекомендации не помогли
  • Нет ответа на мой вопрос
  • Текст трудно понять
  • Не нравится описанный функционал
Да
Предыдущая статья
Версии и статусы агента
Версии и статусы агента Chat Assistant: черновик, активная версия, остановка, заморозка и изменения.
Следующая статья
Антипаттерны
Антипаттерны Chat Assistant: ошибки в инструкциях, шагах, условиях, действиях и базе знаний.