Инструкции и промпты

Оркестрация ИИ-агентов: как устроена сеть агентов

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

Антон БесщетниковОбновлено 12 ноября 202610 мин чтения
Бумажный робот-диспетчер в центре, четыре ленты ведут к маленьким роботам с конвертом, календарём, коробкой и трубкой, одна лента коралловая
Коротко

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

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

Что такое оркестрация ИИ-агентов и чем сеть агентов отличается от одного

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

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

В руководстве Anthropic по построению агентов различают два режима: воркфлоу, где модель и инструменты идут по заранее заданному пути, и агенты, где модель сама направляет процесс. Сеть может быть собрана из обоих. Документация OpenAI Agents SDK описывает два способа делегирования. Передача управления (handoff) отдаёт разговор другому агенту целиком. В схеме «агент как инструмент» главный сохраняет разговор за собой и вызывает специалистов как вложенные вызовы.

Какие паттерны оркестрации бывают и когда какой уместен

Паттернов пять, и они отвечают на разные вопросы: кто принимает решение о маршруте, возвращается ли работа назад и сколько агентов занято одновременно. Названия и логику берём из руководства Anthropic и документации OpenAI Agents SDK, а в каждом разборе есть строка о том, как паттерн собирается в Савви.

Пять паттернов оркестрации Нажмите на паттерн
Оркестратор и исполнители

Главный агент поручает задачи исполнителям и собирает ответ сам.

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

Один агент определяет категорию обращения и отправляет разговор по ветке.

Когда уместен
Обращение надёжно относится к категории.
Пример из бизнеса
Один номер на несколько филиалов.
Как собрать в Савви
Агент-администратор и по действию на каждую ветку с шагом «Переключение действующего агента».
Цепочка шагов

Задача идёт по фиксированным шагам один за другим.

Когда уместен
Задача делится на фиксированные шаги.
Пример из бизнеса
Сначала запрос в CRM, потом запись в таблицу.
Как собрать в Савви
Одно действие из нескольких шагов: вебхук, вызов подчинённого, таблица.
Передача управления

Разговор целиком уходит к другому специалисту.

Когда уместен
Дальше разговор должен вести другой специалист.
Пример из бизнеса
Консультант передаёт клиента в отдел записи.
Как собрать в Савви
То же переключение, с резюме разговора в аргументе действия.
Параллельная работа

Независимые подзадачи закрываются одновременно.

Когда уместен
Нужно закрыть независимые подзадачи сразу.
Пример из бизнеса
Проверить наличие на нескольких складах.
Как собрать в Савви
В клиентской переписке это решают одним агентом с набором функций, которые отрабатывают по ходу диалога.
Паттерны по руководству Anthropic и документации OpenAI Agents SDK, сборка в Савви по руководству платформы.

Паттерны не взаимоисключающие, их собирают вместе. Секретарь переключает диалог на филиал, а агент филиала для расчёта по таблице вызывает подчинённого — обе схемы Савви работают в одной сети. Выбирая паттерн, смотрите на цену ошибки. Центральная модель в схеме оркестратора тратит свои токены на каждое поручение. Маршрутизация работает, пока классификация надёжна — если агент-администратор путает ветки, весь разговор уходит не туда. Документация Microsoft Azure Architecture Center отмечает риск и у передачи управления — агенты могут бесконечно перекидывать диалог друг другу. Поэтому у каждой ветки должен быть понятный конец, а у сети есть смысл ограничить число передач в инструкции.

Когда одному ИИ-агенту хватает работы и сеть не нужна

Одного агента достаточно, когда он надёжно решает задачу, а его инструкция помещается в один экран правил. Авторы паттернов говорят об этом прямо — Anthropic советует искать самое простое решение и усложнять только по необходимости, потому что агенты дороже и накапливают ошибки. Microsoft предлагает брать одного агента, если он справляется. LangChain рекомендует переходить к нескольким, когда перегружены контекст или набор инструментов.

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

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

Как собрать сеть агентов в Савви: переключение и вызов подчинённого

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

Переключение собирают так.

