Treinamento e Teste de Intenções

O treinamento de um modelo com seu corpus de treinamento permite que seu bot identifique o que os usuários dizem (ou, em alguns casos, o que estão tentando dizer).

Você pode melhorar a adequação da cognição por meio de rodadas de testes e treinamento de intenções. Você controla o treinamento pelas definições de intenção sozinhas; a habilidade não pode aprender por conta própria pelo chat do usuário.

Testando Declarações

Recomendamos que você reserve 20% de seu corpus para teste de intenção e use os 80% restantes para treinar suas intenções. Mantenha esses dois conjuntos separados para que as declarações de teste, que você incorpora em casos de teste, permaneçam "desconhecidas" para sua habilidade.

Aplique a divisão 80/20 ao conjunto de dados de cada intenção. Randomize suas declarações antes de fazer essa divisão para permitir que os modelos de treinamento ponderem os termos e padrões das declarações igualmente.

O Testador de Declaração

O Testador de Declaração é sua janela para a cognição da sua habilidade. Ao digitar frases que não fazem parte do corpus de treinamento, você consegue descobrir se elaborou bem suas intenções revisando a classificação de confiança da intenção e o JSON retornado. Essa classificação, que é a estimativa da habilidade para o melhor candidato a resolver a entrada do usuário, demonstra sua precisão no momento atual.
Segue a descrição da declaração-tester-quick-test.png
Descrição da ilustração total-tester-quick-test.png

Usando o Testador de Declarações, você pode executar testes rápidos para testes únicos ou pode incorporar uma declaração como um caso de teste para avaliar a resolução de intenção em diferentes versões de modelos de treinamento.

Testes Rápidos

Para saber o quanto suas intenções funcionam:
  1. Clique em Testar Declarações (localizado no lado esquerdo).
  2. Se sua habilidade suportar vários idiomas nativos, escolha o idioma de teste. A escolha dessa opção garante que a declaração seja adicionada à versão do idioma correspondente do corpus. O idioma principal da habilidade é selecionado por padrão.
  3. Digite uma string de texto.
  4. Clique em Testar e examine a classificação e as entidades detectadas na declaração (se houver).
  5. Verifique as pontuações de Confiança da Intenção. (As barras de progresso de cada intenção listada serão verdes se atenderem ou excederem o Nível de Confiança ou vermelhas se falharem).
    Se o candidato primeiro classificado da sua habilidade não for o que você espera, pode ser necessário treinar novamente as intenções após um ou ambos os seguintes procedimentos:
    • Atualize o corpus do melhor candidato com o texto de entrada que você acabou de digitar — Selecione a intenção apropriada e clique em Adicionar à Intenção.

      Cuidado:

      Considere como a adição de uma nova frase de teste pode afetar os dados de treinamento. A adição de uma frase de teste pode alterar o modo como as declarações que são semelhantes a ela são classificadas após o novo treinamento. Além disso, a adição de uma frase de teste invalida o teste, porque a incorporação da frase no conjunto de treinamento garante que o teste seja bem-sucedido. Em vez de adicionar uma frase de teste aos dados do treinamento, salve-a como um caso de teste.
    • Na página Intenções, você pode editar uma declaração Editar (Esta é uma imagem do botão Editar.) ou removê-la. Uma intenção de FAQ, por exemplo, pode receber uma classificação superior por causa do escopo e da formulação de suas declarações constituintes. Se você não quiser que seus usuários tenham uma FAQ sempre que fizerem perguntas típicas, será necessário revisar o corpus.

    Treine novamente uma intenção sempre que adicionar, alterar ou excluir uma declaração. Treinamento Necessário Esta é uma imagem do indicador Treinamento Necessário. é exibido sempre que você faz uma alteração nos dados de treinamento.

  6. Se suas intenções não estiverem sendo resolvidas como esperado, você poderá expandir a janela JSON para rever as intenções, pontuações e entidades detectadas correspondentes no JSON retornado.
  7. Clique em Redefinir.

Casos de Teste

Cada teste tem uma declaração e a intenção para a qual se espera que ela seja resolvida, que é conhecida como correspondência de label. Um caso de teste também pode incluir valores de entidade correspondentes e o idioma esperado para a declaração. Você pode executar casos de teste quando estiver desenvolvendo uma habilidade e, posteriormente, quando a habilidade estiver em produção, poderá usar os casos de teste para teste de regressão. Nesse último, você pode executar casos de teste para descobrir se uma nova versão do modelo de treinamento afetou negativamente a resolução da intenção.

Como os casos de teste que você cria com o Testador de Conversa, os casos de teste de declaração fazem parte da habilidade e acompanham cada versão. Se você estender uma habilidade, a extensão herdará os casos de teste. Enquanto os casos de teste de conversa se destinam a testar um cenário, os casos de teste de declaração se destinam a testar fragmentos de uma conversa independentemente, garantindo que cada declaração seja resolvida com a intenção correta.

