Compartilhar via


Adicionar um agente filho

Um agente filho é um agente leve que existe no contexto do seu agente principal. Agentes filhos permitem que você agrupe logicamente ferramentas, instruções e conhecimento em subagentes claramente definidos dentro de um agente maior. Eles são ideais para casos de uso únicos que respondem a uma única intenção ou completam uma única tarefa. Este artigo explica como criar e gerenciar um agente filho.

Criar um agente filho

  1. Vá até a página Agentes do seu agente principal e selecione Adicionar um agente.

  2. Selecione Novo subagente.

  3. Insira um nome exclusivo para seu novo agente filho.

  4. Determine quando seu agente deve ser utilizado. Por padrão, os agentes respondem aos usuários ou gatilhos, com base na descrição deles.

    • Se você quiser usar o comportamento padrão (O agente escolhe - Com base na descrição), insira uma breve descrição do propósito do seu agente.
    • Caso contrário, expanda a lista em Quando isso será usado? e selecione o comportamento desejado. Para mais informações sobre os comportamentos com suporte, consulte Determinar quando usar seu agente.
  5. Insira instruções claras que você quer que seu agente siga quando for invocado. Para fazer referência a ferramentas, variáveis ou adicionar fórmulas do Power Fx em suas instruções, insira uma barra (/) e selecione a opção desejada no menu exibido.

    Importante

    Ao referenciar ferramentas existentes nas instruções do seu subagente, decida se a ferramenta deve ser acessada diretamente pelo seu agente principal ou apenas quando explicitamente chamada dentro das instruções do subagente. Limitar o uso de uma ferramenta a referências explícitas de instruções ajuda a evitar confusão dos orquestradores quando existem ferramentas ou agentes semelhantes. Por exemplo, se você tem um agente "Verificar o saldo da conta" e uma ferramenta semelhante chamada "Obter saldo da conta", restringe a ferramenta para ser chamada apenas pelo agente para evitar sobreposição. Para restringir uma ferramenta para que só esteja disponível quando referenciada por outro agente, desmarque a propriedade Permitir que o agente decida dinamicamente quando usar essa ferramenta na seção Detalhes adicionais na página de detalhes da ferramenta.

  6. Opcionalmente, adicione conhecimento e ferramentas que somente esse agente filho possa usar:

    • Na seção Conhecimento , selecione Adicionar e prossiga da mesma forma que quando você adiciona conhecimento ao agente principal.
    • Na seção Ferramentas , selecione Adicionar e prossiga da mesma forma que quando você adiciona ferramentas ao agente principal.
  7. Se você ainda não quiser que esse agente esteja ativo, desative Enabled. Você pode ativar o agente de seu filho mais tarde.

  8. Clique em Salvar.

Gerenciar entradas e saídas

Por padrão, um agente filho recebe uma tarefa de linguagem natural para realizar do agente principal quando o agente a chama. Quando conclui sua tarefa, retorna um resumo em linguagem natural do que aconteceu durante sua execução. Em alguns casos, você pode querer especificar valores de entrada e saída mais explícitos para o agente.

Configurar dados e coleta de dados

  1. Na página de agentes do seu agente parental, selecione seu agente infantil.

  2. Role até a seção de Entradas .

  3. Para adicionar uma entrada, selecione Adicionar Entrada. Defina um Nome de exibição e uma Descrição, que ajudam o agente a entender o propósito da entrada para que ele possa preencher a entrada com um valor relevante ao chamar esse agente.

  4. Selecione um Tipo de dados.

  5. Como opção, selecione Tornar esta entrada necessária para exigir que a entrada tenha um valor antes que o agente possa ser chamado.

  6. Clique em Salvar.

Configurações avançadas de entrada

Selecione Avançado para expandir a seção e veja as outras configurações que você pode configurar para a entrada.

