Usar pontuações de confiança - Amazon Lex V1

Se você estiver usando o Amazon Lex V2, consulte o Guia do Amazon Lex V2.

 

Se você estiver usando o Amazon Lex V1, recomendamos atualizar seus bots para o Amazon Lex V2. Não estamos mais adicionando novos atributos à V1 e recomendamos o uso da V2 para todos os novos bots.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usar pontuações de confiança

Quando um usuário faz uma declaração, o Amazon Lex usa a compreensão da linguagem natural (NLU) para entender a solicitação do usuário e retornar a intenção correta. Por padrão, o Amazon Lex retorna a intenção mais provável definida pelo seu bot.

Em alguns casos, pode ser difícil para o Amazon Lex determinar a intenção mais provável. Por exemplo, o usuário pode fazer uma declaração ambígua ou pode haver duas intenções semelhantes. Para ajudar a determinar a intenção correta, você pode combinar seu conhecimento de domínio com as pontuações de confiança de uma lista de intenções alternativas. Uma pontuação de confiança é uma classificação fornecida pelo Amazon Lex que mostra o grau de confiança de que uma intenção é a intenção correta.

Para determinar a diferença entre duas intenções alternativas, você pode comparar suas pontuações de confiança. Por exemplo, se uma intenção tem uma pontuação de confiança de 0,95 e outra tem uma pontuação de 0,65, a primeira intenção provavelmente está correta. No entanto, se uma intenção tiver uma pontuação de 0,75 e outra tiver uma pontuação de 0,72, haverá ambiguidade entre as duas intenções que você poderá discriminar usando o conhecimento do domínio em seu aplicativo.

Você também pode usar pontuações de confiança para criar aplicativos de teste que determinam se as mudanças nas declarações de uma intenção fazem diferença no comportamento do bot. Por exemplo, você pode obter as pontuações de confiança das intenções de um bot usando um conjunto de declarações e, em seguida, atualizar as intenções com novas declarações. Em seguida, você pode verificar as pontuações de confiança para ver se houve uma melhora.

As pontuações de confiança que o Amazon Lex retorna são valores comparativos. Você não deve confiar neles como uma pontuação absoluta. Os valores podem mudar com base em melhorias no Amazon Lex.

Quando você usa pontuações de confiança, o Amazon Lex retorna a intenção mais provável e até 4 intenções alternativas com suas pontuações associadas em cada resposta. Se todas as pontuações de confiança forem menores que um limite, o Amazon Lex incluirá o AMAZON.FallbackIntent, o AMAZON.KendraSearchIntent, o ou ambos, se você os tiver configurado. É possível usar o limite padrão ou definir seu próprio limite.

O código JSON a seguir mostra o alternativeIntents campo na resposta da PostText operação.

"alternativeIntents": [ { "intentName": "string", "nluIntentConfidence": { "score": number }, "slots": { "string" : "string" } } ],

Defina o limite ao criar ou atualizar um bot. Você pode usar a API ou o console do Amazon Lex. Para as regiões listadas abaixo, você precisa se inscrever para permitir melhorias de precisão e pontuações de confiança. No console, escolha pontuações de confiança na seção Opções avançadas. Usando a API, defina o parâmetro enableModelImprovements ao chamar a PutBot operação. :

  • Leste dos EUA (Norte da Virgínia) (us-east-1)

  • Oeste dos EUA (Oregon) (us-west-2)

  • Ásia-Pacífico (Sydney) (ap-southeast-2)

  • Europa (Irlanda) (eu-west-1)

Em todas as outras regiões, melhorias na precisão e suporte à pontuação de confiança estão disponíveis por padrão.

Para alterar o limite de confiança, defina-o no console ou usando a operação PutBot. O limite deve ser um número entre 1,00 e 0,00.

Para usar o console, defina o limite de confiança ao criar ou atualizar seu bot.

Para definir o limite de confiança ao criar um bot (Console)
  • Em Criar seu bot, insira um valor no campo Limite da pontuação de confiança.

Para atualizar o limite de confiança (Console)
  1. Na lista de bots, escolha o bot a ser atualizado.

  2. Escolha a guia Configurações.

  3. Na barra de navegação à esquerda, selecione Geral.

  4. Atualize o valor no campo Limite da pontuação de confiança.

Para definir ou atualizar o limite de confiança (SDK)
  • Defina o parâmetro nluIntentConfidenceThreshold da operação PutBot. O código JSON a seguir mostra o parâmetro que está sendo definido.

    "nluIntentConfidenceThreshold": 0.75,

Gerenciamento de sessões

Para alterar a intenção que o Amazon Lex usa em uma conversa com o usuário, você pode usar a resposta da função do Lambda do hook de código de diálogo ou usar as APIs de gerenciamento de sessão em seu aplicativo personalizado.

Usar um URL da função do Lambda

Quando você usa uma função do Lambda, o Amazon Lex a chama com uma estrutura JSON que contém a entrada para a função. A estrutura JSON contém um campo chamado currentIntent que contém a intenção que o Amazon Lex identificou como a intenção mais provável para a expressão do usuário. A estrutura JSON também inclui um campo alternativeIntents que contém até quatro intenções adicionais que podem satisfazer a intenção do usuário. Cada intenção inclui um campo chamado nluIntentConfidenceScore que contém a pontuação de confiança que o Amazon Lex atribuiu à intenção.

Para usar uma intenção alternativa, você a especifica na ação de diálogo ConfirmIntent ou ElicitSlot na função do Lambda.

Para obter mais informações, consulte Uso de funções do Lambda.

Usar a API de gerenciamento de sessões

Para usar uma intenção diferente da intenção atual, utilize a operação PutSession. Por exemplo, se você decidir que a primeira alternativa é preferível à intenção escolhida pelo Amazon Lex, use a operação PutSession para alterar as intenções de modo que a próxima intenção com a qual o usuário vai interagir seja aquela que você selecionou.

Para obter mais informações, consulte Gerenciamento de sessões com a API do Amazon Lex.