Gerenciar Casos de Teste

A página Casos de Teste, acessada clicando em Ir para Casos de Teste no Testador de Declaração, lista os suítes de teste e os casos de teste que pertencem a eles. Os conjuntos de testes podem ser aqueles que você criou ou que podem ter sido herdados de uma habilidade que você estendeu ou clonou. Além de editar, adicionar e remover casos de teste, você usa esta página para compilar casos de teste em execuções de teste. Por padrão, Tudo é selecionado, o que exibe todos os casos de teste. Se quiser restringir a exibição apenas aos casos de teste que pertencem a um único conjunto de testes, você poderá selecionar o conjunto de testes na lista de conjuntos de testes ou filtrar essa lista usando uma correspondência completa ou parcial do nome do conjunto de testes. A visualização da suíte de teste permite gerenciar os casos de teste do membro da suíte na guia Casos de Teste. Na guia Geral, você pode, além de atualizar o nome e a descrição da suíte de teste, excluir a suíte de teste de uma execução de teste desativando Ativar Suíte de Teste. Ao desativar Incluir na Exportação de Habilidades, você pode impedir que o conjunto de testes seja incluído na pasta nluTestSuites que armazena os conjuntos de testes da habilidade quando a habilidade é exportada.

Criar Suítes de Teste

Todos os casos de teste pertencem a um conjunto de testes. Fornecemos um para você chamado Conjunto de Testes Padrão, mas talvez você queira particionar seus testes criando seus próprios conjuntos de testes. Você pode criar suítes de teste manualmente ou importando um CSV. Para criar um conjunto de testes manualmente:
  1. Clique em + Suíte de Testes.
  2. Na guia Geral, substitua o nome do espaço reservado (TestSuite0001, por exemplo) por um mais significativo, adicionando um valor no campo Nome de Exibição.
  3. Opcionalmente, adicione uma descrição que explique a funcionalidade que é coberta pelo conjunto de testes.
  4. Preencha o conjunto de testes com casos de teste usando qualquer um (ou uma combinação de) os seguintes métodos:
    • Adicionar manualmente casos de teste (criando um caso de teste ou salvando uma declaração como um caso de teste no Testador de Declaração).
    • Importando casos de teste.
      Observação

      Para designar um caso de teste a uma suíte de teste por meio da importação, o campo testSuite do CSV pode estar vazio ou deve conter um nome que corresponda à suíte de teste selecionada na caixa de diálogo de importação.
    • Editando um caso de teste para reatribuir seu conjunto de testes.
  5. Se quiser excluir a suíte de teste das execuções de teste iniciadas usando as opções Tudo e Executar Tudo, desative Ativar Suíte de Teste.
  6. Se você não quiser que o conjunto de testes seja incluído na exportação de habilidades, desative Incluir na Exportação de Habilidades. Quando você desativar essa opção para um conjunto de testes, ela não será incluída na pasta nluTestSuites que armazena os conjuntos de testes da habilidade no arquivo ZIP exportado.

Criar Casos de Teste de Declaração

Você pode adicionar casos de teste um a um usando o Testador de Declaração ou a caixa de diálogo Novo Caso de Teste (acessada clicando em + Caso de Teste) ou pode adicioná-los em massa fazendo o upload de um CSV.

Each test case must belong to a test suite, so before you create a test case, you may want to first create a test suite that reflects a capability of the skill, or some aspect of intent testing, such as failure testing, in-domain testing, or out-of-domain testing.

Fornecemos um conjunto chamado Suíte de Teste Padrão. Você poderá designar casos de teste a essa suíte de teste se ainda não tiver criado qualquer outro. Posteriormente, você poderá editar o caso de teste para reatribuí-lo a um novo conjunto de testes.

Dica:

Para fornecer uma cobertura adequada em seu teste, crie declarações de suíte de teste que não sejam apenas variadas conceitualmente, mas também gramaticalmente, pois os usuários não farão solicitações de maneira uniforme. Você pode adicionar essas dimensões criando suítes de teste com base na mensagem do usuário real que foi consultada no Retrainer de Insights e também com base na entrada de origem coletiva reunida no Data Manufacturing.

Adicionar Casos de Teste do Testador de Declaração

Além de adicionar declarações ao corpus de treinamento, você pode usar a página Teste Rápido para criar um caso de teste:
  1. Clique em Testar Declarações.
  2. Se a habilidade for multilíngue, selecione o idioma nativo.
  3. Digite a declaração e clique em Testar.
  4. Clique em Salvar como Caso de Teste e escolha uma suíte de teste.

Criar um Caso de Teste

