Обзор добавления других агентов

Note

Функции, описанные в этой статье, питаются стандартным жгутом, который использует опции выставления счетов, описанные в разделе «Лицензирование для агентов, работающих на стандартном жгуте». Узнайте, как получить доступ к стандартным функциям в стандартных агентах и потоках агентов доступа.

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

Существует несколько способов добавить других агентов к вашему существующему агенту Copilot Studio:

Все агенты, добавленные в агента, отображаются на его странице Агенты.

Подключение к агентам, созданным с помощью Microsoft Foundry, Microsoft Fabric и Пакета SDK агентов Microsoft 365, в настоящее время доступно в качестве общедоступной предварительной версии.

Important

Эта статья содержит документацию по предварительной версии Microsoft Copilot Studio и может быть изменена.

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

Если вы создаете агент, готовый для рабочей среды, см. Обзор Microsoft Copilot Studio.

Аспекты проектирования многоагентных решений

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

Когда использовать дочерних агентов

Создавайте дочерних агентов внутри вашего агента, когда:

  • Вы создаете отдельный сценарий использования для обработки одного намерения или выполнения одной задачи (например, создать заявку, проверить статус, забронировать билет).
  • Один разработчик или небольшая сплоченная команда управляет всем агентным решением.
  • Вы хотите логически сгруппировать инструменты, инструкции и знания в четко определенные субагенты внутри основного агента.
  • Вам не нужны отдельные настройки, отдельная аутентификация или отдельные возможности развертывания для субагентов.
  • Вы не собираетесь публиковать эти агенты отдельно или предоставлять к ним доступ независимо друг от друга.
  • Вам не нужно использовать агента в нескольких агентах.

Когда следует разделять агента на нескольких подключенных агентов

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

В качестве общего правила, снижение производительности может произойти, когда у главного агента более 30–40 вариантов действий (инструментов, тем и других агентов). Однако снижение производительности может происходить и у агента с меньшим количеством инструментов с похожими описаниями.

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

Другие причины, по которым вы можете рассмотреть возможность разделения решения на нескольких подключенных агентов:

  • Несколько команд или разработчиков независимо управляют разными агентами.
  • Вам нужно публиковать и поддерживать агентов отдельно, предоставлять их напрямую на независимых каналах, а также делать их доступными для использования другими агентами.
  • У агентов должны быть собственные параметры, — например, какую модель должен использовать агент.
  • Для каждого агента требуются независимые процессы управления жизненным циклом приложения (ALM).
  • Вы хотите сделать своего агента многократно используемым (то есть подключенным и используемым более чем одним агентом).

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

Потенциальные последствия многоагентных решений

Разделение решения между несколькими агентами может:

  • Увеличить задержку за счет появления дополнительных переходов оркестрации. Например, оркестрация основного агента определяет, какой подключенный агент может обработать запрос. Затем подключенный агент использует свой слой оркестрации, чтобы определить, как обрабатывать запрос с помощью доступных инструментов.
  • Увеличить площадь тестирования, управления и управления для решения.

Перенаправление на агента из темы

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

  1. Выберите значок "Добавить узел" под узлом, после которого вы хотите выполнить перенаправление, затем выберите агента, на которого хотите перенаправить запрос, в подменю Добавить агента.

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

  3. Теперь вы можете сохранить и протестировать тему, чтобы убедиться, что перенаправление агента работает как нужно.

Note

Перенаправление на агентов данных Fabric в настоящее время не поддерживается.

Управление существующими подключенными агентами

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

Как временно сделать дочернего или подключенного агента недоступным основному агенту

На странице Агенты для вашего основного агента используйте переключатель Включено рядом с агентом, которого вы хотите включить или выключить.

Отключение дочернего агента или подключенного агента переводит его в неактивное состояние — это значит, что он не реагирует на пользователей или триггеры.

Удаление дочернего агента

На странице Агенты для вашего основного агента выберите три точки () рядом с дочерним агентом, которого вы хотите удалить, и выберите Удалить.

Удаление подключенного агента

На странице Агенты для вашего основного агента выберите три точки () рядом с подключенным агентом, которого вы хотите удалить, и затем выберите Отключить агента.

Ссылка на дочернего агента или подключенного агента в инструкциях основного агента

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

  1. Перейдите на страницу Обзор вашего основного агента.

  2. В поле Инструкции введите косую черту (/) и выберите нужного агента. Copilot Studio автоматически сохраняет инструкции.

  3. Протестируйте свой агент. Когда вы используете панель тестирования в Copilot Studio, вы должны видеть ссылку на своего агента на карте активности.

Известные ограничения

Следующие ограничения применяются к дочерним и подключенным агентам.

  • На агентов данных Fabric Data в настоящее время нельзя настроить перенаправление с помощью узла Перенаправить внутри темы. На агентов данных Fabric в настоящее время нельзя явно ссылаться в инструкциях.

  • Агенты данных Fabric в настоящее время не функционируют, когда основной агент развернут в Microsoft 365 Copilot.

  • Цитаты могут не всегда сохраняться при передаче выходных данных от одного агента обратно вызывающему агенту.

  • Дочерние и подключенные агенты учитывают параметр Использовать общие знания основного агента. В этом случае другие агенты не используют общие знания как источник ответов, генерируемых встроенным инструментом знаний. Однако другие агенты иногда могут использовать знания базовой языковой модели при генерации вопросов или сообщений.

  • Если вы используете агента как основного агента с одним или несколькими подключенными агентами, вы не можете также использовать этого же агента как подключенного агента для второго основного агента. Однако вы можете использовать любого агента, у которого нет подключенных агентов, в качестве подключенного агента для нескольких основных агентов.

  • В многоагентных конфигурациях, когда ваш родительский агент полностью зависит от субагентов (без тем или источников знаний), и вы устанавливаете поведение после выполнения родительского агента для дочернего агента равным Не отвечать, платформа может отправить дополнительное, автоматически сгенерированное сообщение explanation_of_tool_call после ответа дочернего агента. Это сообщение генерирует среда выполнения оркестрации (а не дочерние агенты). Сообщение не указывает на проблему с конфигурацией агента.