Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

AWS Lambda formato de evento de entrada para Lex V2

Modo de foco
AWS Lambda formato de evento de entrada para Lex V2 - Guia do desenvolvedor

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

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

A primeira etapa na integração de uma função do Lambda em seu bot do Amazon Lex V2 é entender os campos no evento Amazon Lex V2 e determinar as informações desses campos que você deseja usar ao escrever seu script. O objeto JSON a seguir mostra o formato geral de um evento do Amazon Lex V2 passado para uma função do Lambda:

nota

O formato de entrada pode mudar sem uma alteração correspondente para a messageVersion. Seu código não deve gerar um erro, se novos campos estiverem presentes.

{ "messageVersion": "1.0", "invocationSource": "DialogCodeHook | FulfillmentCodeHook", "inputMode": "DTMF | Speech | Text", "responseContentType": "audio/mpeg | audio/ogg | audio/pcm | text/plain; charset=utf-8", "sessionId": string, "inputTranscript": string, "invocationLabel": string, "bot": { "id": string, "name": string, "localeId": string, "version": string, "aliasId": string, "aliasName": string }, "interpretations": [ { "interpretationSource": "Bedrock | Lex", "intent": { // see Intenção for details about the structure }, "nluConfidence": number, "sentimentResponse": { "sentiment": "MIXED | NEGATIVE | NEUTRAL | POSITIVE", "sentimentScore": { "mixed": number, "negative": number, "neutral": number, "positive": number } } }, ... ], "proposedNextState": { "dialogAction": { "slotToElicit": string, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }, "intent": { // see Intenção for details about the structure }, "prompt": { "attempt": string } }, "requestAttributes": { string: string, ... }, "sessionState": { // see Estado da sessão for details about the structure }, "transcriptions": [ { "transcription": string, "transcriptionConfidence": number, "resolvedContext": { "intent": string }, "resolvedSlots": { slot name: { // see Slots for details about the structure }, ... } }, ... ] }

Cada campo no evento de entrada é descrito a seguir:

A versão da mensagem que identifica o formato dos dados de evento que estão indo para a função do Lambda e o formato esperado da resposta de uma função do Lambda.

nota

Você configura esse valor ao definir uma intenção. Na implementação atual, apenas o Amazon Lex V2 oferece suporte à versão 1.0 da mensagem. Portanto, o console assume o valor padrão de 1.0 e não mostra a versão da mensagem.

A versão da mensagem que identifica o formato dos dados de evento que estão indo para a função do Lambda e o formato esperado da resposta de uma função do Lambda.

nota

Você configura esse valor ao definir uma intenção. Na implementação atual, apenas o Amazon Lex V2 oferece suporte à versão 1.0 da mensagem. Portanto, o console assume o valor padrão de 1.0 e não mostra a versão da mensagem.

O hook de código que o chamou da função do Lambda. Os seguintes valores são possíveis:

DialogCodeHook: o Amazon Lex V2 chamou a função do Lambda após a entrada do usuário.

FulfillmentCodeHook: o Amazon Lex V2 chamou a função do Lambda depois de preencher todos os slots necessários e a intenção estar pronta para ser cumprida.

O hook de código que o chamou da função do Lambda. Os seguintes valores são possíveis:

DialogCodeHook: o Amazon Lex V2 chamou a função do Lambda após a entrada do usuário.

FulfillmentCodeHook: o Amazon Lex V2 chamou a função do Lambda depois de preencher todos os slots necessários e a intenção estar pronta para ser cumprida.

O modo do enunciado do usuário. Os valores possíveis são:

DTMF: o usuário insere o enunciado usando um teclado de tom sensível ao toque (multifrequência de tons duplos).

Speech: o usuário falou o enunciado.

Text: o usuário digitou o enunciado.

O modo do enunciado do usuário. Os valores possíveis são:

DTMF: o usuário insere o enunciado usando um teclado de tom sensível ao toque (multifrequência de tons duplos).

Speech: o usuário falou o enunciado.

Text: o usuário digitou o enunciado.

O modo de resposta do bot ao usuário. text/plain; charset=utf-8 indica que o último enunciado foi escrito, enquanto um valor que começa com audio indica que o último enunciado foi falado.

O modo de resposta do bot ao usuário. text/plain; charset=utf-8 indica que o último enunciado foi escrito, enquanto um valor que começa com audio indica que o último enunciado foi falado.

O identificador de sessão alfanumérico usado para a conversa.

O identificador de sessão alfanumérico usado para a conversa.

Uma transcrição da entrada do usuário.

  • Para entrada de texto, esse é o texto que o usuário digitou. Para entrada DTMF, essa é a chave que o usuário insere.

  • Para entrada de voz, esse é o texto no qual o Amazon Lex V2 converte o enunciado do usuário para invocar uma intenção ou preencher um slot.

Uma transcrição da entrada do usuário.

  • Para entrada de texto, esse é o texto que o usuário digitou. Para entrada DTMF, essa é a chave que o usuário insere.

  • Para entrada de voz, esse é o texto no qual o Amazon Lex V2 converte o enunciado do usuário para invocar uma intenção ou preencher um slot.

Um valor que indica a resposta que invocou a função do Lambda. Você pode definir rótulos de invocação para a resposta inicial, os slots e a resposta de confirmação.

Um valor que indica a resposta que invocou a função do Lambda. Você pode definir rótulos de invocação para a resposta inicial, os slots e a resposta de confirmação.

Informações sobre o bot que processou a solicitação, consistindo nos seguintes campos:

  • id: o identificador atribuído ao bot quando você o criou. Você pode ver o ID do bot no console do Amazon Lex V2 na página Configurações do bot.

  • name: o nome que você deu ao bot ao criá-lo.

  • localeId – O identificador da localidade que você usou para o bot. Para obter uma lista de localidades, consulte Idiomas e locais aceitos pelo Amazon Lex V2.

  • version: a versão do bot que processou a solicitação.

  • aliasId: o identificador atribuído ao alias do bot quando você o criou. Você pode ver o ID do alias do bot no console do Amazon Lex V2 na página Aliases. Se você não conseguir ver o ID do alias na lista, escolha o ícone de engrenagem no canto superior direito e ative o ID do alias.

  • aliasName: o nome que você deu ao alias do bot.

Informações sobre o bot que processou a solicitação, consistindo nos seguintes campos:

  • id: o identificador atribuído ao bot quando você o criou. Você pode ver o ID do bot no console do Amazon Lex V2 na página Configurações do bot.

  • name: o nome que você deu ao bot ao criá-lo.

  • localeId – O identificador da localidade que você usou para o bot. Para obter uma lista de localidades, consulte Idiomas e locais aceitos pelo Amazon Lex V2.

  • version: a versão do bot que processou a solicitação.

  • aliasId: o identificador atribuído ao alias do bot quando você o criou. Você pode ver o ID do alias do bot no console do Amazon Lex V2 na página Aliases. Se você não conseguir ver o ID do alias na lista, escolha o ícone de engrenagem no canto superior direito e ative o ID do alias.

  • aliasName: o nome que você deu ao alias do bot.

Uma lista de informações sobre intenções que o Amazon Lex V2 considera possíveis coincidências com o enunciado do usuário. Cada item é uma estrutura que fornece informações sobre a correspondência do enunciado com uma intenção, com o seguinte formato:

{ "intent": { // see Intenção for details about the structure }, "interpretationSource": "Bedrock | Lex", "nluConfidence": number, "sentimentResponse": { "sentiment": "MIXED | NEGATIVE | NEUTRAL | POSITIVE", "sentimentScore": { "mixed": number, "negative": number, "neutral": number, "positive": number } } }

Os campos dentro da estrutura são os seguintes:

  • intent: uma estrutura que contém informações sobre a intenção. Consulte Intenção para obter detalhes sobre a estrutura.

  • nluConfidence: uma pontuação que indica o grau de confiança do Amazon Lex V2 de que a intenção corresponde à intenção do usuário.

  • sentimentResponse: uma análise do sentimento da resposta, que contém os seguintes campos:

    • sentiment: indica se o sentimento do enunciado é POSITIVE, NEGATIVE, NEUTRAL, ou MIXED.

    • sentimentScore: uma estrutura que mapeia cada sentimento em um número que indica o quanto o Amazon Lex V2 está confiante de que o enunciado transmite esse sentimento.

  • InterpretationSource: indica se um slot foi resolvido pelo Amazon Lex ou pelo Amazon Bedrock.

Uma lista de informações sobre intenções que o Amazon Lex V2 considera possíveis coincidências com o enunciado do usuário. Cada item é uma estrutura que fornece informações sobre a correspondência do enunciado com uma intenção, com o seguinte formato:

{ "intent": { // see Intenção for details about the structure }, "interpretationSource": "Bedrock | Lex", "nluConfidence": number, "sentimentResponse": { "sentiment": "MIXED | NEGATIVE | NEUTRAL | POSITIVE", "sentimentScore": { "mixed": number, "negative": number, "neutral": number, "positive": number } } }

Os campos dentro da estrutura são os seguintes:

  • intent: uma estrutura que contém informações sobre a intenção. Consulte Intenção para obter detalhes sobre a estrutura.

  • nluConfidence: uma pontuação que indica o grau de confiança do Amazon Lex V2 de que a intenção corresponde à intenção do usuário.

  • sentimentResponse: uma análise do sentimento da resposta, que contém os seguintes campos:

    • sentiment: indica se o sentimento do enunciado é POSITIVE, NEGATIVE, NEUTRAL, ou MIXED.

    • sentimentScore: uma estrutura que mapeia cada sentimento em um número que indica o quanto o Amazon Lex V2 está confiante de que o enunciado transmite esse sentimento.

  • InterpretationSource: indica se um slot foi resolvido pelo Amazon Lex ou pelo Amazon Bedrock.

Se a função do Lambda definir o dialogAction do sessionState para Delegate, esse campo aparecerá e mostrará a proposta do Amazon Lex V2 para a próxima etapa da conversa. Caso contrário, o próximo estado dependerá das configurações que você retorna na resposta da sua função do Lambda. Essa estrutura só estará presente se as duas afirmações abaixo forem verdadeiras:

  1. O valor de invocationSource é DialogCodeHook

  2. O type previsto de dialogAction é ElicitSlot.

Você pode usar essas informações para adicionar runtimeHints no ponto certo da conversa. Consulte Como melhorar o reconhecimento de valores de slots com dicas de runtime na conversa Para mais informações. proposedNextState é uma estrutura que contém os seguintes campos:

A estrutura dos dados de proposedNextState é a seguinte:

"proposedNextState": { "dialogAction": { "slotToElicit": string, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }, "intent": { // see Intenção for details about the structure }, "prompt": { "attempt": string } }
  • dialogAction: contém informações sobre a próxima etapa proposta pelo Amazon Lex V2. Os campos da estrutura são os seguintes:

    • slotToElicit— O slot para obter o próximo, conforme proposto pelo Amazon Lex V2. Esse campo aparecerá somente se o valor de type for ElicitSlot.

    • tipo: a próxima etapa da conversa, conforme proposto pelo Amazon Lex V2. Os seguintes valores são possíveis:

      Delegate: o Amazon Lex V2 determina a próxima ação.

      ElicitIntent: a próxima ação é extrair uma intenção do usuário.

      ElicitSlot: a próxima ação é extrair um valor de slot do usuário.

      Close: encerra o processo de cumprimento da intenção e indica que não haverá uma resposta do usuário.

      ConfirmIntent: a próxima ação é perguntar ao usuário se os slots estão corretos e se a intenção está pronta para ser cumprida.

  • intent: a intenção que o bot determinou que o usuário está tentando cumprir. Consulte Intenção para obter detalhes sobre a estrutura.

  • prompt: uma estrutura que contém o campo attempt, que é mapeado para um valor que especifica quantas vezes o Amazon Lex V2 solicitou ao usuário o próximo slot. Os valores possíveis são Initial para a primeira tentativa e Retry1, Retry2, Retry3, Retry4 e Retry5 para as tentativas subsequentes.

Se a função do Lambda definir o dialogAction do sessionState para Delegate, esse campo aparecerá e mostrará a proposta do Amazon Lex V2 para a próxima etapa da conversa. Caso contrário, o próximo estado dependerá das configurações que você retorna na resposta da sua função do Lambda. Essa estrutura só estará presente se as duas afirmações abaixo forem verdadeiras:

  1. O valor de invocationSource é DialogCodeHook

  2. O type previsto de dialogAction é ElicitSlot.

Você pode usar essas informações para adicionar runtimeHints no ponto certo da conversa. Consulte Como melhorar o reconhecimento de valores de slots com dicas de runtime na conversa Para mais informações. proposedNextState é uma estrutura que contém os seguintes campos:

A estrutura dos dados de proposedNextState é a seguinte:

"proposedNextState": { "dialogAction": { "slotToElicit": string, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }, "intent": { // see Intenção for details about the structure }, "prompt": { "attempt": string } }
  • dialogAction: contém informações sobre a próxima etapa proposta pelo Amazon Lex V2. Os campos da estrutura são os seguintes:

    • slotToElicit— O slot para obter o próximo, conforme proposto pelo Amazon Lex V2. Esse campo aparecerá somente se o valor de type for ElicitSlot.

    • tipo: a próxima etapa da conversa, conforme proposto pelo Amazon Lex V2. Os seguintes valores são possíveis:

      Delegate: o Amazon Lex V2 determina a próxima ação.

      ElicitIntent: a próxima ação é extrair uma intenção do usuário.

      ElicitSlot: a próxima ação é extrair um valor de slot do usuário.

      Close: encerra o processo de cumprimento da intenção e indica que não haverá uma resposta do usuário.

      ConfirmIntent: a próxima ação é perguntar ao usuário se os slots estão corretos e se a intenção está pronta para ser cumprida.

  • intent: a intenção que o bot determinou que o usuário está tentando cumprir. Consulte Intenção para obter detalhes sobre a estrutura.

  • prompt: uma estrutura que contém o campo attempt, que é mapeado para um valor que especifica quantas vezes o Amazon Lex V2 solicitou ao usuário o próximo slot. Os valores possíveis são Initial para a primeira tentativa e Retry1, Retry2, Retry3, Retry4 e Retry5 para as tentativas subsequentes.

Uma estrutura que contém os atributos de sessão específicos à solicitação que o cliente envia na solicitação. Use atributos de solicitação para passar informações que não precisam ser mantidas durante toda a sessão. Se não houver atributos de solicitação, o valor será nulo. Para obter mais informações, consulte Definição de atributos de solicitação para seu bot do Lex V2.

Uma estrutura que contém os atributos de sessão específicos à solicitação que o cliente envia na solicitação. Use atributos de solicitação para passar informações que não precisam ser mantidas durante toda a sessão. Se não houver atributos de solicitação, o valor será nulo. Para obter mais informações, consulte Definição de atributos de solicitação para seu bot do Lex V2.

O estado atual da conversa entre o usuário e seu bot do Amazon Lex V2. Consulte Estado da sessão para obter detalhes sobre a estrutura.

O estado atual da conversa entre o usuário e seu bot do Amazon Lex V2. Consulte Estado da sessão para obter detalhes sobre a estrutura.

Uma lista de transcrições que o Amazon Lex V2 considera possíveis coincidências com o enunciado do usuário. Para obter mais informações, consulte Uso de pontuações de confiança na transcrição de voz para melhorar as conversas com seu bot do Lex V2. Cada item é um objeto com o seguinte formato que contém informações sobre uma possível transcrição:

{ "transcription": string, "transcriptionConfidence": number, "resolvedContext": { "intent": string }, "resolvedSlots": { slot name: { // see Slots for details about the structure }, ... } }

Os campos são descritos abaixo:

  • transcription: uma transcrição que o Amazon Lex V2 considera uma possível correspondência com o enunciado de áudio do usuário.

  • transcriptionConfidence: uma pontuação que indica o grau de confiança do Amazon Lex V2 de que a intenção corresponde à intenção do usuário.

  • resolvedContext: uma estrutura que contém o campo intent que mapeia a intenção à qual o enunciado pertence.

  • resolvedSlots: uma estrutura cujas chaves são os nomes de cada slot que é resolvido pelo enunciado. Cada nome de slot é mapeado para uma estrutura que contém informações sobre esse slot. Consulte Slots para obter detalhes sobre a estrutura.

Uma lista de transcrições que o Amazon Lex V2 considera possíveis coincidências com o enunciado do usuário. Para obter mais informações, consulte Uso de pontuações de confiança na transcrição de voz para melhorar as conversas com seu bot do Lex V2. Cada item é um objeto com o seguinte formato que contém informações sobre uma possível transcrição:

{ "transcription": string, "transcriptionConfidence": number, "resolvedContext": { "intent": string }, "resolvedSlots": { slot name: { // see Slots for details about the structure }, ... } }

Os campos são descritos abaixo:

  • transcription: uma transcrição que o Amazon Lex V2 considera uma possível correspondência com o enunciado de áudio do usuário.

  • transcriptionConfidence: uma pontuação que indica o grau de confiança do Amazon Lex V2 de que a intenção corresponde à intenção do usuário.

  • resolvedContext: uma estrutura que contém o campo intent que mapeia a intenção à qual o enunciado pertence.

  • resolvedSlots: uma estrutura cujas chaves são os nomes de cada slot que é resolvido pelo enunciado. Cada nome de slot é mapeado para uma estrutura que contém informações sobre esse slot. Consulte Slots para obter detalhes sobre a estrutura.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.