Para criar um único caso de teste:
  1. Clique em Ir para Casos de Teste no Testador de Declaração.
  2. Clique em + Caso de Teste.
  3. Preencha a caixa de diálogo Novo Caso de Teste:
    • Se necessário, desative o caso de teste.
    • Digite a declaração de teste.
    • Selecione a suíte de teste.
    • Selecione a intenção esperada. Se você estiver criando um caso de teste para teste de falha, selecione unresolvedIntent.
    • Para habilidades multilíngues, selecione a tag de idioma e o idioma esperado.
  4. Clique em Adicionar à Suíte. Na página Casos de Teste, você pode excluir um caso de teste ou editar um caso de teste, o que inclui reatribuir o caso de teste a um conjunto de testes diferente.

  5. Para testar os valores de entidades:
    • Ative Testar Entidades. Clique em Continuar.
    • Destaque a palavra (ou palavras) e, em seguida, aplique um rótulo de entidade a ela selecionando uma entidade na lista. Quando terminar, clique em Adicionar à Suíte.
      Observação

      Sempre selecione palavras ou frases na declaração do caso de teste depois de ativar Entidades de Teste. O caso de teste falhará se você tiver ativado Entidades de Teste, mas não tiver destacado nenhuma palavra.


Importar Casos de Teste de Suítes de Teste no Nível da Habilidade

Na página Casos de Teste (acessada ao clicar em Ir para Casos de Teste no Testador de Declarações), você pode adicionar suítes e seus casos em massa fazendo upload de um arquivo CSV que tenha os seguintes campos:
  • testSuite – O nome do conjunto de testes ao qual o caso de teste pertence. O campo testSuite em cada linha do CSV pode ter um nome de conjunto de testes diferente ou pode estar vazio.
    • Casos de teste com campos testSuite vazios são adicionados a um conjunto de testes que você seleciona quando importa o CSV. Se você não selecionar um conjunto de testes, ele será atribuído ao Conjunto de Testes Padrão.
    • Casos de teste com campos testSuite preenchidos são atribuídos ao conjunto de testes que você seleciona quando importa o CSV somente quando o nome do conjunto de testes selecionado corresponde ao nome no campo testSuite.
    • Se um conjunto de testes com o nome do especificado no campo testSuite ainda não existir, ele será criado depois que você importar o CSV.
  • utterance – Um exemplo de declaração (obrigatório). Mapeado para query nas versões anteriores à 21.04 do Oracle Digital Assistant.
  • expectedIntent – A intenção de correspondência (obrigatória). Este campo é mapeado para TopIntent nas versões anteriores à 21.04 do Oracle Digital Assistant.

    Dica:

    Importar versões pré-21.04 do CSV informa como reformatar CSVs pré-21.04 para que você possa usá-los para testes em massa.
  • enabledTRUE inclui o caso de teste na execução do teste. FALSE o exclui.
  • languageTag – A tag de idioma (en, por exemplo). Quando não há valor, o idioma detectado nas definições de idioma da habilidade é usado por padrão.
  • expectedLanguageTag (opcional) – Para habilidades multilíngues, esta é a tag de idioma para o idioma que você deseja que o modelo use ao resolver a declaração de teste para uma intenção. Para que o caso de teste seja aprovado, essa tag deve corresponder ao idioma detectado.
  • expectedEntities – As entidades correspondentes na declaração do caso de teste, representadas como um array de objetos entityName. Cada entityName identifica a posição do valor da entidade na declaração usando as propriedades beginOffset e endOffset. Esse deslocamento é determinado por caractere, não por palavra, e é calculado a partir do primeiro caractere da declaração (0-1). Por exemplo, o objeto entityName para o valor de entidade PizzaSize de pequeno em Quero pedir uma pizza pequena é:
    [{"entityName":"PizzaSize","beginOffset":18,"endOffset":23,"originalString":"small"}, …]


Para importar este CSV:
  1. Clique em Mais e selecione Importar.
  2. Navegue até e selecione o CSV.
  3. Escolha a suíte para teste. O caso de teste só poderá ser designado ao conjunto de testes selecionado se o campo testSuite estiver vazio ou corresponder ao nome do conjunto de testes selecionado.
  4. Clique em Fazer Upload.
Importando versões anteriores à versão 21.04 do CSV
Casos de teste importados por meio das versões anteriores à 21.04 de CSVs, que têm os campos query e TopIntent, só são adicionados ao Conjunto de Testes Padrão. Você pode reatribuir esses casos de teste a outros conjuntos de testes individualmente editando-os depois de importar o CSV ou pode atualizar o CSV para o formato atual e, em seguida, editá-lo antes de importá-lo da seguinte forma:
  1. Clique em Mais > Importar.
  2. Depois que a importação for concluída, selecione Suíte de Teste Padrão e clique em Mais > Exportar Suíte Selecionada. O arquivo exportado será convertido para o formato atual.
  3. Extraia o arquivo ZIP e edite o CSV. Quando terminar, importe o CSV novamente ( Mais > Importar). Talvez seja necessário excluir casos de teste duplicados do Conjunto de Testes Padrão.
    Observação

    Se você fazer upload do mesmo CSV várias vezes com pequenas alterações, todos os dados novos ou atualizados serão mesclados com os antigos: novas atualizações são aplicadas e novas linhas são inseridas. No entanto, não será possível excluir qualquer declaração fazendo upload de um novo CSV. Se precisar excluir declarações, você precisará excluí-las manualmente da interface do usuário.