1 Создайте агентов-специалистов По агенту на каждый отдел или филиал, как обычно, и протестируйте каждого отдельно.
2 Заведите агента-секретаря У него одна задача: выяснить, куда идёт клиент. Прайсы и услуги ему не нужны.
3 Добавьте действие на каждую ветку В «Действиях» секретаря: шаг «Переключение действующего агента», в нём выбран агент, которому уходит диалог. «Название функции» пишут латиницей, «Описание функции» объясняет, когда её вызывать.
4 Передайте резюме Аргумент в «Переменных действия» и шаг отправки принимающему агенту. Без резюме в инструкции принимающего прописывают вопрос, который он задаст клиенту.
app.suvvy.ai
Кабинет Савви, «Добавление действия» с названием «Переключение действующего агента»: вкладка «Шаги действий», тип шага «Переключение действующего агента», поля «Агент», «Настройка выбора агента для ответа» и «Текст, возвращаемый агенту»
Шаг «Переключение действующего агента» в «Действиях» секретаря: здесь выбирают агента, которому уходит диалог.

Инструкция секретаря получается короткой. Вот набросок для сети из двух филиалов:

Ты секретарь компании. Твоя единственная задача: выяснить, в какой филиал едет клиент.
Услуги и цены не обсуждай.
Когда клиент назвал филиал, вызови функцию switch_to_north или switch_to_south
и передай в аргумент user_message краткое резюме разговора.
Как секретарь передаёт диалог агенту филиала
1 Клиент Пишет в единый канал
2 Агент-секретарь Выясняет, в какой филиал едет клиент
3 Действие с переключением Передаёт диалог вместе с резюме
4 Агент филиала Отвечает клиенту дальше сам
Секретарь выясняет филиал, а после переключения клиент общается с агентом этого филиала.

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

app.suvvy.ai
Кабинет Савви, «Добавление действия» с названием «Вызов агента»: тип шага «Вызов агента», поля «Агент», «Текст запроса в агент», «Режим сохранения суб-диалога с агентом в кастомном действии» и «Передача контекста» со значением «Не передавать»
Шаг «Вызов агента» в действии основного агента: выбор подчинённого, текст запроса и настройка передачи контекста.
!
Каналы при переключении

Входящий канал подключают к агенту-секретарю. В Битрикс24, amoCRM и Kommo у секретаря канал подключён и ответы включены, а у принимающего канал подключён, ответы выключены, дополнительные функции вроде заполнения сделки включены. Перепутанная пара даёт знакомый симптом — «агент ответил дважды» или «замолчал после переключения».

Как развести агентов по воронкам, времени и каналу

Агентов в сети разводят по теме вопроса, а ещё закрепляют за воронкой CRM, временем суток или каналом связи — платформа позволяет все три.

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

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

Нарисуйте сеть на листе и проверьте каждую стрелку

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

Дальше проверьте три вещи — каждая отвечает на вопрос «где сеть сломается первой». У каждого агента ровно одна роль, которую можно произнести одной фразой. У каждой передачи есть резюме или заранее прописанный вопрос клиенту. Входящий канал подключён только к тому агенту, который принимает первое сообщение. Соберите сеть на двух агентах, прогоните десяток диалогов в тестовом чате с кнопкой «i», и только затем добавляйте третьего — так видно, какая из передач даёт сбой. Начать можно в кабинете Савви, где агентов создают без программирования.

Частые вопросы

Что такое оркестрация ИИ-агентов простыми словами

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

Чем оркестратор отличается от обычного агента

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

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

Чаще всего называют пять: оркестратор и исполнители, маршрутизация, цепочка шагов, передача управления и параллельная работа.

Когда одного ИИ-агента достаточно

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

Какие схемы нескольких агентов есть в Савви

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

Можно ли развести агентов по времени суток или воронкам

Можно. Дневному и ночному агенту на одном канале задают разное «Рабочее время». В amoCRM на вкладке «Главное» выбирают воронки и статусы, где отвечает конкретный агент, и руководство называет такую схему разветвлённой сетью агентов.

Антон БесщетниковОснователь и CEO платформы СаввиБолее 100 внедрений ИИ-сотрудников в разных сферах бизнеса. Пишет о том, как устроены ИИ-агенты: инструкции и промпты, голосовые агенты, интеграции с CRM и каналы общения с клиентами.