Conecte-se a outros agentes a partir de um agente declarativo

Quando os usuários interagem com um agente declarativo no Microsoft 365 Copilot Chat, ele pode se conectar a outros agentes para recuperar informações extras ou realizar ações. Você declara essas conexões no manifesto do agente listando os IDs do título do worker_agents agente na propriedade. Em tempo de execução, o Copilot Chat atua como o agente que medeia a interação — os usuários veem a troca de agente para agente, mas não precisam selecionar os agentes conectados.

Observação

Os agentes conectados declarados pelo manifesto são um mecanismo separado da API do Copilot Chat, que permite experiências de conversa da plataforma Microsoft 365 Copilot dentro de seus próprios aplicativos personalizados.

Observação

Os usuários devem instalar cada agente conectado antes de poderem usá-los. Para obter mais informações, consulte Implantar agentes conectados para usuários na organização.

Quando usar agentes conectados

Use agentes conectados para dividir ou combinar agentes entre funções ou equipes de desenvolvimento.

Expandir além do que um agente pode realizar

Os modelos de linguagem grande (LLMs) têm uma janela de contexto útil limitada e um conjunto de recursos. A confiabilidade de um único agente LLM começa a cair à medida que mais documentos são recuperados ou ferramentas são habilitadas. Se um agente tiver qualidade inferior depois de adicionar mais conhecimento ou funcionalidades, divida algumas dessas capacidades em outro agente e conecte-se a ele. O agente existente envia apenas as informações sobre a tarefa que o agente conectado precisa para atingir sua parte. O agente conectado funciona em sua própria janela de contexto, livre de outros documentos ou recursos que estão na conversa do usuário.

Integre-se a agentes desenvolvidos externamente

Os agentes declarativos podem facilitar o trabalho com outras equipes de desenvolvimento. Cada equipe de desenvolvimento pode se concentrar nos recursos e na qualidade de seu agente, usando agentes conectados para integração com outros agentes. Assim como nos microsserviços, cada agente pode ser desenvolvido sem afetar outros agentes. Ao contrário dos microsserviços, os agentes podem continuar a interagir uns com os outros mesmo quando suas interfaces mudam.

Compartilhar recursos do agente em vários cenários

Um agente pode funcionar bem com um conjunto de documentos e ações, mas ainda assim ser difícil para os usuários. Considere um agente que entenda as tabelas e os dados de um banco de dados relacional de clientes e vendas. Esse agente pode ser útil para os supervisores de loja gerenciarem o estoque e para os analistas de negócios se reportarem aos executivos. Se esse agente pudesse ser conectado a um agente adaptado aos supervisores da loja com iniciadores de conversa e instruções, e também a um agente adaptado aos analistas de negócios. Ambos os tipos de usuários podem obter mais valor ao usar agentes adaptados ao seu cenário.

Habilitando agentes conectados

Conecte-se a outros agentes declarativos incluindo as IDs de título dos agentes no manifesto do agente declarativo existente.

Primeiro, obtenha o ID do título do agente para se conectar. A ID do título de um agente declarativo é uma sequência de uma única letra, um sublinhado e um GUID. Você pode encontrá-lo na saída do comando Provisionar no Microsoft 365 Agents Toolkit ou no modo de desenvolvedor.

Captura de tela da sessão do Microsoft 365 Copilot em que o Copilot retornou um card com informações de depuração mostrando a ID do título

Adicione a ID do título à propriedade worker_agents como o id. A worker_agents propriedade foi adicionada no esquema de agente declarativo versão 1.6.

Práticas recomendadas

Os agentes declarativos escolhem a quais agentes se conectar com base no , do agente namedescriptionconectado e conversation_starters no manifesto. A descrição deve descrever tanto para humanos quanto para agentes o que o agente pode fazer. Por exemplo, considere esta descrição para um agente que trabalha com dados estruturados sobre vendas de videogames.

A comprehensive video game sales analytics agent that provides detailed insights into
gaming industry data across multiple dimensions.
Analyze top-performing games, consoles, genres, and publishers with regional breakdowns
for North America, Europe, Japan, and global markets.
Discover best-selling titles of all time, platform-specific performance metrics, genre
popularity trends, and yearly sales patterns.
Compare sales figures across different publishers, identify market leaders by region,
and explore gaming industry evolution over time.
Whether you need to understand which games dominated specific platforms, analyze
publisher market share through visualizations like histograms, or track sales performance
across different years and regions, this agent delivers comprehensive gaming market
intelligence with precise data-driven answers.

Os iniciadores de conversa devem informar aos usuários e agentes os tipos de prompts que o agente pode lidar. Como os usuários podem usar termos diferentes para o mesmo conceito, considere variar o fraseado dos iniciadores de conversa. Por exemplo, ao trabalhar com casos legais, bons iniciadores de conversa também podem usar os termos "assunto", "caso", "cliente" e "problema". Somente o text campo de um iniciador de conversa é usado por agentes conectados.

Limitações

  • Os agentes declarativos só podem se conectar a outros agentes declarativos por meio do recurso de agentes conectados. Considere o uso de plug-ins MCP ou API para conectar-se a outros sistemas e agentes.

  • A comunicação entre agentes inclui apenas texto. O agente ativo envia um prompt de texto para o agente conectado, que responde com uma resposta de texto. Os agentes não podem enviar binários ou imagens de arquivos para outros agentes.

  • Embora o usuário seja solicitado a confirmar chamadas de plug-in de API do agente conectado, todos os cartões adaptativos são enviados para o agente ativo. O usuário não vê o card adaptável nem pode usar uma caixa de diálogo. No entanto, o agente ativo processa o conteúdo de dados do adaptive card.