Partilhar via


Consultar a base de dados de conhecimento para obter respostas

Deve ser publicada uma base de dados de conhecimento. Uma vez publicada, a base de dados de conhecimento é consultada no ponto de extremidade de previsão de tempo de execução usando a API generateAnswer. A consulta inclui o texto da pergunta e outras configurações para ajudar o QnA Maker a selecionar a melhor correspondência possível para uma resposta.

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.

Como o QnA Maker processa uma consulta de usuário para selecionar a melhor resposta

A base de conhecimento do QnA Maker treinada e publicada recebe uma consulta de usuário, de um bot ou outro aplicativo cliente, na API GenerateAnswer. O diagrama a seguir ilustra o processo quando a consulta do usuário é recebida.

O processo do modelo de classificação para uma consulta de usuário

Processo de classificação

O processo é explicado na tabela a seguir.

Passo Propósito
1 O aplicativo cliente envia a consulta do usuário para a API GenerateAnswer.
2 O QnA Maker pré-processa a consulta do usuário com deteção de idioma, ortografias e separadores de palavras.
3 Esse pré-processamento é usado para alterar a consulta do usuário para os melhores resultados de pesquisa.
4 Essa consulta alterada é enviada para um Índice de Pesquisa do Azure AI, que recebe o top número de resultados. Se a resposta correta não estiver nesses resultados, aumente um pouco o valor top . Geralmente, um valor de 10 para top obras em 90% das consultas. Os filtros de pesquisa do Azure param palavras nesta etapa.
5 O QnA Maker usa featurização baseada em sintaxe e semântica para determinar a semelhança entre a consulta do usuário e os resultados obtidos do QnA.
6 O modelo de ranker aprendido por máquina usa os diferentes recursos, da etapa 5, para determinar as pontuações de confiança e a nova ordem de classificação.
7 Os novos resultados são retornados para o aplicativo cliente em ordem de classificação.

Os recursos usados incluem, mas não estão limitados a, semântica no nível da palavra, importância no nível do termo em um corpus e modelos semânticos profundamente aprendidos para determinar a semelhança e a relevância entre duas cadeias de texto.

Solicitação e resposta HTTP com ponto de extremidade

Quando você publica sua base de dados de conhecimento, o serviço cria um ponto de extremidade HTTP baseado em REST que pode ser integrado ao seu aplicativo, geralmente um bot de chat.

A solicitação de consulta do usuário para gerar uma resposta

Uma consulta de usuário é a pergunta que o usuário final faz à base de dados de conhecimento, como How do I add a collaborator to my app?. A consulta geralmente está em um formato de linguagem natural ou algumas palavras-chave que representam a pergunta, como help with collaborators. A consulta é enviada para sua base de dados de conhecimento a partir de uma solicitação HTTP em seu aplicativo cliente.

{
    "question": "How do I add a collaborator to my app?",
    "top": 6,
    "isTest": true,
    "scoreThreshold": 20,
    "strictFilters": [
    {
        "name": "QuestionType",
        "value": "Support"
    }],
    "userId": "sd53lsY="
}

Você controla a resposta definindo propriedades como scoreThreshold, top e strictFilters.

Use o contexto da conversa com a funcionalidade de várias voltas para manter a conversa indo para refinar as perguntas e respostas, para encontrar a resposta correta e final.

A resposta de uma chamada para gerar uma resposta

A resposta HTTP é a resposta recuperada da base de dados de conhecimento, com base na melhor correspondência para uma determinada consulta de usuário. A resposta inclui a resposta e a pontuação da previsão. Se você pediu mais de uma resposta com o top estabelecimento, receberá mais de uma resposta principal, cada uma com uma pontuação.

{
    "answers": [
        {
            "questions": [
                "How do I add a collaborator to my app?",
                "What access control is provided for the app?",
                "How do I find user management and security?"
            ],
            "answer": "Use the Azure portal to add a collaborator using Access Control (IAM)",
            "score": 100,
            "id": 1,
            "source": "Editorial",
            "metadata": [
                {
                    "name": "QuestionType",
                    "value": "Support"
                },
                {
                    "name": "ToolDependency",
                    "value": "Azure Portal"
                }
            ]
        }
    ]
}

Próximos passos