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

Как устроен отдельный шаг как строительный блок, разобрано в разделе «Шаги сценария»; здесь — как из шагов складывается сценарий, как агент по нему движется и как выбрать его структуру под задачу.

Как шаги собираются в сценарий

Ключевой принцип: сценарий двигает сам агент. Даже если на карте нарисована стрелка от шага A к шагу B, это не автоматическое выполнение — агент видит доступные сейчас шаги и подсказки и сам решает вызвать следующий. Благодаря этому агент не «робот на рельсах»: если клиент посреди сценария что-то уточняет, агент может ответить на его вопрос, а затем вернуться к сценарию.

Шаги связываются между собой через действия:

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

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

Рабочий дашборд

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

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

Как агент проходит сценарий

Это и есть сердцевина проектирования сценария — то, ради чего шаги вообще существуют.

Возможности агенту дают шаги, а не промпт

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

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

Чем система направляет агента

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

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

Как шаги склеиваются в проход по сценарию

В обычном течении диалога это выглядит так. Агент стартует, когда клиент впервые пишет в новом диалоге. Если в сценарии есть стартовый шаг (флаг «Стартовый шаг»), агент сразу получает в дашборд задачу перейти к нему.

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

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

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

Что копится в контексте и когда сбрасывается

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

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

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

Важно: даже при включённой настройке закрытие сбрасывает не всё. Переживают закрытие:

  • значения переменных состояния, записанные действием «Изменить переменную состояния», — они специально сохраняются между диалогами одного чата. Если такой признак должен действовать только внутри одного обращения, сбрасывайте его вручную, например в шаге на закрытие диалога;
  • напоминания, созданные вручную действием «Отложенный запуск шага» — их при необходимости тоже снимают вручную. (Системные напоминания — об ожидании ответа и о простое диалога — при закрытии снимаются автоматически, независимо от этой настройки.)

Проверяйте каждый шаг в тестовом чате

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

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

Как выбрать структуру сценария

Архитектуру сценария стоит подбирать под функции и задачи конкретного агента — единого правильного устройства нет.

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

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

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

Где именно проводить границу, помогает понять тестирование. Постепенно вы замечаете места, где поведение агента перестаёт быть стабильным, — это и есть сигнал, что данный участок стоит разбить на отдельные этапы-шаги.

Благодарим за отзыв.
Была ли статья полезна?
Нет
  • Рекомендации не помогли
  • Нет ответа на мой вопрос
  • Текст трудно понять
  • Не нравится описанный функционал
Да
Предыдущая статья
Шаги сценария
Шаг — это базовая единица сценария и, по сути, основной строительный блок всей полезной работы агента.
Следующая статья
Действия
Действие — это операция, которую выполняет система, когда отрабатывает шаг сценария