Criar Execuções de Teste

Execuções de teste são uma compilação de casos de teste ou conjuntos de testes destinados a avaliar algum aspecto da cognição da habilidade. O conteúdo (e o volume) de uma execução de teste depende da capacidade que você deseja testar, portanto, uma execução de teste pode incluir um subconjunto de casos de teste de um conjunto de testes, um conjunto de testes completo ou vários conjuntos de testes.

Os casos de teste incluídos em uma execução de teste são avaliados em relação ao limite de confiança definido para a habilidade. Para que um caso de teste seja aprovado na execução geral do teste, ele deve ser resolvido com a intenção esperada no limite de confiança ou acima dele. Se especificado, o caso de teste também deverá atender aos critérios de correspondência de idioma e valor da entidade. Ao analisar os resultados da execução do teste, você pode descobrir se as alterações feitas à plataforma e à própria habilidade comprometeram a precisão da resolução da intenção.

Além de testar o modelo, você também pode usar os resultados da execução do teste para avaliar a confiabilidade do teste. Por exemplo, os resultados que mostram que quase todos os casos de teste passaram podem, na superfície, indicar o funcionamento ideal do modelo. No entanto, uma revisão dos casos de teste de aprovação pode revelar que os casos de teste não refletem o treinamento atual porque suas declarações são muito simples ou têm sobreposição significativa em termos dos conceitos e palavrões que estão testando. Um grande número de testes com falha, por outro lado, pode indicar deficiências nos dados de treinamento, mas uma revisão desses casos de teste pode revelar que suas declarações são pareadas com as intenções esperadas erradas.

Para criar uma execução de teste:
  1. Clique em Executar Tudo para criar uma execução de teste de todos os casos de teste em uma suíte selecionada. (Ou se quiser executar todas as suítes de teste, selecione Tudo e clique em Executar Tudo).

  2. Insira um nome de execução de teste que reflita o assunto do teste. Esta etapa é opcional.
  3. Clique em Iniciar

  4. Clique em Testar Resultados e selecione a execução de teste.

    Dica:

    Execuções de teste que contêm um grande número de casos de teste podem levar vários minutos para serem concluídas. Para essas grandes execuções de teste, talvez você precise clicar em Atualizar periodicamente até a conclusão do teste. Uma porcentagem substitui o status Em Andamento para a métrica Precisão e o relatório Intenções é renderizado após todos os casos de teste terem sido avaliados.


  5. Examinar os relatórios de execução de teste. Por exemplo, primeiro revise as métricas de alto nível da execução de teste fornecidas pelo relatório de Visão Geral. Em seguida, valide os resultados do teste em relação aos casos de teste reais filtrando o relatório Casos de Teste, que lista todos os casos de teste incluídos na execução do teste, para casos de teste aprovados e com falha. Em seguida, você pode examinar os resultados individuais do caso de teste. Você também pode comparar a pontuação de Precisão no relatório Visão Geral com a pontuação de Precisão no relatório de Intenções, que mede a capacidade do modelo de prever as intenções corretas. Para revisar os casos de teste listados neste relatório, abra o relatório Casos de Teste e filtre por intenções.

Relatório Resumo Exec Teste

O relatório Resumo fornece uma avaliação geral de como o modelo pode tratar com sucesso o tipo de entrada do usuário que é abordado na execução do teste. Para os conjuntos de testes incluídos na execução de teste, ele mostra o número total de casos de teste que foram usados para avaliar o modelo e, desse total, o número de casos de teste (confiáveis e não confiáveis) que falharam junto com o número de casos de teste confiáveis e não confiáveis que passaram. A precisão geral do modelo - sua capacidade de prever intenções esperadas no nível de confiança da habilidade ou acima dela, reconhecer valores de entidade e resolver declarações no idioma da habilidade - é medida pela taxa de sucesso dos testes de aprovação na execução do teste.
Descrição da ilustração test-run-test-results-summary.png a seguir
Descrição da ilustração test-run-test-results-summary.png

Métricas do Relatório Resumido
O relatório Resumo inclui as seguintes métricas:
  • Precisão – A precisão do modelo em termos da taxa de sucesso dos casos de teste de aprovação (o número de casos de teste de aprovação em comparação com o número total de casos de teste incluídos na execução do teste).
    Observação

    Os casos de teste desativados não são fatorados na pontuação de Precisão. Os testes também não falharam devido a erros. Qualquer teste com falha é adicionado à contagem de falhas.

    Um escore de baixa precisão pode indicar que a execução do teste está avaliando o modelo em conceitos e linguagem que não são adequadamente suportados pelos dados de treinamento. Para aumentar a pontuação de Precisão, treine novamente o modelo com declarações que reflitam os casos de teste na execução do teste.

    Essa métrica de Precisão se aplica a toda a execução do teste e fornece uma pontuação separada da métrica de Precisão no relatório de Intenções. Esta métrica é a porcentagem de casos de teste em que o modelo passou em todos os critérios de caso de teste. A pontuação de Precisão no relatório de Intenções, por outro lado, não é um teste de ponta a ponta. É a porcentagem de casos de teste em que o modelo teve que prever apenas a intenção esperada em, ou acima do limite de confiança da habilidade. Outros critérios de caso de teste (como valor da entidade ou idioma da habilidade) não são considerados. Considerando os diferentes critérios do que significa um caso de teste de aprovação para esses dois relatórios, suas respectivas pontuações de Precisão nem sempre estão em sintonia. A pontuação de Precisão da correspondência da intenção pode ser maior que a pontuação geral de execução do teste quando os dados de teste não estão alinhados com os dados de treinamento. O novo treinamento do modelo com declarações que suportam os casos de teste permitirá que ele preveja as intenções esperadas com maior confiança que, por sua vez, aumentará a pontuação de Precisão para a execução do teste.

    Observação

    A métrica de Precisão não estará disponível até que a execução do teste seja concluída e não estará disponível para execuções de teste que foram concluídas quando a habilidade foi executada em versões anteriores à 22.12 da plataforma Oracle Digital Assistant.
  • Casos de Teste – O número total de casos de teste (confiáveis e não confiáveis) incluídos na execução de teste. Os casos de teste ignorados são incluídos nessa contagem, mas não são considerados ao calcular a métrica Precisão.
  • Aprovado – O número de casos de teste (confiáveis e não confiáveis) aprovados resolvendo para a intenção no limite de confiança e correspondendo aos valores ou ao idioma da entidade selecionada.
  • Com falha – O número de casos de teste (bot confiável e não confiável) que não foram resolvidos para a intenção esperada no limite de confiança e não corresponderam aos valores ou ao idioma da entidade selecionada.

    Para revisar os casos de teste reais por trás das métricas Aprovados e com Falha neste relatório, abra o relatório Casos de Teste e aplique seus filtros Aprovado ou Com Falha.
    Descrição da ilustração test-runs-intent-report.png a seguir
    Descrição da ilustração test-runs-intent-report.png

Detalhamento do Conjunto de Testes

A tabela Detalhamento do Conjunto de Testes lista os conjuntos de testes incluídos na execução de teste e suas estatísticas individuais. Você pode revisar os casos de teste reais pertencentes a um conjunto de testes clicando no link na coluna Conjunto de Testes.
Descrição da ilustração test-suite-breakdown.png a seguir
Descrição da ilustração test-suite-breakdown.png

Relatório de Intenções

As métricas deste relatório rastreiam as correspondências de label do modelo em todos os casos de teste da execução de teste. É aqui que o modelo prevê corretamente a intenção esperada para a declaração do caso de teste. No contexto deste relatório, a precisão, a aprovação e a falha são medidas em termos dos casos de teste em que o modelo previu a intenção esperada correta no limite de confiança ou acima dele. Outros critérios considerados no relatório de resumo, como correspondências de valor de entidade ou idioma da habilidade, não são considerados. Como resultado, este relatório fornece uma visão diferente da precisão do modelo, uma que ajuda a verificar se o treinamento atual permite que o modelo preveja consistentemente as intenções corretas.

Este relatório fornece métricas de correspondência de label (ou de correspondência de intenção) para a execução de teste em dois níveis: um que agrega os resultados para a execução de teste e outro que separa esses resultados por intenção.
Observação

Este relatório não está disponível para execuções de teste concluídas quando a habilidade foi executada em uma versão anterior à 22.12 da plataforma Oracle Digital Assistant.
Métricas do Relatório de Intenções
Os resultados gerais de correspondência de intenção incluem:
  • Casos de Teste – O número de casos de teste incluídos nesta execução de teste. Este total inclui casos de teste confiáveis e não confiáveis. Casos de teste ignorados não são incluídos nesta contagem.

    Dica:

    Os links de caso de teste não confiável para as métricas Casos de Teste, Aprovados e Com Falha abrem o relatório Casos de Teste filtrado por casos de teste não confiáveis. Esta navegação não está disponível quando você filtra o relatório por conjunto de testes.
  • Precisão – A precisão do modelo na correspondência da intenção esperada no limite de confiança da habilidade ou acima dele nos casos de teste nesta execução de teste. A submétrica Correspondência de Label representa a porcentagem de casos de teste na execução de teste em que o modelo previu corretamente a intenção esperada, independentemente da pontuação de confiança. Como há fatores de Correspondência de Rótulo em casos de teste reprovados, juntamente com casos de teste aprovados, sua pontuação pode ser maior que a pontuação de Precisão.
    Você pode comparar essa métrica de Precisão com a métrica de Precisão do relatório Resumo. Quando a pontuação de Precisão no relatório de Resumo for baixa, você poderá usar esse relatório para descobrir rapidamente se as falhas do modelo podem ser atribuídas à sua incapacidade de prever a intenção esperada. No entanto, quando a pontuação de Precisão neste relatório for alta, você poderá descartar a correspondência de rótulos como raiz do problema e, em vez de ter que revisar fortemente os dados de treinamento para aumentar a pontuação de Precisão da execução do teste, poderá concentrar-se na adição de declarações que reflitam os conceitos e o idioma nas declarações do caso de teste.
  • Aprovado – O número de casos de teste (confiáveis e não confiáveis) em que o modelo previu a intenção esperada no limite de confiança da habilidade.
  • Com Falha – O número de casos de teste (confiáveis e não confiáveis) em que o modelo previu a intenção esperada abaixo do limite de confiança da habilidade.
  • Passagem de Confiança – Uma média das pontuações de confiança de todos os casos de teste aprovados nesta execução de teste.
  • Falha de Confiança – Uma média das pontuações de confiança de todos os casos de teste que falharam nesta execução de teste.
Observação

Quando você filtra o relatório de Intenções por conjunto de testes, o acesso ao relatório de Casos de Teste a partir dos links de caso de teste não confiáveis nos blocos Casos de Teste, Aprovados e Com Falha não está disponível. Esses vínculos se tornam ativos novamente quando você remove todas as entradas do campo Filtrar por Suíte de Teste.
Filtrar por Conjunto de Testes
Os resultados padrão do relatório de Intenções refletem todos os conjuntos de testes incluídos na execução do teste. Da mesma forma, suas métricas se baseiam em todos os casos de teste ativados que pertencem a esses conjuntos de testes. Se você quiser detalhar o desempenho da suíte de teste individual (e essencialmente criar uma comparação com a tabela Detalhamento da Suíte de Teste do relatório de Resumo), não precisará criar execuções de teste adicionais. Em vez disso, você pode isolar os resultados do conjunto de testes (ou conjuntos de testes) em questão usando o campo Filtrar por Conjunto de Testes. É possível adicionar um ou mais conjuntos de testes a este campo.
Esta é uma imagem do campo Filtrar por Conjunto de Testes.

O relatório ajusta as métricas de cada conjunto de testes que você adiciona (ou remove subsequentemente). Ela tabula os resultados de correspondência de intenção em termos do número de casos de teste ativados que pertencem ao conjunto de testes selecionado.
Observação

Não é possível filtrar por conjuntos de testes que foram executados em uma plataforma anterior à Versão 23.06. Para incluir esses conjuntos de testes, você precisa executá-los novamente depois de atualizar para a Versão 23.06 ou superior.
Observação

A filtragem por conjunto de testes desativa a navegação para o relatório Casos de Teste dos links de casos de teste não confiáveis nos blocos Casos de Teste, Aprovados e Com Falha. Os links na coluna Total do Detalhamento de Intenções também estão desativados. Todos esses vínculos se tornam ativos novamente depois que você remove todas as entradas do campo Filtrar por Conjunto de Testes.
Detalhamento de Intenções
A tabela Detalhamento de Intenções do relatório fornece as seguintes métricas de nível superior para as intenções esperadas nomeadas nos casos de teste da execução de teste. Você pode restringir o foco selecionando os nomes dessas intenções no campo Filtrar por Intenções.
Observação

O campo Filtrar por Intenção altera a exibição da tabela Detalhamento de Intenções, mas não altera as métricas gerais do relatório. Essas métricas refletem as entradas (ou a falta de entradas) no campo Filtrar por Conjunto de Testes.
  • Intenção – O nome da intenção esperada.
  • Total – O número de casos de teste, representado como um link, para a intenção esperada. Você pode acessar o relatório Casos de Teste clicando neste link.
    Observação

    Não é possível navegar até o relatório de Casos de Teste quando você aplicou um filtro de conjunto de testes a esse relatório. Este vínculo torna-se ativo novamente quando você remove todas as entradas do campo Filtrar por Suíte de Teste.
  • Precisão – A porcentagem de casos de teste que resultaram em correspondências de label para a intenção esperada em ou acima do limite de confiança da habilidade.
  • Aprovado – O número de casos de teste (incluindo casos de teste não confiáveis) em que o modelo previu a intenção esperada no limite de confiança da habilidade ou acima dele.
  • Aprovado - Não Confiável – O número de casos de teste em que o modelo previu a intenção esperada em 5% ou menos acima do limite de confiança da habilidade.
  • Com Falha – O número de casos de teste na execução de teste que falharam porque o modelo previu a intenção esperada abaixo do limite de confiança da habilidade.
  • Com Falha - Não Confiável - O número de casos de teste que falharam porque a confiança do modelo na previsão da intenção esperada caiu 5% abaixo do limite de confiança da habilidade. Esses casos de teste podem levar em consideração
  • Correspondência de Rótulo – O número de casos de teste em que o modelo previu com sucesso a intenção esperada, independentemente do nível de confiança. Como isso é fatorado em casos de teste com falha, as pontuações de Correspondência de Rótulo e Precisão podem nem sempre estar em sintonia entre si. Por exemplo, quatro casos de teste de aprovação de cinco resultam em uma pontuação de 80% de Precisão para a intenção. No entanto, se o modelo previu a intenção corretamente para o caso de teste com falha, a Correspondência de Rótulo superaria a Precisão em 20%.
  • Passagem de Confiança – Uma média das pontuações de confiança de todos os casos de teste que corresponderam com sucesso à intenção esperada.
  • Falha de Confiança – Uma média das pontuações de confiança de todos os casos de teste que falharam em corresponder à intenção esperada.

    Dica:

    Para revisar os casos de teste reais, abra o relatório Casos de Teste e o filtro pela intenção.