Configurações avançadas incluem as seguintes configurações relacionadas a como o agente preenche o valor de entrada ao chamar o agente filho:

  • Deve solicitar ao usuário: Se essa configuração estiver ativada, o agente solicita explicitamente ao usuário final um valor para a entrada caso o agente não consiga encontrar o valor no contexto disponível. Isso é útil quando você quer garantir que o agente receba um valor para essa entrada, mesmo que o agente que chama não forneça um ou não tenha contexto relevante para preenchê-la. Quando essa configuração é ativada, o agente filho gera um prompt para pedir ao usuário as informações necessárias, o que pode ajudar a melhorar a precisão da resposta do agente.
  • Prompt - Personalizar: Selecione para personalizar uma redação específica do prompt para coleta e um controle mais determinístico.
  • Quantos reprompts: Especifique quantas vezes o agente deve pedir ao usuário um valor para essa entrada caso o valor fornecido não seja válido. Isso é útil para garantir que o agente receba um valor válido para essa entrada. Você pode selecionar até dois reprompts.
  • Solicitação de repetição - Personalizar: Selecione para personalizar a formulação específica da solicitação de repetição quando o valor fornecido não satisfizer as condições especificadas, para um controle mais preciso.
  • Condição: Especifique condições que a entrada fornecida precisa satisfazer para serem consideradas válidas.
  • Prompt de condição não cumprida: Personalize uma redação específica do prompt para pedir ao usuário um valor diferente quando o valor fornecido não satisfaz as condições especificadas.
  • Ação se nenhuma entidade for encontrada: Especifique a ação que o agente deve realizar se ele não conseguir encontrar um valor para essa entrada no contexto disponível ou em prompting. Selecione se deseja escalar, definir a variável para um valor específico ou deixar o valor vazio.
  • Mensagem de nenhuma entidade encontrada: Se você optar por fazer o agente escalar quando nenhum valor for encontrado para essa entrada, personalize a mensagem que o agente envia ao usuário.

Configurar saídas de agentes filhos e comportamento de conclusão

Em Saídas, você pode configurar os valores de saída que seu agente filho retorna ao agente pai quando ele termina. Você também pode configurar o comportamento do agente pai depois que o agente filho terminar.

Configurar o comportamento do agente principal após a conclusão da tarefa do agente secundário

Você pode especificar o comportamento do agente pai após o agente filho finalizar a execução em Após a execução na seção Saídas:

  • Não responda: Por padrão, o agente pai prossegue com a próxima etapa do seu plano de orquestração depois que o agente filho termina e retorna quaisquer resultados ao agente pai. Você também pode escolher que o agente pai envie uma mensagem ao usuário logo após o agente filho terminar, antes de prosseguir para a próxima etapa do plano de orquestração, selecionando uma das outras opções.
  • Escreva a resposta com IA generativa: O agente pai envia uma mensagem ao usuário com uma resposta de IA generativa imediatamente após o término do agente filho, usando as saídas do agente filho como contexto para a resposta.
  • Enviar resposta específica: O agente pai envia ao usuário uma mensagem específica imediatamente após o agente filho terminar, independentemente das saídas desse agente. Ao selecionar essa opção, você pode personalizar o conteúdo da mensagem.
  • Envie um cartão adaptativo: O agente pai envia um cartão adaptativo ao usuário imediatamente após o agente filho finalizar. Ao selecionar essa opção, você pode personalizar o conteúdo adaptativo do cartão.

Configurar saídas

  1. Vá aos detalhes do agente filho.

  2. Role até a seção Saídas.

  3. Para ver a lista atual de saídas, expanda a seção Avançada dentro da seção Saídas.

  4. Para adicionar uma saída, selecione Adicionar Saída. Defina um Nome de exibição e uma Descrição, que ajudam o agente a entender o propósito da saída para que ele possa preencher a entrada com um valor relevante ao retornar valores para o agente de chamada.

  5. Selecione um Tipo de dados.

  6. Clique em Salvar.

Na seção Saídas, você também pode optar por enviar uma mensagem ao usuário imediatamente após o seu agente subordinado ser executado. Para enviar a mensagem, altere a seleção Após a execução.

Determine quando usar seu agente

Por padrão, os agentes filhos respondem a uma consulta do usuário com base em sua descrição. Você também pode configurar agentes filhos para interceptar outros eventos e responder a eles em Quando isso será usado?.

