Planejar seu aplicativo QnA Maker

Para planejar seu aplicativo QnA Maker, você precisa entender como o QnA Maker funciona e interage com outros serviços do Azure. Você também deve ter uma noção sólida dos conceitos da base de dados de conhecimento.

Observação

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

Recursos do Azure

Cada recurso do Azure criado com o QnA Maker tem uma finalidade específica. Cada recurso tem uma finalidade própria, limites e tipo de preço. É importante entender a função desses recursos para que você possa usar esse conhecimento em seu processo de planejamento.

Recurso Finalidade
Recurso do QnA Maker Previsão de criação e consulta
Recurso do Cognitive Search Pesquisa e armazenamento de dados
Recurso do Serviço de Aplicativo e do Serviço de Plano de Aplicativo Ponto de extremidade de previsão da consulta
Recurso do Application Insights Telemetria de previsão de consulta

Planejamento de recursos

A camada gratuita, F0, de cada recurso funciona e pode fornecer a experiência de criação e previsão de consulta. Você pode usar essa camada para aprender a criação e a previsão de consultas. Ao mudar para um cenário de produção ou publicado, reavalie sua seleção de recursos.

Tamanho e taxa de transferência da base de dados de conhecimento

Quando você criar um aplicativo real, planeje recursos suficientes para o tamanho da sua base de dados de conhecimento e para suas solicitações de previsão de consulta esperadas.

O tamanho da base de dados de conhecimento é controlado pelos:

A solicitação de previsão de consulta da base de dados de conhecimento é controlada pelo aplicativo Web e pelo plano dele. Veja as configurações recomendadas para planejar seu tipo de preço.

Compartilhamento de recurso

Se você já tiver alguns desses recursos em uso, poderá considerar o compartilhamento de recursos. Veja quais recursos podem ser compartilhados com a compreensão de que o compartilhamento de recursos é um cenário avançado.

Todas as bases de dados de conhecimento criadas no mesmo recurso do QnA Maker compartilham o mesmo ponto de extremidade de previsão de consulta de teste.

Entender o impacto da seleção de recursos

A seleção de recursos apropriada significa que sua base de dados de conhecimento responde a previsões de consulta com êxito.

Se a sua base de dados de conhecimento não estiver funcionando corretamente, normalmente será um problema de gerenciamento de recursos impróprio.

A seleção de recursos inadequados requer investigação para determinar qual recurso precisa ser alterado.

Bases de dados de conhecimento

Uma base de dados de conhecimento está diretamente vinculada ao recurso do QnA Maker. Ele contém os pares de QnA (perguntas e respostas) que são usados para responder às solicitações de previsão de consulta.

Considerações sobre o idioma

A primeira base de dados de conhecimento criada em seu QnA Maker recurso define o idioma do recurso. Você pode ter apenas um idioma para um recurso do QnA Maker.

Você pode estruturar seus recursos de QnA Maker por idioma ou pode usar a Tradução para alterar uma consulta de outro idioma para o idioma da base de dados de conhecimento antes de enviar a consulta para o ponto de extremidade de previsão de consulta.

Ingerir fontes de dados

Você pode usar uma das seguintes fontes de dados ingeridas para criar uma base de dados de conhecimento:

  • URL pública
  • URL privada do SharePoint
  • Arquivo

O processo de ingestão converte os tipos de conteúdo com suporte para Markdown. Toda edição adicional da resposta é feita com o Markdown. Depois de criar uma base de dados de conhecimento, você pode editar pares de perguntas e respostas no portal do QnA Maker com a criação de rich text.

Considerações sobre o formato de dados

Como o formato final de um par de pergunta e resposta é o Markdown, é importante entender o suporte ao Markdown.

As imagens vinculadas devem estar disponíveis de uma URL pública para serem exibidas no painel de teste do portal do QnA Maker ou em um aplicativo cliente. O QnA Maker não fornece autenticação para conteúdo, incluindo imagens.

Personalidade do bot

Adicione uma personalidade de bot à sua base de dados de conhecimento com o bate-papo. Essa personalidade é fornecida com as respostas fornecidas em um determinado tom de conversação, como profissional e amigável. Esse bate-papo é fornecido como um conjunto de conversação, que você tem controle total para adicionar, editar e remover.

Uma personalidade de bot é recomendada se o bot se conectar à sua base de dados de conhecimento. Você pode optar por usar o bate-papo em sua base de dados de conhecimento mesmo se você também se conectar a outros serviços, mas deve examinar como o serviço de bot interage para saber se esse é o design de arquitetura correto para seu uso.

Fluxo de conversa com uma base de dados de conhecimento

O fluxo de conversa geralmente começa com uma saudação de um usuário, como Hi ou Hello. Sua base de dados de conhecimento pode responder com uma resposta geral, como Hi, how can I help you, e pode fornecer uma seleção de prompts de acompanhamento para continuar a conversa.

Você deve projetar seu fluxo de conversa com um loop em mente para que um usuário saiba como usar o bot e não seja abandonado pelo bot na conversa. Os prompts de acompanhamento fornecem vinculação entre pares de perguntas e respostas, que permitem o fluxo da conversa.

Criando com colaboradores

Os colaboradores podem ser outros desenvolvedores que compartilham a pilha de desenvolvimento completa do aplicativo da base de dados de conhecimento ou podem estar limitados a apenas criar a base de dados de conhecimento.

A criação da base de dados de conhecimento dá suporte a várias permissões de acesso baseadas em função que você aplica no portal do Azure para limitar o escopo das habilidades de um colaborador.

Integração com aplicativos cliente

A integração com aplicativos cliente é realizada enviando uma consulta para o ponto de extremidade de runtime de previsão. Uma consulta é enviada para sua base de dados de conhecimento específica com um SDK ou uma solicitação baseada em REST para o ponto de extremidade do aplicativo Web do QnA Maker.