Relatório de Casos de Teste

Esse relatório lista todos os casos de teste incluídos na execução do teste.
  1. Você pode filtrar os resultados clicando emTodos, Aprovados (verde) ou Com Falha (vermelho). Os casos de teste contados como ignorados incluem os desativados e aqueles em que a intenção esperada foi desativada.

    Você pode filtrar os resultados por casos de teste não confiáveis clicando em Mostrar casos não confiáveis na mensagem de aviso ou selecionando o filtro Somente Casos Não Confiáveis.
  2. Se necessário, filtre os resultados de uma intenção ou entidade específica ou por casos de teste confiáveis ou não confiáveis.
  3. Para casos de teste não confiáveis e com falha, clique em Exibir Declarações Semelhantes (localizado na página Informações de Teste) para descobrir se a declaração do caso de teste tem qualquer semelhança com as declarações no conjunto de treinamento.
    Esta é uma imagem do botão Exibir Declarações Semelhantes.

  4. Verifique os seguintes resultados:
    • Informações de Teste – Apresenta a visão geral do caso de teste, incluindo o limite de confiança de destino, a intenção esperada e os valores de entidade correspondentes.
    • Resultado do Teste – A classificação da intenção por nível de confiança. Quando presente, o relatório também identifica as entidades contidas na declaração por nome e valor da entidade. Você também pode exibir o objeto JSON que contém os resultados completos.
    • Análise de Falhas – Explica por que o caso de teste falhou. Por exemplo, a intenção real não é a intenção esperada, o valor da entidade rotulada no caso de teste não corresponde à entidade resolvida ou o idioma esperado não é o mesmo que o idioma detectado.
Casos de teste não confiáveis

Alguns casos de teste não podem fornecer resultados consistentes porque resolvem dentro de 5% ou menos do Limite de Confiança. Essa margem estreita torna esses casos de teste não confiáveis. Quando o Limite de Confiança da habilidade é definido como 0,7, por exemplo, um caso de teste que está sendo aprovado em 74% pode falhar depois que você tiver feito apenas pequenas modificações nos dados de treinamento ou porque a habilidade foi atualizada para uma nova versão do modelo. A fragilidade desses casos de teste pode indicar que as declarações que elas representam nos dados de treinamento podem ser muito poucas em número e que talvez você precise equilibrar os dados de treinamento da intenção com declarações semelhantes.

Para localizar casos de teste não confiáveis:
  1. Execute o conjunto de testes. Em seguida, clique em Resultados do Teste e selecione a execução do teste. Os casos de teste não confiáveis são classificados no início dos resultados da execução de teste e são sinalizados com advertênciasEsta é uma imagem do ícone de advertência..

  2. Para isolar os casos de teste não confiáveis:
    • Clique em Mostrar os casos não confiáveis na mensagem.
      Esta é uma imagem do link Mostrar-me os casos não confiáveis.

    • Selecione Somente Casos Não Confiáveis no menu Filtrar por Casos.
      Esta é uma imagem da opção de filtragem Somente casos não confiáveis.

  3. Para localizar a proximidade da intenção de classificação superior do caso de teste com o Limite de Confiança, abra a janela Resultado do Teste. Para uma comparação da pontuação de confiança de classificação superior com o Limite de Confiança, clique em Esta é uma imagem do ícone de advertência. .

  4. Se você precisar complementar os dados de treinamento da intenção de classificação superior, clique em Ir para intenção superior na mensagem de advertência.
    Esta é uma imagem do link Ir para intenção superior na mensagem de advertência.

  5. Se quiser determinar a quantidade de declarações representadas pelo caso de teste nos dados de treinamento, clique em Exibir Declarações Semelhantes.

    Você também pode verificar se alguma das declarações mais semelhantes à declaração do caso de teste também são anomalias no conjunto de treinamento executando o Relatório de Anomalias.

