Сценарии

Разделите инструкции агента на логические части

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

У сценария есть два режима работы:

  • Передача диалога (по умолчанию) — основной агент передаёт разговор сценарному агенту, и дальше клиента ведёт он.
  • Подключение к основному агенту — диалог никому не передаётся, основной агент сам подгружает инструкцию сценария в свой промт, когда она нужна.

Выбирать режим нужно по тому, важен ли общий контекст разговора. Сравнение — в разделе Как выбрать режим.

Создание сценария

При добавлении сценария нужно указать:

  • Название — должно содержать только латинские буквы или нижнее подчеркивание и всегда начинаться с буквы. Например: deposit
  • Описание — обычно одно предложение, описывающее когда основной агент должен запускать данный сценарий. Например:
Не поступил платеж с банковской карты
  • Шаги — пошаговое описание того, что агент должен делать. Например:
1. Уточни город
2. Спроси какая будет посылка, в коробке или в пакете
3. Уточни вес посылки
4. Суммаризируй информацию и переведи на оператора

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

Режим 1. Передача диалога

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

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

### Сценарные агенты ###
- "Не поступил платеж с банковской карты" - вызывай агента с именем "deposit".

Инструкции, которые необходимо добавить, для удобства указаны на странице редактирования сценария в верхней части экрана.

Особенности режима:

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

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

Как работает передача контекста

Основной агент обобщает текущую беседу с клиентом и передает её в сценарий — сценарий не видит весь диалог в полном виде. При выходе из сценария сценарный агент также передает обобщенный результат основному агенту.

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

Режим 2. Подключение к основному агенту

Диалог никому не передаётся. Основной агент сам подгружает инструкцию сценария в свой промт, когда она нужна, продолжает вести разговор и сохраняет весь его контекст.

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

### Навыки ###
- "оформление доставки" - используй навык "dostavka".

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

Подключённые сценарии в промте называются навыками, но это не то же самое, что встроенные навыки агента (Полиглот, Фильтрация, Редактор и другие).

Что берётся от сценария:

  • инструкция;
  • функции;
  • таблицы данных.

Что не берётся: модель и остальные настройки сценария. Работают настройки основного агента — поэтому в этом режиме они в интерфейсе сценария недоступны.

Особенности режима:

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

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

Что видно в анализе ответа

По подключённым сценариям в анализе ответа появляются записи:

ЗаписьЧто означает
Активация навыкаКакой навык загружен и почему агент так решил
Навык выгруженНавык больше не участвует в разговоре
Неудачная активация навыка / Неудачная выгрузка навыкаНапример, навык переименовали или отключили посреди диалога
Конфликт имён функций навыкаОдна из функций навыка не подключилась, потому что функция с таким именем уже есть

Как выбрать режим

Что важноРежим
Сохранить контекст всего разговораПодключение к основному агенту
Своя модель или свои настройки поведенияПередача диалога
Функции сценария нужны основному агентуПодключение к основному агенту
Клиент перескакивает между темамиПодключение к основному агенту
Длинный изолированный процесс по своим правиламПередача диалога

На этой странице