O índice de confiança de uma resposta

Quando uma consulta de usuário é comparada com uma base de dados de conhecimento, o QnA Maker retorna respostas relevantes, juntamente com uma pontuação de confiança. Essa pontuação indica a confiança de que a resposta é a correspondência certa para a consulta do usuário em questão.

O índice de confiança é um número entre 0 e 100. Uma pontuação de 100 é provavelmente uma correspondência exata, enquanto uma pontuação de 0 significa que nenhuma resposta correspondente foi encontrada. Quanto maior a pontuação, maior a confiança na resposta. Para uma determinada consulta, pode haver várias respostas retornadas. Nesse caso, as respostas são devolvidas por ordem decrescente de pontuação de confiança.

No exemplo abaixo, você pode ver uma entidade QnA, com 2 perguntas.

Exemplo de par QnA

Para o exemplo acima - você pode esperar pontuações como o intervalo de pontuação de amostra abaixo - para diferentes tipos de consultas do usuário:

Intervalo de pontuação do ranker

A tabela a seguir indica a confiança típica associada a uma determinada pontuação.

Valor da pontuação Significado da pontuação Exemplo de consulta
90 - 100 Uma correspondência quase exata da consulta do usuário e uma pergunta KB "Minhas alterações não são atualizadas em KB após a publicação"
> 70 Alta confiança - normalmente uma boa resposta que responde completamente à consulta do usuário "Publiquei a minha KB mas não está atualizada"
50 - 70 Confiança média - normalmente uma resposta bastante boa que deve responder à intenção principal da consulta do usuário "Devo salvar minhas atualizações antes de publicar meu KB?"
30 - 50 Baixa confiança - normalmente uma resposta relacionada, que responde parcialmente à intenção do usuário " O que faz o save and train?"
< 30 Confiança muito baixa - normalmente não responde à consulta do utilizador, mas tem algumas palavras ou frases correspondentes " Onde posso adicionar sinónimos ao meu KB"
0 Não há correspondência, por isso a resposta não é devolvida. "Quanto custa o serviço"

Escolha um limite de pontuação

A tabela acima mostra as pontuações esperadas na maioria dos KBs. No entanto, como cada KB é diferente e tem diferentes tipos de palavras, intenções e objetivos, recomendamos que você teste e escolha o limite que melhor funciona para você. Por padrão, o limite é definido como 0, para que todas as respostas possíveis sejam retornadas. O limite recomendado que deve funcionar para a maioria dos KBs é 50.

Ao escolher seu limite, tenha em mente o equilíbrio entre Precisão e Cobertura e ajuste seu limite com base em suas necessidades.

  • Se a Precisão (ou precisão) for mais importante para o seu cenário, aumente o limite. Desta forma, cada vez que você retornar uma resposta, será um caso muito mais CONFIANTE, e muito mais provável de ser a resposta que os usuários estão procurando. Nesse caso, você pode acabar deixando mais perguntas sem resposta. Por exemplo: se você fizer o limite 70, você pode perder alguns exemplos ambíguos como "o que é salvar e treinar?".

  • Se a Cobertura (ou recall) for mais importante - e você quiser responder ao maior número possível de perguntas, mesmo que haja apenas uma relação parcial com a pergunta do usuário - então REDUZA o limite. Isso significa que pode haver mais casos em que a resposta não responde à consulta real do usuário, mas dá alguma outra resposta um pouco relacionada. Por exemplo: se você fizer o limite 30, poderá dar respostas para consultas como "Onde posso editar meu KB?"

Nota

As versões mais recentes do QnA Maker incluem melhorias na lógica de pontuação e podem afetar seu limite. Sempre que atualizar o serviço, certifique-se de testar e ajustar o limite, se necessário. Você pode verificar sua versão do QnA Service aqui e ver como obter as atualizações mais recentes aqui.

Definir limiar

Defina a pontuação limite como uma propriedade do corpo JSON da API GenerateAnswer. Isso significa que você o define para cada chamada como GenerateAnswer.

Na estrutura do bot, defina a pontuação como parte do objeto options com C# ou Node.js.

Melhorar as pontuações de confiança

Para melhorar a pontuação de confiança de uma resposta específica a uma consulta de usuário, você pode adicionar a consulta de usuário à base de dados de conhecimento como uma pergunta alternativa sobre essa resposta. Você também pode usar alterações de palavras que não diferenciam maiúsculas de minúsculas para adicionar sinônimos a palavras-chave em seu KB.

Escores de confiança semelhantes

Quando várias respostas têm uma pontuação de confiança semelhante, é provável que a consulta tenha sido demasiado genérica e, portanto, correspondida com igual probabilidade com várias respostas. Tente estruturar melhor o seu QnAs para que cada entidade QnA tenha uma intenção distinta.

Diferenças no escore de confiança entre teste e produção

A classificação de confiança de uma resposta pode mudar ligeiramente entre o teste e a versão publicada da base de dados de conhecimento, mesmo que o conteúdo seja o mesmo. Isso ocorre porque o conteúdo do teste e a base de dados de conhecimento publicada estão localizados em diferentes índices do Azure AI Search.

O índice de teste contém todos os pares QnA de suas bases de conhecimento. Ao consultar o índice de teste, a consulta se aplica a todo o índice e, em seguida, os resultados são restritos à partição dessa base de dados de conhecimento específica. Se os resultados da consulta de teste estiverem afetando negativamente sua capacidade de validar a base de dados de conhecimento, você poderá:

  • Organize sua base de dados de conhecimento usando uma das seguintes opções:
    • 1 recurso restrito a 1 KB: restrinja seu único recurso QnA (e o índice de teste resultante do Azure AI Search) a uma única base de dados de conhecimento.
    • 2 recursos - 1 para teste, 1 para produção: ter dois recursos QnA Maker, usando um para teste (com seus próprios índices de teste e produção) e um para produto (também com seus próprios índices de teste e produção)
  • e, sempre use os mesmos parâmetros, como top ao consultar sua base de conhecimento de teste e produção

Quando você publica uma base de dados de conhecimento, o conteúdo de perguntas e respostas da base de dados de conhecimento é movido do índice de teste para um índice de produção na pesquisa do Azure. Veja como funciona a operação de publicação .

Se você tiver uma base de dados de conhecimento em regiões diferentes, cada região usará seu próprio índice do Azure AI Search. Como são utilizados índices diferentes, as pontuações não serão exatamente as mesmas.

Nenhuma correspondência encontrada

Quando nenhuma boa correspondência é encontrada pelo classificador, a pontuação de confiança de 0,0 ou "Nenhuma" é retornada e a resposta padrão é "Nenhuma boa correspondência encontrada no KB". Você pode substituir essa resposta padrão no bot ou no código do aplicativo que chama o ponto de extremidade. Como alternativa, você também pode definir a resposta de substituição no Azure e isso altera o padrão para todas as bases de dados de conhecimento implantadas em um serviço específico do QnA Maker.

Próximos passos