Execuções de Teste Exportadas

As execuções de teste não são persistidas com a habilidade, mas você pode fazer download delas no sistema para análise clicando em Exportar Execução de Teste. Se as intenções não resolverem mais a entrada do usuário conforme esperado ou se as alterações na plataforma tiverem impactado negativamente a resolução da intenção, você poderá reunir os detalhes de uma SR (solicitação de serviço) usando os logs das execuções de teste exportadas.

Teste de Falha

Teste de falha (ou negativo) permite que você teste declarações em massa que nunca devem ser resolvidas, porque elas resultam em unresolvedIntent, ou porque elas só resolvem para outros objetivos abaixo do limite de confiança para todos os objetivos.

Para realizar um teste de falha:
  • Especifique unresolvedIntent como Intenção Esperada para todos os casos de teste que você espera que não sejam resolvidos. Idealmente, essas frases "falsas" permanecerão não resolvidas.

  • Se necessário, ajuste o limite de confiança ao criar uma execução do teste para confirmar que as frases falsas (as com unresolvedIntent como intenção esperada) só podem ser resolvidas abaixo do valor definido aqui. Por exemplo, aumentar o limite pode resultar na falha de resolução das frases falsas no nível de confiança para qualquer intenção (incluindo unresolvedIntent), o que significa que elas são aprovadas porque são consideradas não resolvidas.
  • Confira os resultados do teste, verificando se os casos de teste foram aprovados, correspondendo a unresolvedIntent no limite, ou se não corresponderam a qualquer intenção (unresolvedIntent ou outra) no limite.

Declarações Semelhantes

Você pode descobrir a semelhança da frase de teste com as declarações no corpus de treinamento clicando em Exibir Declarações Semelhantes. Essa ferramenta fornece uma perspectiva adicional sobre os dados de treinamento da habilidade mostrando o quão semelhantes são suas declarações à frase de teste e, por extensão, o quão semelhantes são as declarações entre si nas intenções. Usando essa ferramenta, você pode descobrir se a semelhança da frase de teste com as declarações pertencentes a outras intenções é o motivo pelo qual a frase de teste não está resolvendo como esperado. Ela pode até apontar onde os dados de treinamento pertencem à intenção errada porque sua semelhança com a frase de teste.
Segue a descrição da ilustração similar-utterance-report-all-intents.png
Descrição da ilustração Similar-utterance-report-all-intents.png

A lista gerada por essa ferramenta classifica 20 declarações (juntamente com suas intenções associadas) que estão mais próximas da frase de teste. Idealmente, a declaração de melhor classificação nesta lista – a mais parecida com a frase de teste – pertence à intenção que é direcionada para a frase de teste. Se a declaração mais próxima que pertence à intenção esperada estiver mais abaixo, uma revisão da lista poderá fornecer algumas dicas sobre o motivo. Por exemplo, se você estiver testando uma declaração de intenção de Transações, quanto dinheiro eu transferi ontem?, esperaria que a declaração de classificação superior também pertencesse a uma intenção de Transações. No entanto, se essa declaração de teste estiver sendo resolvida com a intenção errada ou estiver sendo resolvida abaixo do nível de confiança, a lista poderá revelar que ela tem mais em comum com declarações altamente classificadas com palavras semelhantes que pertencem a outras intenções. A declaração Quanto dinheiro tenho em todas as minhas contas?, por exemplo, pode estar mais próxima da declaração de teste do que a declaração Quanto depositei em abril? com classificação mais baixa da intenção de Transações.

Você pode acessar a lista, que é gerada para habilidades treinadas no Trainer Tm, clicando em Exibir Declarações Semelhantes no Testador de Declaração ou no relatório Casos de Teste.

Observação

Você só pode usar essa ferramenta para habilidades treinadas no Trainer Tm (não está disponível para habilidades treinadas com o Ht).
Você pode consultar declarações do Testador de Declaração e por meio de testes na própria ferramenta Exibir Declarações Semelhantes. Quando você clica em Exibir Declarações Semelhantes, todo o corpus é comparado com a frase de teste e uma classificação é aplicada a cada declaração. Como nenhum filtro é aplicado por padrão, no entanto, a lista só inclui as 20 declarações mais bem classificadas e as numera sequencialmente. Para descobrir como as declarações classificadas como 21 e superiores em comparação, você precisa usar os filtros. Ao aplicar os filtros a seguir, você pode aprender a proximidade de declarações semelhantes na classificação em termos de idioma, as intenções às quais eles pertencem ou as palavras ou frases que eles têm em comum.
Observação

A aplicação desses filtros não altera as classificações, apenas a exibição. Uma declaração classificada em terceiro lugar, por exemplo, será anotada como tal, independentemente do filtro. As classificações e o conteúdo do relatório só mudam quando você atualiza o corpus e treina novamente a habilidade com o Trainer Tm.