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

Slots

Os slots são valores fornecidos pelo usuário para cumprir a intenção. Existem dois tipos de slots:

  • Tipo de slot embutido: você pode usar tipos de slots integrados para capturar valores padrão, como número, nome e cidade. Para obter os tipos de slot embutidos com suporte, consulte Tipos de slot integrados.

  • Tipo de slot personalizado: você pode usar tipos de slots personalizados para capturar valores personalizados específicos da intenção. Por exemplo, você pode usar um tipo de slot personalizado para capturar o tipo de conta como “Cheque” ou “Poupança”. Para obter mais informações, consulte Tipo de slot personalizado.

Para definir um slot em uma intenção, você precisa configurar o seguinte:

  • Informações do slot: esse campo contém um nome e uma descrição opcional para o slot. Por exemplo, você pode fornecer o nome do slot como “AccountNumber” para capturar os números da conta. Se o espaço for necessário como parte do fluxo de conversação para cumprir a intenção, ele deverá ser marcado como necessário.

  • Tipo de slot: um tipo de slot define a lista de valores que um slot pode aceitar. Você pode criar um tipo de slot personalizado ou usar um tipo de slot predefinido.

  • Prompt de slot: um prompt de slot é uma pergunta feita ao usuário para coletar informações. Você pode configurar o número de novas tentativas usadas para coletar informações e a variação do prompt usado para cada nova tentativa. Também é possível ativar a invocação de uma função do Lambda após cada nova tentativa para processar a entrada capturada e tentar resolver para uma entrada válida.

  • Esperar e continuar (opcional): ao ativar esse comportamento, os usuários podem dizer frases como “espere um segundo” para fazer com que o bot espere que eles encontrem as informações e as forneçam. Isso é ativado somente para streaming de conversas. Para obter mais informações, consulte Permitir que o bot Amazon Lex V2 espere que o usuário forneça mais informações durante uma pausa.

  • Respostas de captura de slots: você pode configurar uma resposta de sucesso e uma resposta de falha com base no resultado da captura do valor do slot a partir da entrada do usuário.

  • Ramificação condicional: você pode aplicar condições depois de reproduzir a resposta inicial. Quando uma condição é avaliada como verdadeira, as ações que você define são tomadas. Para obter mais informações, consulte Adicionar condições às conversas ramificadas.

  • Hook de código de diálogo: você também pode usar um hook de código Lambda para validar os valores do slot e executar a lógica de negócios. Para obter mais informações, consulte Invocar hook de código de diálogo.

  • Tipo de entrada do usuário: você pode configurar o tipo de entrada para que o bot possa aceitar uma modalidade específica. Por padrão, tanto o áudio quanto as DTMF modalidades são aceitos. Você pode configurá-lo seletivamente para somente áudio ou DTMF somente.

  • Tempos limite e durações de entrada de áudio: você pode configurar tempos limite de áudio, incluindo tempo limite de voz e tempo limite de silêncio. Além disso, a duração máxima do áudio também pode ser definida.

  • DTMFtempo limite de entrada, caracteres e comprimentos — Você pode definir o DTMF tempo limite junto com o caractere de exclusão e o caractere final. Além disso, você pode definir o DTMF comprimento máximo.

  • Tamanho do texto: você pode definir o tamanho máximo para a modalidade de texto.

Depois que o prompt do slot é reproduzido, o usuário fornece o valor do slot como entrada. Se o Amazon Lex V2 não entender o valor de um slot fornecido pelo usuário, ele tentará extrair o slot novamente até entender um valor ou até exceder o número máximo de novas tentativas que você configurou para o slot. Usando as configurações avançadas de repetição, você pode definir os tempos limite, restringir o tipo de entrada e ativar ou desativar a interrupção da solicitação inicial e das novas tentativas. Depois de cada tentativa de capturar a entrada, o Amazon Lex V2 pode chamar a função do Lambda configurada para o bot com um rótulo de invocação fornecido para novas tentativas. Você pode usar a função do Lambda, por exemplo, para aplicar sua lógica de negócios para tentar resolvê-la com um valor válido. Essa função do Lambda pode ser ativada nas Opções avançadas para solicitações de slots.

Configure os prompts do slot para que seu bot obtenha informações.

Você pode definir as respostas que o bot deve enviar ao usuário quando o valor do slot for inserido ou se o número máximo de novas tentativas for excedido. Por exemplo, para um bot para agendar o serviço de um carro, você pode enviar uma mensagem ao usuário quando o número de identificação do veículo (VIN) for inserido:

Obrigado por fornecer o VIN número do seu carro. Agora vou agendar uma consulta.

Você pode criar duas respostas:

  • Resposta de sucesso: enviada quando o Amazon Lex V2 compreende o valor de um slot.

  • Resposta de falha: enviada quando o Amazon Lex V2 não consegue entender o valor de um slot do usuário após o número máximo de novas tentativas.

É possível definir valores, configurar as próximas etapas e aplicar condições que correspondem a cada resposta para criar o fluxo de conversação.

Na ausência de uma condição ou de uma próxima etapa explícita, o Amazon Lex V2 passa para o próximo slot em ordem de prioridade.

As opções avançadas para respostas em slots.

Você pode usar uma função do Lambda para validar um valor de slot que um usuário inseriu e determinar qual deve ser a próxima ação. Por exemplo, a função de validação pode ser usada para garantir que o valor inserido esteja no intervalo correto ou que esteja formatado corretamente. Para ativar a função do Lambda, escolha a caixa de seleção Invocar função do Lambda e o botão Ativo na seção Hook do código de diálogo. É possível especificar um rótulo de invocação para o hook do código de diálogo. Esse rótulo de invocação pode ser usado na função do Lambda para escrever a lógica de negócios correspondente à elicitação do slot.

As opções para hook de código de diálogo.

Os slots que não são necessários para a intenção não fazem parte do fluxo principal da conversa. No entanto, se um enunciado do usuário contiver um valor que seu bot identifique como correspondente a um slot opcional, ele poderá preencher o slot com esse valor. Por exemplo, se você configurar um bot de inteligência de negócios para ter um slot City opcional e a expressão do usuário What is the sales for April in San Diego?, o bot preencherá o slot opcional com San Diego. A lógica de negócios pode ser configurada para usar o valor opcional do slot, se presente.

Os slots não necessários para a intenção não podem ser obtidos usando as próximas etapas. Essas etapas podem ser preenchidas somente durante a elicitação da intenção (como no exemplo anterior) ou podem ser obtidas definindo o estado da caixa de diálogo na função do Lambda. Se o slot for obtido usando a função do Lambda, você deverá usar a função do Lambda para decidir a próxima etapa na conversa após a conclusão da elicitação do slot. Para ativar o suporte para a próxima etapa da construção do bot, você deve marcar o slot conforme necessário para a intenção.

nota

Em 17 de agosto de 2022, o Amazon Lex V2 lançou uma mudança na forma como as conversas são gerenciadas com o usuário. Essa alteração oferece mais controle sobre o caminho que o usuário percorre na conversa. Para obter mais informações, consulte Alterações nos fluxos de conversação no Amazon Lex V2. Os bots criados antes de 17 de agosto de 2022 não são compatíveis com mensagens de hook de código de diálogo, definição de valores, configuração das próximas etapas e adição de condições.

Os tópicos a seguir descrevem como configurar um bot para reativar um valor de slot que já foi preenchido e como criar um slot que consiste em vários valores: