Teste sua base de conhecimento no QnA Maker

Testar sua base de conhecimento do QnA Maker é uma parte importante de um processo iterativo para melhorar a precisão das respostas que estão sendo retornadas. Você pode testar a base de conhecimento por meio de uma interface de bate-papo aprimorada que também permite fazer edições.

Nota

O serviço QnA Maker será desativado no dia 31 de março de 2025. Uma versão mais recente do recurso de perguntas e respostas agora está disponível como parte da Linguagem de IA do Azure. Para obter os recursos de resposta a perguntas no Serviço Linguístico, consulte Resposta a perguntas. A partir de 1º de outubro de 2022, você não poderá criar novos recursos do QnA Maker. Para obter informações sobre como migrar bases de conhecimento existentes do QnA Maker para responder a perguntas, consulte o guia de migração.

Teste interativo no portal QnA Maker

  1. Acesse sua base de dados de conhecimento selecionando seu nome na página Minhas bases de conhecimento.
  2. Para acessar o painel deslizante Teste, selecione Testar no painel superior do seu aplicativo.
  3. Insira uma consulta na caixa de texto e selecione Enter.
  4. A resposta mais adequada da base de dados de conhecimento é retornada como resposta.

Limpar painel de teste

Para limpar todas as consultas de teste inseridas e seus resultados do console de teste, selecione Começar de novo no canto superior esquerdo do painel Teste.

Fechar painel de teste

Para fechar o painel Teste, selecione o botão Testar novamente. Enquanto o painel Teste estiver aberto, não é possível editar o conteúdo da Base de Dados de Conhecimento.

Inspecionar pontuação

Você inspeciona os detalhes do resultado do teste no painel Inspecionar.

  1. Com o painel deslizante Teste aberto, selecione Inspecionar para obter mais detalhes sobre essa resposta.

    Inspect responses

  2. O painel Inspeção é exibido. O painel inclui a intenção de pontuação máxima, bem como quaisquer entidades identificadas. O painel mostra o resultado do enunciado selecionado.

Corrigir a resposta com melhor pontuação

Se a resposta com a melhor pontuação estiver incorreta, selecione a resposta correta na lista e selecione Salvar e treinar.

Correct the top scoring answer

Adicionar perguntas alternativas

Você pode adicionar formas alternativas de uma pergunta a uma determinada resposta. Digite as respostas alternativas na caixa de texto e selecione enter para adicioná-las. Selecione Salvar e Treinar para armazenar as atualizações.

Add alternate questions

Adicionar uma nova resposta

Você pode adicionar uma nova resposta se alguma das respostas existentes que foram correspondidas estiver incorreta ou se a resposta não existir na base de dados de conhecimento (nenhuma boa correspondência encontrada no KB).

Na parte inferior da lista de respostas, use a caixa de texto para inserir uma nova resposta e pressione enter para adicioná-la.

Selecione Salvar e Treinar para manter essa resposta. Um novo par pergunta-resposta foi adicionado à sua base de conhecimento.

Nota

Todas as edições na sua base de dados de conhecimento só são salvas quando você pressiona o botão Salvar e Treinar .

Testar a base de dados de conhecimento publicada

Você pode testar a versão publicada da base de dados de conhecimento no painel de teste. Depois de publicar o KB, selecione a caixa KB publicado e envie uma consulta para obter os resultados do KB publicado.

Test against a published KB

Teste em lote com ferramenta

Use a ferramenta de teste em lote quando quiser:

  • determinar a melhor resposta e pontuação para um conjunto de perguntas
  • validar a resposta esperada para o conjunto de perguntas

Pré-requisitos

Entrar no portal do QnA Maker

Faça login no portal do QnA Maker.

Criar uma nova base de dados de conhecimento a partir do arquivo de exemplo .docx várias voltas

  1. Selecione Criar uma base de dados de conhecimento na barra de ferramentas.

  2. Ignore a Etapa 1 porque você já deve ter um recurso do QnA Maker, passando para a Etapa 2 para selecionar as informações do recurso existente:

    • Microsoft Entra ID
    • Nome da Subscrição do Azure
    • Nome do Serviço Azure QnA
    • Língua - a língua inglesa
  3. Insira o nome como o nome Multi-turn batch test quickstart da sua base de dados de conhecimento.

  4. Na Etapa 4, defina as configurações com a tabela a seguir:

    Definição Valor
    Habilite a extração de vários turnos de URLs, arquivos .pdf ou .docx. Verificado
    Texto de resposta padrão Batch test - default answer not found.
    + Adicionar ficheiro Selecione a listagem de arquivos baixados .docx nos pré-requisitos.
    Conversa Selecione Profissional
  5. Na Etapa 5, selecione Criar seu KB.

    Quando o processo de criação termina, o portal exibe a base de dados de conhecimento editável.

Guardar, treinar e publicar a base de dados de conhecimento

  1. Selecione Salvar e treinar na barra de ferramentas para salvar a base de dados de conhecimento.

  2. Selecione Publicar na barra de ferramentas e, em seguida, selecione Publicar novamente para publicar a base de dados de conhecimento. A publicação disponibiliza a base de dados de conhecimento para consultas a partir de um ponto de extremidade de URL público. Quando a publicação estiver concluída, salve a URL do host e as informações da chave do ponto de extremidade mostradas na página Publicar .

    Dados necessários Exemplo
    Anfitrião Publicado https://YOUR-RESOURCE-NAME.azurewebsites.net
    Chave publicada XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (Sequência de 32 caracteres mostrada após Endpoint )
    ID da Aplicação xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (Cadeia de 36 caracteres mostrada como parte de POST)

Criar arquivo de teste em lote com IDs de pergunta

Para usar a ferramenta de teste em lote, crie um arquivo nomeado batch-test-data-1.tsv com um editor de texto. O arquivo deve estar no formato UTF-8 e precisa ter as seguintes colunas separadas por uma guia.

Campos do arquivo de entrada TSV Notas Exemplo
ID da base de dados de conhecimento O ID da base de dados de conhecimento encontrado na página Publicar. Teste várias bases de dados de conhecimento no mesmo serviço ao mesmo tempo em um único arquivo usando diferentes IDs de base de dados de conhecimento em um único arquivo. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (Cadeia de 36 caracteres mostrada como parte de POST)
Pergunta O texto da pergunta que um usuário digitaria. Máximo de 1.000 caracteres. How do I sign out?
Etiquetas de metadados opcional topic:power usa o key:value formato
Parâmetro superior opcional 25
ID de resposta esperada opcional 13

Para esta base de dados de conhecimento, adicione três linhas de apenas as duas colunas necessárias ao arquivo. A primeira coluna é o ID da base de dados de conhecimento e a segunda coluna deve ser a seguinte lista de perguntas:

Coluna 2 - perguntas
Use Windows Hello to sign in
Charge your Surface Pro 4
Get to know Windows 10

Essas perguntas são a redação exata da base de conhecimento e devem retornar 100 como pontuação de confiança.

Em seguida, adicione algumas perguntas, semelhantes a essas perguntas, mas não exatamente iguais em mais três linhas, usando o mesmo ID da base de conhecimento:

Coluna 2 - perguntas
What is Windows Hello?
How do I charge the laptop?
What features are in Windows 10?

Atenção

Certifique-se de que cada coluna está separada apenas por um delimitador de tabulações. Espaços à esquerda ou à direita são adicionados aos dados da coluna e farão com que o programa lance exceções quando o tipo ou tamanho estiver incorreto.

O arquivo de teste em lotes, quando aberto no Excel, se parece com a imagem a seguir. O ID da base de dados de conhecimento foi substituído por xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx para segurança. Para seu próprio teste em lote, verifique se a coluna exibe seu ID da base de dados de conhecimento.

Input first version of .tsv file from batch test

Testar o arquivo em lotes

Execute o programa de teste em lote usando o seguinte formato de CLI na linha de comando.

Substitua YOUR-RESOURCE-NAME e por seus próprios valores para nome de serviço e ENDPOINT-KEY chave de ponto de extremidade. Esses valores são encontrados na página Configurações no portal do QnA Maker.

batchtesting.exe batch-test-data-1.tsv https://YOUR-RESOURCE-NAME.azurewebsites.net ENDPOINT-KEY out.tsv

O teste é concluído e gera o out.tsv arquivo:

Output first version of .tsv file from batch test

O ID da base de dados de conhecimento foi substituído por xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx para segurança. Para seu próprio teste em lote, a coluna exibe seu ID da base de dados de conhecimento.

O resultado do teste de pontuação de confiança, na quarta coluna, mostra que as três principais perguntas retornaram uma pontuação de 100 como esperado, porque cada pergunta é exatamente a mesma que aparece na base de conhecimento. As três últimas questões, com nova redação da pergunta, não retornam 100 como pontuação de confiança. Para aumentar a pontuação do teste e de seus usuários, você precisa adicionar mais perguntas alternativas à base de conhecimento.

Teste com os campos opcionais

Depois de entender o formato e o processo, você pode gerar um arquivo de teste, para ser executado em sua base de conhecimento a partir de uma fonte de dados, como logs de bate-papos.

Como a fonte de dados e o processo são automatizados, o arquivo de teste pode ser executado muitas vezes com configurações diferentes para determinar os valores corretos.

Por exemplo, se você tiver um log de bate-papo e quiser determinar qual texto do log de bate-papo se aplica a quais campos de metadados, crie um arquivo de teste e defina os campos de metadados para cada linha. Execute o teste e, em seguida, reveja as linhas que correspondem aos metadados. Geralmente, as correspondências devem ser positivas, mas você deve revisar os resultados para falsos positivos. Um falso positivo é uma linha que corresponde aos metadados, mas, com base no texto, não deve corresponder.

