Retornar uma lista de resultados
É comum pedir a um agente que procure dados em um sistema externo e retorne uma lista de resultados. Para fazer isso, um agente pode chamar um fluxo do Power Automate para:
- Autenticar e conectar-se a uma solução externa.
- Execute uma consulta com base na entrada do usuário.
- Formatar os resultados.
- Retornar os resultados ao agente.
Este exemplo usa o conector do Dataverse no Power Automate para procurar contas. O conector retorna uma lista de resultados que inclui o nome da conta, a cidade e o número da conta para o agente.
Pré-requisitos
- Entenda como criar um fluxo na tela de criação do Copilot Studio
- Usar variáveis de entrada e saída para passar as informações
- Configure a pesquisa do Dataverse para o seu ambiente
Configurar uma tabela Contas do Dataverse
A tabela Conta é uma tabela padrão disponível por padrão em ambientes do Power Platform. No entanto, ela não vem com dados da conta. Antes que seu agente possa pesquisar contas, você deve preencher a tabela Conta.
Se você já tem uma tabela Conta com dados, pule esta etapa e vá para Criar um tópico. No entanto, lembre-se de usar termos de pesquisa relevantes para seus dados ao testar seu agente em etapas posteriores.
Acesse o portal do Power Apps.
No painel de navegação, selecione Tabelas.
Selecione a tabela Conta e, na página de propriedades da tabela, selecione Editar.
Adicione as seguintes linhas à tabela:
Endereço 1: Cidade Nome da Conta Número da Conta Seattle Contoso Inc AC0125 São Francisco Contoso Residences AC0255 Olympia Entrega de Refeições da Contoso AC0035
Criar um tópico
No Copilot Studio, acesse a página Tópicos de seu agente.
Crie um tópico chamado Pesquisa de conta.
Adicione as seguintes frases de gatilho:
- Procuro um cliente
- Procuro uma conta
- Pesquisar conta
- Pesquisar cliente
Adicione um nó de Mensagem e digite a mensagem "Parece que você está procurando uma conta. Eu posso procurar isso para você."
Adicione um nó de Pergunta e insira a mensagem "Qual é o nome do cliente que você está procurando?"
Em Identificar, selecione Organização.
Toda a resposta do usuário também funcionaria. No entanto, ao selecionar a entidade Organização, você aproveita os recursos de reconhecimento vocal do agente para extrair o nome da organização da resposta.
Para Salvar resposta do usuário como, renomeie a variável para "organização".
Criar um fluxo
Selecione o ícone Adicionar nó
abaixo de qualquer nó e selecione Adicionar uma ação.
Na guia Ações básicas, selecione Novo fluxo do Power Automate.
No Power Automate, selecione o nome do fluxo e substitua-o por Pesquisar conta.
Selecione o gatilho de fluxo Executar um fluxo do Copilot e adicione um parâmetro de entrada de Texto chamado Organização.
Selecione o ícone Adicionar abaixo do gatilho do fluxo Executar um fluxo do Copilot.
Em Adicionar uma ação, procure "Microsoft Dataverse" e selecione a ação Pesquisar linhas.
Esta ação usa correspondência difusa para encontrar contas relevantes na tabela Contas do Dataverse.
Na caixa Termo de pesquisa insira uma barra (
/
), selecione Inserir conteúdo dinâmico e escolha seu parâmetro de entrada da Organização.Para Parâmetros avançados, selecione Mostrar tudo e defina os seguintes valores:
-
Item de filtro de tabela:
account
-
Classificar por item - 1:
search.score desc
-
Classificar por item - 2:
name asc
-
Item de filtro de tabela:
Formatar resultados
A ação Pesquisar linhas retorna a variável Lista de linhas, que contém dados JSON. Antes de usar os dados, você deve analisá-los com a ação Analisar JSON.
Selecione o ícone Adicionar abaixo da ação Pesquisar linhas.
Em Adicionar uma ação, procure por "Operação de Dados" e selecione a ação Analisar JSON.
Na caixa Conteúdo, insira uma barra (
/
), selecione Inserir conteúdo dinâmico e selecione Lista de linhas.Copie o esquema JSON a seguir e cole-o na caixa Esquema:
{ "type": "array", "items": { "type": "object", "properties": { "@@search.score": { "type": "number" }, "name": { "type": "string" }, "address1_city": { "type": "string" }, "accountnumber": { "type": "string" } }, "required": [ "name" ] } }
Selecione o ícone Adicionar abaixo da ação Analisar JSON.
Em Adicionar uma ação, procure por "Variável" e selecione a ação Inicializar variável.
Na caixa Nome, digite "ListOfAccounts".
Em Tipo, selecione Cadeia de Caracteres.
Selecione o ícone Adicionar abaixo da ação Inicializar variável.
Em Adicionar uma ação, procure por "Controle" e selecione a ação Aplicar a cada.
Na caixa Selecionar uma saída das etapas anteriores, insira uma barra (
/
), selecione Inserir conteúdo dinâmico e selecione a variável Corpo em Analisar JSON.Selecione o ícone Adicionar na ação Aplicar a cada.
Em Adicionar uma ação, procure por "Variável" e selecione a ação Acrescentar à variável de cadeia.
Em Nome, selecione ListOfAccounts.
Copie o seguinte texto e cole-o na caixa Valor:
- @{items('Apply_to_each')['accountnumber']}: @{items('Apply_to_each')['name']} - @{items('Apply_to_each')['address1_city']}
Adicione uma quebra de linha após o trecho para fazer com que cada resultado apareça em sua própria linha.
Na ação Responder ao Copilot, adicione uma saída de Texto.
Para Nome, digite "FoundAccounts".
Para o valor, insira uma barra (
/
) na caixa, selecione Inserir conteúdo dinâmico e selecione a variável ListOfAccounts.Salve e publique seu fluxo.
Chamar o fluxo do Copilot Studio
No Copilot Studio, selecione o ícone Adicionar nó
no nó de Pergunta, selecione Adicionar uma ação e, em seguida, selecione o fluxo criado anteriormente, Pesquisar conta.
Defina o parâmetro de entrada de fluxo para a variável de saída do nó Pergunta: Organization (String) obtém seu valor da variável organization.
Adicione um nó de Mensagem e insira a mensagem "Ok, isso é o que eu encontrei".
Adicione um segundo nó Mensagem. Selecione o ícone Inserir variável e selecione FoundAccounts.
Selecione Salvar.
Testar seu agente.