Para autenticar uma solicitação de cliente corretamente, o aplicativo cliente deve enviar as credenciais corretas e a ID da base de dados de conhecimento. Se você estiver usando um Serviço de Bot de IA do Azure, defina essas configurações como parte da configuração do bot no portal do Azure.

Fluxo de conversa em um aplicativo cliente

O fluxo de conversa em um aplicativo cliente, como um bot do Azure, pode exigir a funcionalidade antes e depois de interagir com a base de dados de conhecimento.

O aplicativo cliente dá suporte ao fluxo de conversa, seja fornecendo meios alternativos para lidar com avisos de acompanhamento ou incluindo bate-papo? Nesse caso, projete-os primeiro e verifique se a consulta do aplicativo cliente é tratada corretamente por outro serviço ou quando enviada à sua base de dados de conhecimento.

Expedição entre o QnA Maker e LUIS (Reconhecimento vocal)

Um aplicativo cliente pode fornecer vários recursos, apenas um dos quais é respondido por uma base de dados de conhecimento. Outros recursos ainda precisam compreender o texto de conversa e extrair o significado dele.

Uma arquitetura de aplicativo cliente comum é usar o QnA Maker e o LUIS (Reconhecimento vocal) juntos. O LUIS fornece a classificação de textos e a extração para qualquer consulta, incluindo outros serviços. O QnA Maker fornece respostas da sua base de dados de conhecimento.

Nesse cenário de arquitetura compartilhada, o despacho entre os dois serviços é realizado pela ferramenta de Expedição do Bot Framework.

Aprendizado ativo de um aplicativo cliente

O QnA Maker usa o aprendizado ativo para aprimorar sua base de dados de conhecimento sugerindo perguntas alternativas para uma resposta. O aplicativo cliente é responsável por uma parte desse aprendizado ativo. Por meio de prompts de conversa, o aplicativo cliente pode determinar se a base de dados de conhecimento retornou uma resposta que não é útil para o usuário e pode determinar uma resposta melhor. O aplicativo cliente precisa enviar essas informações de volta para a base de dados de conhecimento para aprimorar a qualidade da previsão.

Fornecendo uma resposta padrão

Se a sua base de dados de conhecimento não encontrar uma resposta, ela retornará a resposta padrão. Essa resposta é configurável na página Configurações no portal do QnA Maker ou nas APIs.

Essa resposta padrão é diferente da resposta padrão do bot do Azure. Você configura a resposta padrão para o bot do Azure no portal do Azure como parte das definições de configuração. Ele é retornado quando o limite de pontuação não é atendido.

Previsão

A previsão é a resposta da sua base de dados de conhecimento e inclui mais informações do que apenas a resposta. Para obter uma resposta de previsão de consulta, use a API GenerateAnswer.

Flutuações de pontuação de previsão

Uma pontuação pode mudar com base em vários fatores:

  • Número de respostas solicitadas em resposta a GenerateAnswer com a propriedade top
  • Variedade de perguntas alternativas disponíveis
  • Filtragem de metadados
  • Consulta enviada para a base de dados de conhecimento test ou production

Há uma classificação de respostas de duas fases:

  • Cognitive Search – primeira classificação. Defina o número de respostas permitidas alto o suficiente para que as melhores respostas sejam retornadas pelo Cognitive Search e, depois, passadas para o classificador do QnA Maker.
  • QnA Maker – segunda classificação. Aplique a definição de recursos e o machine learning para determinar a melhor resposta.

Atualizações de serviço

Aplique as atualizações de runtime mais recentes para gerenciar atualizações de serviço automaticamente.

Dimensionamento, taxa de transferência e resiliência

O dimensionamento, a taxa de transferência e a resiliência são determinados pelos recursos do Azure, seus tipos de preço e qualquer arquitetura ao redor, como o Gerenciador de Tráfego.

Análise com o Application Insights

Todas as consultas à sua base de dados de conhecimento são armazenadas no Application Insights. Use nossas principais consultas para entender suas métricas.

Ciclo de vida de desenvolvimento

O ciclo de vida de desenvolvimento de uma base de dados de conhecimento é contínuo: editar, testar e publicar sua base de dados de conhecimento.

Desenvolvimento da base de dados de conhecimento de pares do QnA Maker

Seus pares de perguntas e respostas devem ser projetados e desenvolvidos com base no uso do aplicativo cliente.

Cada par pode conter:

  • Metadados: filtráveis ao consultar para permitir que você marque seus pares de perguntas e respostas com informações adicionais sobre a origem, o conteúdo, o formato e a finalidade de seus dados.
  • Prompts de acompanhamento: ajuda a determinar um caminho por meio de sua base de dados de conhecimento para que o usuário chegue à resposta correta.
  • Perguntas alternativas: importante para permitir que a pesquisa corresponda à sua resposta de diferentes formas da pergunta. As sugestões de aprendizado ativo são transformadas em perguntas alternativas.

Desenvolvimento de DevOps

Desenvolver uma base de dados de conhecimento para inserir em um pipeline do DevOps requer que a base de dados de conhecimento seja isolada durante o teste do lote.

Uma base de dados de conhecimento compartilha o índice do Cognitive Search com todas as outras bases de dados de conhecimento no recurso do QnA Maker. Embora a base de dados de conhecimento seja isolada por partição, o compartilhamento do índice pode causar uma diferença na pontuação quando comparado à base de dados de conhecimento publicada.

Para ter a mesma pontuação nas bases de dados de conhecimento test e production, isole um recurso do QnA Maker para uma só base de dados de conhecimento. Nessa arquitetura, o recurso precisa durar apenas o mesmo tempo que o teste em lote isolado.

Próximas etapas