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