Definindo o contexto da intenção - Amazon Lex

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á.

Definindo o contexto da intenção

Você pode fazer com que o Amazon Lex acione intenções com base no contexto. Um contexto é uma variável de estado que pode ser associada a uma intenção quando você define um bot. Você configura os contextos para uma intenção ao criar a intenção usando o console ou usando a CreateIntentoperação. Você só pode usar o contexto na localidade em inglês (EUA) (en-US).

Existem dois tipos de relacionamentos para contextos, contextos de saída e contextos de entrada. Um contexto de saída se torna ativo quando uma intenção associada é cumprida. Um contexto de saída é retornado ao seu aplicativo na resposta da RecognizeUtteranceoperação RecognizeTextou e é definido para a sessão atual. Depois que um contexto é ativado, ele permanece ativo pelo número de turnos ou limite de tempo configurado quando o contexto foi definido.

Um contexto de entrada especifica as condições sob as quais uma intenção pode ser reconhecida. Uma intenção só pode ser reconhecida durante uma conversa quando todos os seus contextos de entrada estão ativos. Uma intenção sem contextos de entrada é sempre elegível para reconhecimento.

O Amazon Lex gerencia automaticamente o ciclo de vida dos contextos que são ativados pelo cumprimento de intenções com contextos de saída. Você também pode definir contextos ativos em uma chamada para aRecognizeUtterance operaçãoRecognizeText ou.

Também é possível definir o contexto de uma conversa usando a função do Lambda para a intenção. O contexto de saída do Amazon Lex é enviado para o evento de entrada da função Lambda. A função Lambda pode enviar contextos em sua resposta. Para obter mais informações, consulte Usando umaAWS Lambda função.

Por exemplo, suponha que você tenha a intenção de alugar um carro configurado para retornar um contexto de saída chamado “book_car_fulfilled”. Quando a intenção é cumprida, o Amazon Lex define a variável de contexto de saída “book_car_fulfilled”. Como “book_car_fulfilled” é um contexto ativo, uma intenção com o contexto “book_car_fulfilled” definido como um contexto de entrada agora é considerada para reconhecimento, desde que uma expressão do usuário seja reconhecida como uma tentativa de obter essa intenção. Você pode usar isso para fins que só façam sentido depois de reservar um carro, como enviar um recibo por e-mail ou modificar uma reserva.

Contexto de saída

O Amazon Lex ativa os contextos de saída de uma intenção quando a intenção é cumprida. Você pode usar o contexto de saída para controlar as intenções elegíveis para acompanhar a intenção atual.

Cada contexto tem uma lista de parâmetros que são mantidos na sessão. Os parâmetros são os valores do slot para a intenção cumprida. Você pode usar esses parâmetros para preencher previamente os valores dos slots para outros fins. Para obter mais informações, consulte Usando valores de slot padrão.

Você configura o contexto de saída ao criar uma intenção com o console ou com a CreateIntentoperação. Você pode configurar uma intenção com mais de um contexto de saída. Quando a intenção é cumprida, todos os contextos de saída são ativados e retornados na RecognizeUtteranceresposta RecognizeTextor.

Ao definir um contexto de saída, você também define seu tempo de vida, a duração ou o número de turnos em que o contexto é incluído nas respostas do Amazon Lex. Um turno é uma solicitação do seu aplicativo para o Amazon Lex. Quando o número de turnos ou o tempo expiram, o contexto não está mais ativo.

Seu aplicativo pode usar o contexto de saída conforme necessário. Por exemplo, seu aplicativo pode usar o contexto de saída para:

  • Altere o comportamento do aplicativo com base no contexto. Por exemplo, um aplicativo de viagem pode ter uma ação diferente para o contexto “book_car_fulfilled” e “rental_hotel_fulfilled”.

  • Retorne o contexto de saída para o Amazon Lex como o contexto de entrada para o próximo enunciado. Se o Amazon Lex reconhecer o enunciado como uma tentativa de obter uma intenção, ele usa o contexto para limitar as intenções que podem ser retornadas àquelas com o contexto especificado.

Contexto de entrada

Você define um contexto de entrada para limitar os pontos na conversa em que a intenção é reconhecida. Intenções sem um contexto de entrada são sempre elegíveis para serem reconhecidas.

Você define os contextos de entrada aos quais uma intenção responde usando o console ou aCreateIntent operação. Uma intenção pode ter mais de um contexto de entrada.

Para uma intenção com mais de um contexto de entrada, todos os contextos devem estar ativos para acionar a intenção. Você pode definir um contexto de entrada ao chamar a PutSessionoperação RecognizeTextRecognizeUtterance, ou.

Você pode configurar os slots com a intenção de obter valores padrão do contexto ativo atual. Os valores padrão são usados quando o Amazon Lex reconhece uma nova intenção, mas não recebe um valor de slot. Você especifica o nome do contexto e o nome do slot no formulário#context-name.parameter-name ao definir o slot. Para obter mais informações, consulte Usando valores de slot padrão.