Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Testar é essencial para garantir que os agentes personalizados no Kit do agente do Copilot respondam e se comportem conforme esperado. Este artigo explica como criar, gerenciar e validar diferentes tipos de testes, incluindo cenários de várias rodadas. Você também pode realizar operações em massa com o Excel e duplicar conjuntos de teste.
Tipos de teste
Crie vários diversos tipos de testes para validar os agentes.
| Tipo de Teste | descrição |
|---|---|
| Correspondência de Resposta | Este é o tipo mais simples de teste. Ele compara a resposta do agente com a resposta esperada usando o operador de comparação selecionado. Por padrão, a correspondência exata ("igual a") é usada. Outros operadores de comparação disponíveis são: "Não é igual a", "Contém", "Não contém", "Começa com", "Não começa com", "Termina com" e "Não termina com". |
| Anexos (como Cartões Adaptáveis) | Compara a resposta JSON de anexos do agente com os anexos esperados JSON (matriz completa de anexos). Por padrão, a correspondência exata ("igual a") é usada. Outros operadores de comparação disponíveis são "Não é igual a", "Contém" e "Não contém". Um operador de comparação especial chamado "Validação de IA" usa modelos de linguagem para validar o anexo com base em instruções de validação fornecidas pelo criador, semelhante a respostas generativas. |
| Correspondência de Tópico |
Só disponível quando o enriquecimento do Dataverse (Enriquecer com Transcrições de Conversa) está configurado. Quando a etapa de enriquecimento do Dataverse é concluída, esse teste compara o nome do tópico esperado com o nome do tópico disparado. O teste de Correspondência de Tópico também dá suporte à correspondência de vários tópicos com agentes personalizados que tenham a orquestração generativa habilitada. Na correspondência de vários tópicos, os tópicos são separados por vírgulas; por exemplo: "Topic1,Topic2". |
| Respostas Generativas |
Só disponível se o enriquecimento do AI Builder (analisar respostas geradas) estiver configurado. Usa um grande modelo de linguagem para avaliar se a resposta gerada por IA está próxima de uma resposta de amostra ou segue instruções de validação. Quando Enriquecer com Aplicativo Azure Insights estiver configurado, testes negativos, como moderação ou ausência dos resultados da pesquisa, também poderão ser testados. Saiba mais em Usar rubricas em testes. |
| Várias rodadas | Consiste em um ou mais casos de teste de outros tipos, como correspondência de respostas, anexos, correspondência de tópicos e respostas generativas. Todos os testes filho em um teste de várias rodadas são executados no mesmo contexto de conversa na ordem especificada. Use testes com várias rodadas para testar um cenário de ponta a ponta e testar agentes personalizados com orquestração generativa. Saiba mais em Teste de várias rodadas. |
| Validação do Plano | Permite ao criador validar se o plano dinâmico do agente personalizado inclui as ferramentas esperadas. Esse tipo de teste se destina a agentes personalizados do Copilot Studio que tenham orquestração generativa habilitada. Saiba mais em Testes de validação do plano. |
Criar um novo conjunto de testes
Use conjuntos de testes para agrupar vários testes. Ao executar testes, selecione um conjunto de testes para executar todos os testes desse conjunto.
- Acesse o aplicativo Kit do agente do Copilot.
- Vá até Conjuntos de Testes.
- Crie um novo registro do conjunto de testes do agente.
- Insira um Nome.
- Selecione Salvar.
Criar um teste
Depois de criar um conjunto de testes, adicione testes a ele. Na subgrade Testes, selecione + Novo Teste de Agente.
A tabela a seguir descreve os campos.
| Nome da coluna | Obrigatório | Descrição |
|---|---|---|
| Nome | Sim | Nome do teste. Esse nome pode ser um ID de referência interno, como TST-001. |
| Conjunto de Testes do Agente | Sim | Conjunto de testes pai para o teste. |
| Tipo de Teste | Sim | Um dos tipos de teste disponíveis. |
| Enviar Evento startConversation | Não | Se habilitado, o agente recebe o evento startConversation, de maneira que ele inicia a conversa proativamente, e o enunciado do teste é enviado depois. Essa configuração costuma ser necessária quando o tópico Início da Conversa inclui lógica que deve ser executada antes de responder ao usuário ou ao enunciado de teste. |
| Posição Esperada da Mensagem de Resposta | Não | Não defina um valor se você não tiver certeza. Essa opção permite a você capturar uma resposta do agente específica quando ele envia várias mensagens. Por exemplo, se o agente primeiro disser "Olá" e, depois, "Como posso ajudar?", e você quiser testar a segunda mensagem, defina o valor como 1. A ordem se baseia em 0, logo, a primeira mensagem é indexada como 0, a segunda resposta como 1, e assim por diante. |
| Enunciado de Teste | Sim | A mensagem que você deseja enviar ao agente como parte do teste. |
| Resposta Esperada | Depende | Obrigatório para o tipo de teste Correspondência de Resposta. Resposta esperada do agente. Para um teste de Respostas Generativas, defina uma resposta de amostra ou as próprias instruções de validação para o modelo de linguagem de grande. |
| JSON de Variáveis Externas | Não | Registro JSON de qualquer valor externo ou contextual que você queira passar para o agente como parte do teste. Por exemplo: { "Language": "fr" } |
| Segundos Antes de Receber a Resposta | Não | Número de segundos para esperar antes de avaliar a resposta do bot. Na maioria dos casos, você pode deixar esse valor vazio, embora seja útil em situações nas quais o agente chama uma API e a resposta pode demorar mais do que o normal. |
| Resultado das Respostas Generativas Esperado | Depende | Obrigatório para o tipo de teste de Respostas Generativas. Deve ser Respondido ou Não Respondido. Quando o enriquecimento do Aplicativo Azure Insights está habilitado, você pode escolher Moderado ou Sem Resultados da Pesquisa. |
| Nome do Tópico Esperado | Depende | Obrigatório para o tipo de teste Correspondência de Tópico. Nome do tópico que você espera que seja disparado. É oferecido suporte à correspondência de múltiplos tópicos para agentes personalizados que têm a orquestração generativa habilitada. Para correspondência com vários tópicos, use uma lista separada por vírgulas; por exemplo: "Tópico1,Tópico2". Não adicione espaço em branco extra. A correspondência com vários tópicos garante que os tópicos esperados estejam entre os tópicos do plano. |
| JSON de Anexos Esperados | Depende | Obrigatório para o tipo de teste de Anexos (Cartões Adaptáveis, etc.). Matriz JSON de anexos completa que você espera da resposta do agente. |
| Ferramentas Esperadas | Depende | Obrigatório para o tipo de teste de Validação do Plano. Lista separada por vírgulas das ferramentas esperadas (ferramentas, ações e agentes conectados). Não adicione espaço em branco extra. A ordem não é relevante. Exemplo: "Tempo,Mudança Climática" |
| % do Limite de Aprovação | Depende | Obrigatório para o tipo de teste de Validação do Plano. A porcentagem de ferramentas esperadas que devem estar no plano dinâmico para que o teste seja aprovado. Se a porcentagem for 100, todas as ferramentas esperadas precisarão estar no plano dinâmico para que o teste seja aprovado. As ferramentas extras no plano dinâmico não afetam o resultado do teste. |
Teste de várias rodadas
Para o tipo de teste de Várias rodadas, você pode especificar um ou mais testes filho dos tipos regulares. Cada teste filho tem uma ordem e uma criticidade. A ordem define a ordem de execução dentro do mesmo contexto de conversa (dentro do caso de teste de várias rodadas). A criticidade define se o caso de teste filho deve ser aprovado para que a execução do teste de várias rodadas continue.
Se um teste filho exigir avaliação pós-teste, como Correspondência de Tópicos ou Respostas Generativas, o teste ficará em um estado pendente, e a execução do teste continuará independentemente do status de criticidade. Se algum dos testes críticos tiver falha, a execução do teste com várias rodadas será interrompida e o resultado será considerado com falha. Se todos os casos de teste filho críticos forem bem-sucedidos, o resultado de várias rodadas também será bem-sucedido.
Use casos de teste não críticos de filhos para "alimentar" informações a agentes personalizados com orquestração generativa. Você também pode usar esses casos de teste quando a resposta não importa e quiser avançar para testes críticos.
Testes de validação do plano
A validação do plano se concentra na correção da ferramenta. Em vez de avaliar o que o agente diz, esse tipo de teste verifica se as ferramentas esperadas foram usadas durante o plano.
Ao definir um teste de validação do plano, especifique:
- Um enunciado de teste
- Uma lista separada por vírgulas de ferramentas esperadas a serem incluídas no plano dinâmico
- Um limite de aprovação, que representa quanto desvio tolerar em relação à lista
Este teste usa transcrições de conversa e será avaliado depois da execução do teste real como uma atividade de enriquecimento.
Tenha os seguintes aspectos em mente:
Ferramentas esperadas: inclua ferramentas, ações e agentes conectados na lista separada por vírgulas. Não adicione espaço em branco extra. A ordem não importa.
% do limite de aprovação: o limite de aprovação especifica a porcentagem necessária das ferramentas esperadas que deve estar no plano dinâmico para que o teste tenha êxito.
A validação do plano é um teste determinístico: calcula o desvio das ferramentas reais em relação às esperadas e compara com o limite de aprovação. Se o desvio estiver dentro do limite, o teste será aprovado. Caso contrário, terá falha.
Saiba mais em Orquestrar o comportamento do agente com a IA generativa.
Testar agentes que requerem autorização do conector
Quando um agente usa uma fonte de dados externa, como o SharePoint ou o Dataverse, a primeira conversa normalmente apresenta um cartão de autorização "Conectar para continuar". O usuário deve selecionar Permitir antes que o agente possa chamar o conector. Para exercitar esse fluxo em um teste automatizado, modele o prompt e a resposta do usuário como dois testes filho dentro de um teste com várias rodadas.
Observação
Essa é uma configuração única por conjunto de teste. Depois que a conexão for autorizada para o usuário do teste, não será necessário repetir as etapas de autorização em testes posteriores.
O teste de várias rodadas contém dois testes filho ordenados:
| Ordem | Tipo de teste | Tipo de operação | Finalidade |
|---|---|---|---|
| 1 | Anexos (Cartões Adaptáveis etc.) | Operador de Comparação | Envia o enunciado que desencadeia o conector e a afirma no JSON do cartão de autorização. |
| 2 | Anexos (Cartões Adaptáveis etc.) | Invocar Ações | Envia Permitir no cartão de autorização para que o agente possa concluir a chamada. |
Para criar um teste:
No seu conjunto de testes, selecione + Novo Teste de Agente, insira um nome, defina Tipo de Teste como Várias rodadas e selecione Salvar.
Na grade filho do teste de várias rodadas, selecione + Novo Teste de Agente e configure o primeiro teste filho:
Campo Valor Tipo de Teste Anexos (Cartões Adaptáveis etc.) Ordenar 1 Enunciado do teste O enunciado que desencadeia o conector, por exemplo List Fourth Coffee Brands.Tipo de operação Operador de Comparação Operador de Comparação Igual a JSON de Anexos Esperados [](espaço reservado — você substitui isso após a primeira execução)Selecione Salvar Teste.
Salve o conjunto de testes e execute-o. O primeiro teste filho tem falha como esperado, porque o JSON do espaço reservado não corresponde ao cartão de autorização.
Abra os resultados da execução do teste, selecione o teste filho de várias rodadas, localize a seção Anexos e copie o JSON do Anexo Real para a área de transferência.
Edite o primeiro teste filho, cole o JSON copiado no JSON de Anexos Esperados e selecione Salvar Teste.
Na grade filho do teste de várias rodadas, selecione + Novo Teste de Agente novamente e configure o segundo teste filho:
Campo Valor Tipo de Teste Anexos (Cartões Adaptáveis etc.) Ordenar 2 Tipo de operação Invocar Ações Conteúdo do Cartão Adaptável {"action": "Allow", "id": "submit", "shouldAwaitUserInput": true}Operador de Comparação Contém dados (ou Igual a, dependendo da resposta que você deseja afirmar) Resposta Esperada Deixe em branco, ou defina com base nos dados que você espera depois que a conexão for permitida. Os valores do conteúdo vêm do JSON do Cartão Adaptável que você capturou na etapa 4. Ajuste os campos
actioneidse o cartão do conector usar identificadores diferentes.Selecione Salvar Teste.
Salve o conjunto de testes e execute-o novamente. Ambos os testes filho agora devem ser aprovados.
Após esse teste de várias rodadas ser executado com êxito uma vez, a conexão será autorizada para o usuário de teste, e testes subsequentes em relação ao mesmo conector poderão ser feitos como testes regulares de uma rodada.
Usar o Excel para criar ou atualizar testes em massa
Depois de criar um conjunto de testes, você poderá usar o Excel para criar ou atualizar testes em massa.
- No registro do conjunto de testes, mude a exibição de subgrade de Testes para Exportar/Importar Exibição.
- Selecione Exportar Testes de Agente no Excel Online.
- Adicione e modifique testes conforme necessário.
- Selecione Salvar.
Se você estiver importando testes filho de várias rodadas, primeiro deverá criar ou importar o teste de várias rodadas pai. Em seguida, importe os casos de teste filho.
Saiba mais em Importação e exportação do Excel em aplicativos baseados em modelo do Power Apps.
Duplicar testes e conjuntos de testes
Você pode duplicar conjuntos de testes e testes individuais.
Para duplicar um único caso de teste, abra o registro de teste do agente e selecione Duplicar Caso de Teste. Essa ação é útil quando você cria variantes de um caso de teste, como alteração do local, do horário ou da quantidade.
Para duplicar um conjunto de testes inteiro, abra o registro do conjunto de testes e selecione Duplicar Conjunto de Testes na barra de comandos. Essa ação cria uma cópia do conjunto de testes e de todos os seus testes filho.