Módulo de Perguntas e Respostas
A partir da Versão 22.04, o recurso de perguntas e respostas será descontinuado e substituído pelo recurso Conhecimento. O recurso Conhecimento tem vantagens significativas sobre o recurso Perguntas e Respostas, a saber:
- Você pode gerar intenções de resposta em sua habilidade diretamente de Perguntas Frequentes ou documentos da Base de Conhecimento existentes. Você não precisa formatar manualmente esses documentos antes de importá-los para sua habilidade. Além disso, exemplos de declarações são gerados para cada intenção.
- Em conversas com a habilidade, as intenções de resposta geradas são resolvidas com NLP, como intenções regulares. Você não precisa de propriedades ou componentes específicos do módulo de perguntas e respostas para tratar essas intenções.
Além disso, o recurso de perguntas e respostas não funciona em fluxos de caixas de diálogo desenvolvidos no modo Visual.
Se você tiver uma habilidade existente que tenha um módulo de perguntas e respostas, poderá continuar usando esse módulo de perguntas e respostas em versões futuras da habilidade. Mas recomendamos que você alterne para o uso de intenções de resposta (com a ajuda do recurso Conhecimento ou criando intenções de resposta manualmente). Consulte Intenções de Resposta.
O recurso Q&A permite à sua habilidade responder a perguntas de interesse geral retornando um ou mais pares pergunta/resposta. É uma forma de usar uma habilidade para apresentar Perguntas Frequentes ou outros documentos da base de conhecimento.
A adição de um módulo de perguntas e respostas à sua habilidade permite avaliar se a entrada do usuário se destina a uma transação ("What's meu saldo?") ou a responder a uma pergunta ("What's the bank's address?") e, em seguida, responder adequadamente.
Adicionando Perguntas e Respostas a uma Habilidade
-
Ative o recurso de módulo de perguntas e respostas clicando em (
) na barra de navegação esquerda. Em seguida, clique em Adicionar Módulo de Perguntas e Respostas.
Observação
Isso só é possível em habilidades que foram criadas no modo de diálogo YAML. -
Carregue os arquivos de origem (formatados como CSVs) que contêm os pares de pergunta e resposta categorizados. Criar o Arquivo de Origem de Dados descreve o formato e fornece algumas diretrizes de conteúdo.
Descrição da ilustração add-qna-source.png -
Se necessário, você poderá editar as perguntas e respostas. Também é possível adicionar ou excluir perguntas e respostas.
-
Treine a habilidade com o treinador do módulo de perguntas e respostas.
Descrição da ilustração train-w-qna.png -
Teste o novo recurso de módulo de perguntas e respostas digitando perguntas no Testador do Módulo de Perguntas e Respostas. Como parte do processo de teste, adicione perguntas alternativas à origem de dados para melhorar o recurso de reconhecimento de pergunta. Treine novamente se você adicionar ou alterar qualquer coisa na origem de dados.
-
Para utilizar o módulo de perguntas e respostas no fluxo de caixas de diálogo de uma habilidade, configure o componente
System.Qna
. Além disso, anexe uma nova transição ao componenteSystem.Intent
que menciona esse novo componente, de modo que as perguntas do módulo de perguntas e respostas sejam roteadas para o componente desse módulo; consulte Como Configuro o Fluxo de Caixas de Diálogo para o Módulo de Perguntas e Respostas?. -
Adicione um estado para a ação
none
e defina a transição de volta para o componente do módulo de perguntas e respostas quando a pergunta for respondida, adicionandoqna
para a transiçãonext
:qna: component: "System.QnA" transitions: actions: none: "unresolved" next: "qna" unresolved: component: "System.Output" properties: text: "Sorry, I did not find any match. Can you rephrase the question?" transitions: return: "done"
-
Teste a habilidade.
Criar o Arquivo de Origem de Dados
category_path
, questions
e content
.
Coluna | Conteúdo |
---|---|
category_path |
As categorias de um determinado par pergunta/resposta. Quando um par pergunta/resposta pertencer a mais de uma categoria, adicione cada categoria em uma nova linha. Use uma barra (/) para indicar uma hierarquia. Por exemplo: |
questions |
As perguntas exibidas para o usuário. Adicione cada versão alternativa desta pergunta em uma nova linha. A primeira pergunta, conhecida como canônica, é a pergunta exibida na mensagem da habilidade por padrão. As perguntas subsequentes na coluna são versões alternativas. |
content |
As respostas. |
As Diretrizes da Origem de Dados
-
A adição de várias perguntas para cada resposta aumenta a probabilidade de os pares pergunta/resposta relevantes serem retornados aos usuários. Crie de 2 a 5 perguntas para cada resposta. Forneça perguntas suficientes para abranger uma amostra das diversas formas pelas quais você espera que o usuário consulte um tópico. Considere variar o sujeito (mas seja consistente com o tópico da resposta), o verbo e as interrogações “como”, “qual”, “onde” etc. Por exemplo, Como descubro quanto dinheiro tenho? pode ser dito de outra forma como:
-
Como vejo o saldo da minha conta?
-
Onde posso encontrar o saldo da minha conta?
-
Posso ver o saldo da minha conta?
-
-
Lembre-se de que, embora as perguntas possam ser formuladas de várias maneiras, todas elas devem retornar as mesmas respostas.
-
Não é necessário criar perguntas alternativas para enquadrar palavras de uso comum, sinônimos ou erros de digitação. Você pode usar a página Configuração do Idioma para adicionar sinônimos ou abreviações. Os erros de digitação são tratados automaticamente.
-
Mantenha as respostas tão curtas quanto possível. Forneça um link para obter informações mais detalhadas. Os links do módulo de perguntas e respostas não podem ficar ocultos, o que significa que não é possível utilizar
<a href>
para especificar o nome de um site. Os links devem ser explícitos (http://www.myanswers.com/answer/topic1.html
, por exemplo). -
Use sempre texto simples
-
Os usuários estão interessados nas três principais correspondências para obter as informações que eles desejam. Embora você deva focar na correspondência principal, o objetivo deverá ser garantir que as informações solicitadas e relacionadas estejam nas três principais correspondências.
-
Crie um arquivo de teste em batch sempre que você atualizar sua origem de dados. Esse arquivo batch contém todas as perguntas que você deseja garantir que sua habilidade responda corretamente. Para saber mais sobre esse arquivo, consulte Criar o Arquivo CSV para Teste de Batch.
Gerenciamento de Módulos de Perguntas e Respostas e Origens de Dados
Adicionar Mais Origens de Dados
-
Clique em Módulo de Perguntas e Respostas (
) na barra de navegação esquerda.
-
Selecione a guia Origens de Dados e clique em Adicionar Origem do Módulo de Perguntas e Respostas.
-
Preencha a caixa de diálogo informando um idioma, uma localidade (se necessário) e o arquivo de origem de dados.
-
Você pode adicionar batches de origens de dados escolhendo Criar Outro.
-
Por padrão, a origem de dados fica ativada. Se você precisar remover pares pergunta/esposta temporariamente da origem de dados, poderá escolher Desativado em vez de excluir a origem de dados.
-
Clique em Criar.
-
Treinar Novamente o Módulo de Perguntas e Respostas
Editar os Parâmetros de Configuração da Origem de Dados do Módulo de Perguntas e Respostas
-
Clique em Módulo de Perguntas e Respostas (
) na barra de navegação esquerda.
-
Selecione a guia Origens de Dados.
-
Passe o mouse sobre a origem de dados para chamar os ícones Editar e Excluir.
-
Clique em Editar.
-
Execute qualquer um dos procedimentos a seguir e clique em Salvar.
-
Altere o idioma e a configuração regional.
-
Renomeie a origem.
-
Substitua o arquivo de origem existente clicando em Substituir e selecionando um novo arquivo.
-
Ative ou desative a origem.
-
-
Treine novamente o módulo de perguntas e respostas.
Adicionar Perguntas e Respostas Uma por Uma
-
Na guia Origens de Dados, clique na origem de dados.
-
Clique em Exibir Todos os Módulos de Perguntas e Respostas.
-
Clique em Adicionar Pergunta.
-
Preencha a caixa de diálogo da seguinte forma e clique em Criar.
-
Pergunta Canônica — Digite a pergunta que é exibida por padrão no chat.
-
Alternativa — Adicione uma ou mais variações da pergunta canônica. Lembre-se de que você só precisa se concentrar em como os usuários podem fazer a mesma pergunta de outras formas, não em incluir sinônimos ou erros ortográficos comuns.
-
Resposta -- Adicionar uma resposta concisa. No lugar de uma explicação extensa, adicione um URL que aponte os usuários para informações mais detalhadas. Esse URL será renderizado como texto simples na janela do testador, mas como hiperlink quando a habilidade for executada em uma plataforma de mensagens real.
-
Categorias — Se aplicável, informe uma categoria ou escolha uma no menu. (O menu é preenchido com as categorias do arquivo de origem de dados).
-
Para hierarquias, digite uma string com barras (/).
-
Criar outro — Selecione essa opção para abrir uma nova caixa de diálogo depois de clicar em Criar.
-
-
Treinar Novamente o Módulo de Perguntas e Respostas
-
Clique em Fechar na guia Origens de Dados.
Lembre-se de que esses pares de perguntas e respostas são exibidos dentro dos limites de uma janela de chat; portanto, devem ser curtos. Consulte As Diretrizes da Origem de Dados.
Editar Perguntas e Respostas Uma por Uma
-
Na guia Origens de Dados, vá para a página da pergunta ou localize-a usando um dos campos de pesquisa (categorias e perguntas e respostas).
-
Passe o mouse sobre a pergunta e clique em Editar.
-
Use a caixa de diálogo Editar Pergunta para:
-
Alterar a pergunta canônica.
-
Adicionar mais perguntas alternativas.
-
Edite a resposta.
-
Adicionar ou remover categorias.
-
-
Clique em Salvar.
-
Treine novamente o módulo de perguntas e respostas.
-
Clique em Fechar na guia Origens de Dados.
Você também pode adicionar perguntas alternativas usando o testador.
Exportar o Conjunto de Dados do Módulo de Perguntas e Respostas
-
Na guia Origens de Dados, clique em Exibir Todos os Módulos de Perguntas e Respostas.
-
Escolha o arquivo de origem de dados no painel esquerdo.
-
Clique em Exportar e salve o arquivo no sistema.
-
Clique em Fechar.
Precisão Melhorada com Abreviações e Palavras Ignoradas
Nós incluímos conjuntos internos de palavras ignoradas, abreviações e sinônimos para melhorar a precisão da capacidade do módulo de perguntas e respostas. As palavras ignoradas são excluídas do algoritmo de correspondência para que não reduzam a precisão. As listas de abreviações e sinônimos são usadas para corresponder às perguntas do usuário que incluam essas palavras. Embora os conjuntos internos possam ser suficientes para muitas habilidades, você pode fazer adições a eles para situações exclusivas.
As adições a esses conjuntos são feitas usando a página Configuração de Idioma. Nessa página, você pode editar as listas de palavras ignoradas, abreviações e sinônimos.
Adicionar Palavras Ignoradas, Sinônimos e Abreviações
-
Selecione a guia Configuração de Idioma.
-
Clique em Adicionar Entrada de Configuração.
-
Preencha a caixa de diálogo:
-
Idioma — Selecione entre os idiomas disponíveis (que suas origens de dados disponibilizaram).
-
Tipo:
-
Palavras ignoradas — Adicione palavras que não agreguem valor às perguntas. As palavras devem estar em letras minúsculas.
-
Sinônimos — Inclua gírias e palavras alternativas para cada palavra-chave na origem de dados. Crie uma entrada distinta para cada conjunto de sinônimos. Por exemplo, dinheiro, moolah, verde é uma entrada distinta de cônjuge, esposa, marido, parceiro(a).
Descrição da ilustração sinônimo-entries.png -
Abreviações — Tenha em mente que perguntas canônicas podem não esperar abreviações.
-
-
Definição — Informe termos específicos do tipo (sinônimos, palavras ignoradas ou abreviações).
-
Ativado — Ativa (ou desativa) as adições feitas aos conjuntos Palavras Ignoradas, Abreviações ou Sinônimo. Utilize essa opção quando testar as configurações de idioma.
-
Criar outro — Selecione para retornar a esta caixa de diálogo depois de clicar em Criar.
-
-
Clique em Criar.
-
Treine novamente o Módulo de Perguntas e Respostas.
Teste do Módulo de Perguntas e Respostas
A janela Módulo de Perguntas e Respostas do Testador permite que você teste suas perguntas de uma só vez ou como batch.
Depois de treinar o módulo de perguntas e respostas, você poderá testá-lo usando o testador Experimente Intenções/Módulo de Perguntas e Respostas (para acessar, clique em Experimente!). A resposta da habilidade pode incluir um carrossel de várias respostas. Ao contrário do teste de intenções, as respostas às perguntas do módulo de perguntas e respostas não são categorias de intenção (por exemplo, saldos ); em vez disso, são respostas textuais fornecidas pela linha content
no arquivo CSV.
A capacidade do módulo de perguntas e respostas (não o Mecanismo de Intenção) trata as respostas às declarações que você especifica. Essas respostas consistem em uma pergunta canônica definida que representa os tópicos de melhor ajuste (as respostas fornecidas da coluna content
no arquivo CSV). Essas perguntas canônicas são as primeiras perguntas inseridas no campo questions
do CSV que são associadas a cada tópico (isto é, a resposta no campo content
do arquivo CSV).
Descrição da ilustração qna-tester-w-precision.png
Testar uma Correspondência do Módulo de Perguntas e Respostas
-
Treine o módulo de perguntas e respostas.
-
Abra o testador clicando em Experimente! e escolhendo Módulo de Perguntas e Respostas.
-
Clique em Módulo de Perguntas e Respostas.
-
Como opção, clique em
para definir as opções de idioma e precisão de correspondência:
- Idioma — Escolha um idioma (se houver origens de dados multilíngues).
- Limites de Correspondência — Clique em Editar para definir a porcentagem mínima e máxima de tokens que um par pergunta/resposta deve conter para ser considerado correspondente (ou seja, uma correspondência do módulo de perguntas e respostas).
- Campos de Correspondência — Clique em Editar para selecionar o campo (ou campos) Perguntas e Respostas que deve corresponder à mensagem do usuário. As opções são:
- Tudo — Retorna as perguntas e respostas em que as palavras-chave da entrada do usuário correspondem a qualquer categoria, pergunta ou resposta do módulo de perguntas e respostas.
- Perguntas — Retorna as perguntas e respostas em que as palavras-chave da entrada do usuário correspondem às perguntas do módulo de perguntas e respostas
- Respostas — Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem à resposta do módulo de perguntas e respostas.
- Categorias — Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem a uma categoria do módulo de perguntas e respostas.
- Perguntas e Categorias - Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem à categoria do módulo de perguntas e respostas ou à resposta do módulo de perguntas e respostas.
-
Digite uma declaração e clique em Enviar.
-
Se necessário, clique em Adicionar à Pergunta; em seguida, treine novamente o módulo de perguntas e respostas.
Criar o Arquivo CSV para Teste de Batch
languageTag
, question
, match-1
, match-2
, match-3
e assim por diante.
-
languageTag
— Um código de cinco letras que representa o idioma e a configuração regional em que a pergunta de teste e as perguntas correspondentes são expressas. Por exemplo,en-US
. -
question
— A pergunta de teste. Essa pergunta não precisa corresponder a nenhuma das perguntas de treinamento, mas deve representar uma pergunta típica que um usuário pode fazer sobre o tópico em questão. -
match-1
match-2 …
— A primeira das perguntas canônicas que você acha que a pergunta de teste deve recuperar. Nós mostramos as perguntas canônicas para todas as correspondências do módulo de perguntas e respostas. Se a pergunta de teste precisar retornar apenas uma única correspondência do módulo de perguntas e respostas, digite a pergunta na coluna match-1 e deixe as demais colunas correspondentes vazias. -
queryInfo
— Um objeto JSON que usaoffset
ecategoryPath
para fazer drill-down e deslocamento de uma categoria e limite para paginação."{""offset"":0,""categoryPath"":[""General Account Information""],""limit"":3}"
Teste de Batch do Módulo de Perguntas e Respostas
-
Adicionar e configurar o componente System.Qna no fluxo de caixas de diálogo após o chat com a habilidade para criar um histórico de conversas.
-
Bater papo com a habilidade para criar o histórico de conversas.
-
Exportar o log da Conversa de Perguntas e Respostas usando o menu no mosaico da habilidade, escolhendo a opção Log da Conversa de Perguntas e Respostas na caixa de diálogo Exportar Log d Conversa.
-
Na janela Teste do Módulo de Perguntas e Respostas, alterne para a opção Batch.
-
Selecione o idioma.
-
Clique em Carregar.
-
Defina as opções de teste na caixa de diálogo Carregar Perguntas e Respostas: em seguida, clique em Testar.
-
Número máximo de testes simultâneos — O número de testes sendo executados em paralelo. O aumento do número de testes simultâneos pode agilizar os testes, mas também pode sobrecarregar o sistema.
-
Correspondências para Inclusão — Define o número de correspondências do módulo de perguntas e respostas incluídas no teste.
-
Exigir correspondências na mesma ordem — Permite que você aprove ou reprove uma correspondência dependendo de sua inclusão, ou de sua posição, dentro das correspondências melhores classificadas.
-
Em sua posição desativada, essa opção permite verificar correspondências quando os usuários digitam palavras-chave em vez de perguntas completas.
-
Limites de Correspondência — Clique em Editar para definir a porcentagem mínima e máxima de tokens que um par pergunta/resposta deve conter para ser considerado correspondente (ou seja, uma correspondência do módulo de perguntas e respostas).
Dica:
Defina aqui o mesmo valor definido para as propriedadesqnaMiniumumMatch
eminimumMatch
. Para saber mais sobre a definição de vários níveis, consulte System.Intent e System.Qna. - Campos de Correspondência — Clique em Editar para selecionar o campo (ou campos) Perguntas e Respostas que deve corresponder à mensagem do usuário. As opções são:
- Tudo — Retorna as perguntas e respostas em que as palavras-chave da entrada do usuário correspondem a qualquer categoria, pergunta ou resposta do módulo de perguntas e respostas.
- Perguntas — Retorna as perguntas e respostas em que as palavras-chave da entrada do usuário correspondem às perguntas do módulo de perguntas e respostas
- Respostas — Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem à resposta do módulo de perguntas e respostas.
- Categorias — Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem a uma categoria do módulo de perguntas e respostas.
- Perguntas e Categorias - Retorna as perguntas e respostas em que as palavras-chave na entrada do usuário correspondem à categoria do módulo de perguntas e respostas ou à resposta do módulo de perguntas e respostas.
Os testes reprovados são exibidos na parte superior dos resultados.
-
-
Para correspondências do módulo de perguntas e respostas aprovadas, você pode fazer drill-down e adicionar perguntas alternativas, modificar as respostas e, em seguida, treinar novamente o módulo de perguntas e respostas. Essas adições são feitas na origem de dados que implanta a habilidade, não nos dados de teste.
Como Configuro o Fluxo de Caixas de Diálogo para o Módulo de Perguntas e Resposta?
-
Intenção e QnA — Adiciona o componente
System.Intent
, mas com propriedades que definem o roteamento de transição para o componente do módulo de perguntas e respostas quando a declaração é determinada para ser uma pergunta, não uma solicitação transacional. Propriedades do Módulo de Perguntas e Respostas do Componente System.Intent descreve essas propriedades e Criando uma Habilidade com Fluxos de Intenções e Módulo de Perguntas e Respostas descreve o processo geral para criar uma habilidade com as funções de intenção e módulo de perguntas e respostas. -
QnA — Adiciona um modelo minimamente configurado para um componente System.Intent.
-
QnA Advanced — O mesmo que o modelo QnA, mas fornece propriedades opcionais para controle mais detalhado:
-
A configuração
keepTurn
para renunciar ou manter o controle da habilidade do fluxo de caixas de diálogo. -
Modularidade (chamando uma habilidade dedicada do módulo de perguntas e respostas). Consulte Habilidades Reutilizáveis do Módulo de Perguntas e Respostas.
-
Tamanho e paginação do QnA.
-
-
Clique em Fluxos na barra de navegação esquerda.
-
Clique em Adicionar Componentes no canto superior esquerdo da página. (Talvez seja necessário rolar para cima se o botão não estiver visível).
-
Escolha a paleta de componentes Idioma.
-
Escolha um dos três modelos de módulo de perguntas e respostas e use o menu Inserir Após para posicioná-lo na definição do fluxo de caixas de diálogo. Clique em Aplicar.Observação
Para implementar o suporte do módulo de perguntas e respostas, adicione um novo componenteSystem.Intent
(usando o modelo Intenção e QnA) à definição do fluxo de caixas de diálogo ou modifique um componenteSystem.Intent
existente para permitir transições para o componente do módulo de perguntas e respostas.
Criando uma Habilidade com os Fluxos de Intenção e Módulo de Perguntas e Respostas
-
Adicione o modelo Intenção com QnA ao fluxo de caixas de diálogo (acessado em Idioma).
-
Para o componente
System.Intent
, defina o seguinte:-
Adicione
qnaEnable: true
para ativar o roteador:intent: component: "System.Intent" properties: variable: "iResult" qnaEnable: true
-
Defina uma ação de transição para o estado do QnA:
Se a resolução da intenção estiver abaixo do limite de confiança, a habilidade vai disparar a açãotransitions: actions: Balances: "startBalances" Transactions: "startTxns" Send Money: "startPayments" Track Spending: "startTrackSpending" Dispute: "setDate" unresolvedIntent: "unresolved" qna: "qna"
qna
que o Mecanismo de Caixa de Diálogo para o estadoqna
. Nesse caso, a mensagem da habilidade inclui apenas o link Exibir Respostas.
Mas quando o Mecanismo de Intenção consegue resolver a mensagem acima do limite de confiança e corresponder a um módulo de perguntas e respostas, a mensagem da habilidade inclui links da intenção e da resposta do módulo de perguntas e respostas.No entanto, quando o Mecanismo de Intenção classifica a mensagem como solicitação, em vez de pergunta, a habilidade ignora o módulo de perguntas e respostas e roteia para o fluxo da intenção. Nesse caso, a mensagem só inclui a opção de intenção.qna: component: "System.QnA" transitions: actions: none: "unresolved" next: "intent" unresolved: component: "System.Output" properties: text: "Sorry I don't understand that question!" transitions: return: "unresolved"
Você pode modificar esse comportamento adicionando palavras e frases que esclareçam o roteamento da intenção e definindo a propriedade
qnaSkipIfIntentFound
do componente System.Intent.
-
Exemplos de Caixa de Diálogo do Módulo de Perguntas e Respostas
Roteamento do Módulo de Perguntas e Respostas para o Componente System.Intent
qnaEnable
do componente System.Intent
. Ele também mostra a transição para o estado com o módulo de perguntas e respostas e o próprio estado do módulo.
...
mainIntent:
component: "System.Intent"
properties:
variable: "userInput"
sourceVariable: "translated"
qnaEnable: true
qnaMatchFields: "categories+questions"
transitions:
actions:
Greeting: "greeting"
Inspire Me: "recommendCategories"
Returns: "startReturn"
qna: "qna"
View Reports: "setMobilePhone"
TrackOrders: "showOrderStatus"
unresolvedIntent: "unresolved"
Vision: "visionBasedProducts"
Shipping: "startShipping"
...
qna:
component: "System.QnA"
Suporte Estrangeiro e Multilíngue para Módulo de Perguntas e Respostas
-
Crie um arquivo de origem de dados específico para o idioma de destino.Observação
Não suportamos origens de dados em chinês. -
Se necessário, adicione quaisquer sinônimos ou atualize as palavras ignoradas.
-
Configure um serviço de tradução. Consulte Adicionar um Serviço de Tradução à sua Habilidade
-
Se a habilidade também incluir funções transacionais, ajuste a configuração de roteamento.
-
Configure o fluxo de caixas de diálogo para suporte multilíngue. Por exemplo :
metadata: platformVersion: "1.0" main: true name: "ChipCardMultipleLingualQnA" context: variables: greeting: "string" name: "string" cancelChoice: "string" rb: "resourcebundle" states: detect: component: "System.DetectLanguage" properties: ... transitions: ... qna: component: "System.QnA" properties: botName: "ChipCardMultipleLingualQnA" matchFields: "categories+questions" viewAnswerLabel: "${rb.viewAnswerLabel}" moreAnswersLabel: "${rb.moreAnswersLabel}" transitions: actions: none: "unresolved" next: "detect" unresolved: component: "System.Output" properties: text: "${rb.NoMatch}" transitions: return: "done"
Habilidades Reutilizáveis do Módulo de Perguntas e Respostas
É possível modular as definições de fluxo de caixas de diálogo criando habilidades reutilizáveis do módulo de perguntas e respostas que podem ser chamadas usando as propriedades botName
e QnaBotName
que pertencem aos componentes System.Intent
e System.QnA
.
Exemplo: propriedade botName
...
states:
qna:
component: "System.QnA"
properties:
botName: "FinancialQnABot"
transitions:
actions:
none: "unresolved"
next: "qna"
unresolved:
component: "System.Output"
properties:
text: "Sorry, I did not find any match. Can you rephrase the question?"
transitions:
return: "done"
Exemplo: botName e QnABotName
botName
e QnABotName
têm o mesmo valor.states:
intent:
component: "System.Intent"
properties:
botName: "FinancialQnABot"
qnaMatchFields: "categories+questions"
variable: "iResult"
qnaEnable: true
transitions:
actions:
Balances: "startBalances"
Transactions: "startTxns"
Send Money: "startPayments"
Track Spending: "startTrackSpending"
Dispute: "setDate"
unresolvedIntent: "unresolved"
qna: "qna"
...
qna:
component: "System.QnA"
properties:
botName: "FinancialQnABot"
matchFields: "categories+questions"
transitions:
actions:
none: "unresolved"
next: "intent"
Exemplo: botName e qnaBotName no System.Intent
botName
em dois contextos distintos: no componente System.Intent
, onde ela chama uma habilidade transacional, e no componente System.Qna
, onde ela chama uma habilidade do módulo de perguntas e respostas.states:
intent:
component: "System.Intent"
properties:
botName: "FinancialBot"
qnaBotName: "FinancialQnABot"
variable: "iResult"
qnaEnable: true
transitions:
actions:
Balances: "startBalances"
Transactions: "startTxns"
Send Money: "startPayments"
Track Spending: "startTrackSpending"
Dispute: "setDate"
unresolvedIntent: "unresolved"
qna: "qna"
...
qna:
component: "System.QnA"
properties:
botName: "FinancialQnABot"
transitions:
actions:
none: "unresolved"
next: "intent"
Configurar o Roteamento de Intenção e Módulo de Perguntas e Respostas
Fornecemos palavras comumente usadas e frases de abertura que indicam comandos ou perguntas na página Configuração do Roteamento do Módulo de Perguntas e Respostas. Você pode adicionar o conteúdo específico do domínio a essa página que permite ao roteador discernir entre módulo de perguntas e respostas e intenções. Para isso:
-
Clique em Definições (
) na barra de navegação esquerda.
-
Clique em Configuração do Roteamento do Módulo de Perguntas e Respostas.
-
Selecione um idioma.
-
Adicione ou remova palavras e frases nas categorias a seguir que impactam o roteamento da intenção.
-
Configuração da Transação — Você pode adicionar verbos e frases que ajudam o mecanismo de Intenção a identificar uma mensagem como transação.
-
Verbos de Solicitações Adicionais — As mensagens que começam com solicitações ou comandos como compre, verifique ou cancele são consideradas transacionais e roteadas para uma intenção. Essas palavras, que estão no modo imperativo, indicam uma transação, não uma pergunta.
Nós mantemos uma biblioteca de verbos no imperativo amplamente usados para cada idioma suportado. Entre elas, estão palavras como pague, remova e encerre. Você pode adicionar verbos de solicitação específicos da empresa ou do público-alvo.
-
Expansão de Verbos de Solicitação — Um conjunto de prefixos (un, dis, re) que, quando aplicados, os verbos de solicitação adicionados no campo Verbos de Solicitação Adicionais, aumentam o vocabulário que identifica uma mensagem como vinculada à intenção.
-
Prefixo de Sentença de Solicitação — Palavras e frases associadas a solicitações, como Você pode e Não. As mensagens que começam com essas palavras são roteadas como intenções. Nós mantemos uma biblioteca dessas palavras e frases orientadas a transação que você pode atualizar.
-
-
Configuração de Perguntas — Um conjunto de palavras e frases de uso comum que geralmente são usadas em perguntas. Estas incluem frases do tipo como eu e Eu preciso saber. Elas indicam que um usuário está fazendo uma pergunta, não solicitando uma transação. Quando uma habilidade recebe uma mensagem que começa com uma delas, ela otimiza sua resposta priorizando o link para a resposta do módulo de perguntas e respostas em detrimento do link para a resposta da intenção. Geralmente, o comportamento é o inverso: a habilidade concede o primeiro lugar às intenções que pontuam acima do limite de confiança configurado. Por exemplo, quando uma habilidade recebe How do I terminate my policy, ela consegue discernir facilmente que o usuário está procurando informações e coloca o link Exibir Respostas em primeiro.
Quando a entrada do usuário é ambígua, o link Módulo de Perguntas e Respostas pode não obter o primeiro lugar na classificação. Por exemplo, o roteador pode não conseguir identificar can I terminate my policy como intenção ou módulo de perguntas e respostas. A habilidade mostra ambas as opções porque há uma pontuação de intenção acima do limite de confiança e uma pergunta correspondente, mas classifica a intenção em primeiro.
Descrição da ilustração prioritized-intent-response.png
-