Usando campos opcionais no arquivo de teste em lote de entrada

Use o gráfico a seguir para entender como localizar os valores de campo para dados opcionais.

Column number Coluna opcional Localização de dados
3 do IdP Exporte a base de dados de conhecimento existente para pares existentes key:value .
4 top O valor padrão de 25 é recomendado.
5 ID do conjunto de perguntas e respostas Exporte a base de dados de conhecimento existente para valores de ID. Observe também que os IDs foram retornados no arquivo de saída.

Adicionar metadados à base de dados de conhecimento

  1. No portal QnA, na página Editar , adicione metadados das topic:power seguintes perguntas:

    Perguntas
    Carregue o seu Surface Pro 4
    Verifique o nível da bateria

    Dois pares de QnA têm o conjunto de metadados.

    Gorjeta

    Para ver os metadados e IDs QnA de cada conjunto, exporte a base de dados de conhecimento. Selecione a página Configurações e, em seguida, selecione Exportar como um .xls arquivo. Encontre este arquivo baixado e abra com o Excel revisando metadados e ID.

  2. Selecione Salvar e treinar, selecione a página Publicar e selecione o botão Publicar . Essas ações disponibilizam a alteração para o teste em lote. Transfira a base de dados de conhecimento a partir da página Definições .

    O arquivo baixado tem o formato correto para os metadados e o ID correto do conjunto de perguntas e respostas. Use estes campos na próxima seção

    Exported knowledge base with metadata

Criar um segundo teste em lote

Há dois cenários principais para o teste em lote:

  • Processar arquivos de log de bate-papo - Determine a principal resposta para uma pergunta inédita - a situação mais comum é quando você precisa processar o arquivo de log de consultas, como as perguntas do usuário de um bot de chat. Crie um teste de arquivo em lotes, com apenas as colunas necessárias. O teste devolve a resposta principal para cada pergunta. Isso não significa que a resposta principal seja a resposta correta. Depois de concluir este teste, passe para o teste de validação.
  • Teste de validação - Valide a resposta esperada. Este teste requer que todas as perguntas e respostas correspondentes esperadas no teste em lote tenham sido validadas. Isso pode exigir algum processo manual.

O procedimento a seguir pressupõe que o cenário é processar logs de bate-papo com

  1. Crie um novo arquivo de teste em lote para incluir dados opcionais, batch-test-data-2.tsv. Adicione as seis linhas do arquivo de entrada de teste em lote original e, em seguida, adicione os metadados, a parte superior e o ID do par QnA para cada linha.

    Para simular o processo automatizado de verificação de novo texto de logs de bate-papo em relação à base de dados de conhecimento, defina os metadados de cada coluna com o mesmo valor: topic:power.

    Input second version of .tsv file from batch test

  2. Execute o teste novamente, alterando os nomes dos arquivos de entrada e saída para indicar que é o segundo teste.

    Output second version of .tsv file from batch test

Resultados dos testes e um sistema de teste automatizado

Esse arquivo de saída de teste pode ser analisado como parte de um pipeline de teste contínuo automatizado.

Essa saída de teste específica deve ser lida como: cada linha foi filtrada com metadados e, como cada linha não correspondia aos metadados na base de dados de conhecimento, a resposta padrão para essas linhas não correspondentes retornava ("nenhuma boa correspondência encontrada em kb"). Das linhas que corresponderam, o ID e a pontuação do QnA foram devolvidos.

Todas as linhas retornaram o rótulo de incorreto porque nenhuma linha correspondia ao ID de resposta esperado.

Você deve ser capaz de ver com esses resultados que você pode fazer um log de bate-papo e usar o texto como a consulta de cada linha. Sem saber nada sobre os dados, os resultados dizem muito sobre os dados que você pode usar daqui para frente:

  • meta-dados
  • QnA ID
  • score

A filtragem com metadados foi uma boa ideia para o teste? Sim e não. O sistema de teste deve criar arquivos de teste para cada par de metadados, bem como um teste sem pares de metadados.

Clean up resources (Limpar recursos)

Se você não vai continuar testando a base de dados de conhecimento, exclua a ferramenta de arquivo em lote e os arquivos de teste.

Se você não vai continuar a usar essa base de dados de conhecimento, exclua a base de dados de conhecimento com as seguintes etapas:

  1. No portal do QnA Maker, selecione Minhas bases de conhecimento no menu superior.
  2. Na lista de bases de dados de conhecimento, selecione o ícone Excluir na linha da base de dados de conhecimento deste início rápido.

A documentação de referência sobre a ferramenta inclui:

  • O exemplo de linha de comando da ferramenta
  • o formato para arquivos de entrada e saída TSV

Próximos passos