Evento Descrição
Uma mensagem foi recebida É acionado quando uma mensagem de atividade, o tipo de atividade mais comum, é recebida. Recebido quando um usuário digita ou diz algo ao agente. Por padrão, o agente responde a qualquer mensagem. Para limitar a resposta do agente a um tipo específico de mensagem, use a lista de tipos de atividade em detalhes adicionais.
Ocorre um evento de cliente personalizado Chamado quando uma atividade de evento é recebida. Por padrão, o agente responde a qualquer evento. Para limitar a resposta do agente a um evento específico, use a propriedade Nome do evento em detalhes adicionais.
Uma atividade ocorre É chamado quando qualquer tipo de atividade é recebida. Para limitar a resposta do agente a um tipo específico de atividade, use a lista de tipos de atividade em detalhes adicionais.
A conversa é alterada Chamado quando uma atividade de atualização de conversa é recebida. Por exemplo, o Teams envia uma atividade desse tipo quando um usuário entra em uma conversa.
É invocado Chamado quando uma atividade de invocação é recebida. Geralmente é recebido do canal do Teams, por exemplo, quando o usuário interage com uma mensagem ou extensão de pesquisa no Teams.
É redirecionado para Chamado quando o agente é chamado explicitamente de dentro de um tópico.
O usuário está inativo por enquanto Chamado quando o usuário não interage com o agente principal após um período configurado. Selecione o limite de inatividade desejado da lista de duração de inatividade sob Detalhes adicionais.
Um plano completa Chamado quando o agente principal termina de executar todas as etapas planejadas para responder a uma consulta do usuário ou a um gatilho autônomo.
Uma resposta gerada por IA está prestes a ser enviada Chamado quando o agente principal gera uma resposta para um usuário após chamar um ou mais tópicos, ferramentas ou fontes de conhecimento. Use a variável do Response.FormattedText sistema para ver a resposta gerada. Defina a variável ContinueResponse como falsa se quiser evitar que a resposta de orquestração seja enviada (isto é, se você modificar a mensagem e enviar a sua própria usando um nó de Message).

Outros detalhes

Dependendo da seleção de Quando isso será usado?, mais propriedades poderão estar disponíveis. As seguintes propriedades estão sempre disponíveis.

Condição

Especifique condições que devem ser atendidas para que o agente seja chamado. Por exemplo, talvez você queira que o agente seja chamado somente se o canal usado por um colaborador for Microsoft Teams.

Screenshot de uma condição para limitar o escopo de um agente filho ao canal do Microsoft Teams.

Se precisar de condições mais complexas, você poderá alternar para o editor de fórmulas Power Fx: selecione Construtor e Fórmula.

Captura de tela mostrando a opção de ir até o editor de fórmulas.

Prioridade

Mais de um agente pode ser ativado para uma única atividade recebida, como uma mensagem. Por padrão, a opção selecionada para Quando isso será usado? Determina a ordem em que os agentes serão acionados.

Os agentes filho e os tópicos compartilham o mesmo conjunto de gatilhos ou eventos aos quais podem responder. Se um agente e um tópico estiverem configurados para responder ao mesmo evento, como inatividade do usuário, use a propriedade de prioridade para determinar qual deles é o primeiro.

Ordem de execução:

  1. Uma atividade ocorre
  2. Uma mensagem é recebida / Ocorre um evento personalizado do cliente / A conversa é alterada / Ela é invocada
  3. O agente escolhe

Se vários agentes ou tópicos precisam ser chamados com base no mesmo tipo de evento, eles são chamados na ordem de criação (o mais antigo primeiro).

Você pode definir a propriedade Priority explicitamente. Um número menor indica uma prioridade mais alta.

Uso de agentes e ferramentas crianças

Agentes do Copilot Studio que utilizam orquestração generativa têm limitações no número máximo e recomendado de ferramentas que podem utilizar. Para mais informações, consulte Limitações de ferramentas em agentes.

Quando um agente filho é chamado, ele usa suas próprias ferramentas e conhecimento para responder ao usuário ou evento. Como os agentes filhos têm sua própria orquestração, eles têm seus próprios limites quanto ao número de ferramentas, distintos dos limites do agente pai.

O limite separado é um dos benefícios de usar agentes filhos: você pode agrupar logicamente ferramentas e conhecimento em agentes menores que focam em tarefas específicas, sem impactar os limites gerais do agente principal. No entanto, há um compromisso na latência adicionada pela camada adicional de orquestração.