Amazon-Lex é um serviço de inteligência artificial (IA) totalmente gerenciado com modelos avançados de linguagem natural para projetar, construir, testar e implantar interfaces de conversação em aplicativos. Ele emprega tecnologias avançadas de aprendizagem profunda para entender a entrada do usuário, permitindo que os desenvolvedores criem chatbots, assistentes virtuais e outros aplicativos que podem interagir com os usuários em linguagem natural.
Gerenciar bots do Amazon Lex usando Formação da Nuvem AWS permite criar modelos que definem o bot e todos os recursos da AWS dos quais ele depende. O AWS CloudFormation fornece e configura esses recursos em seu nome, eliminando o risco de erro humano ao implantar bots em novos ambientes. Os benefícios de usar CloudFormation incluem:
- Consistência – Um modelo do CloudFormation fornece uma maneira mais consistente e automatizada de implantar e gerenciar os recursos associados a um bot do Amazon Lex.
- Controle de versão – Com o AWS CloudFormation, você pode usar sistemas de controle de versão como o Git para gerenciar seus modelos do CloudFormation. Isso permite que você mantenha diferentes versões do seu bot e reverta para versões anteriores, se necessário.
- Reutilização – Você pode reutilizar modelos do CloudFormation em vários ambientes, como desenvolvimento, preparação e produção. Isso economiza tempo e esforço na definição do mesmo bot em ambientes diferentes.
- Expansibilidade – À medida que seu bot do Amazon Lex cresce em complexidade, gerenciá-lo por meio do Console de gerenciamento da AWS torna-se mais desafiador. O AWS CloudFormation permite uma abordagem mais simplificada e eficiente para gerenciar a definição e os recursos do bot.
- Automação – Usar um modelo CloudFormation permite automatizar o processo de implantação. Você pode usar serviços AWS como AWS Code Pipeline e AWS CodeBuild para criar, testar e implantar seu bot do Amazon Lex automaticamente.
Nesta postagem, orientamos você nas etapas envolvidas na criação de um modelo CloudFormation para um bot do Amazon Lex V2.
Visão geral da solução
Nós escolhemos o Reservar viagem bot como ponto de partida para este exercício. Usamos um modelo CloudFormation para criar um novo bot do zero, incluindo a definição de intenções, slots e outros componentes necessários. Além disso, exploramos tópicos como controle de versão, aliases, integração AWS Lambda funções, criando ramificações condicionais e habilitando o registro em log.
Pré-requisitos
Você deve ter os seguintes pré-requisitos:
- An Conta da AWS para criar e implantar um modelo CloudFormation
- O necessário Gerenciamento de acesso e identidade da AWS (IAM) permissões para implantar o AWS CloudFormation e os recursos usados no modelo
- Conhecimento básico do Amazon Lex, funções Lambda e serviços associados
- Conhecimento básico de criação e implantação de modelos CloudFormation
Crie uma função do IAM
Para começar, você precisa criar uma função IAM que o bot usará. Você pode conseguir isso inicializando um modelo CloudFormation e adicionando a função IAM como um recurso. Você pode usar o modelo a seguir para criar a função. Se você baixe o modelo de exemplo e implantá-lo, você verá que uma função IAM foi criada. Fornecemos exemplos de modelos à medida que avançamos nesta postagem e os mesclamos à medida que avançamos.
Configurar o bot do Amazon Lex
Em seguida, você precisa adicionar a definição do bot. A seguir está o modelo YAML para a definição de bot do Amazon Lex; você constrói os componentes necessários um por um:
Para criar um bot que inclua apenas a definição do bot sem qualquer intenção, você pode usar o modelo a seguir. Aqui, você especifica o nome do bot, o ARN da função criada anteriormente, as configurações de privacidade de dados e muito mais:
Você pode baixe o modelo atualizado. A implantação do modelo atualizado permite criar a função e a definição do bot. Observe que você está atualizando a pilha você criou na etapa anterior.
A etapa final envolve a definição do BotLocales
, que constituem a maior parte da funcionalidade do bot. Isto inclui, por exemplo, Intents
e Slot types
. A seguir está o modelo YAML:
Neste caso, você constrói o BookHotel
intenção, que requer um tipo de slot personalizado para tipos de quarto. Você definiu o LocaleId
, Em seguida, o VoiceSettings
. Então você adiciona o SlotTypes
e seus valores correspondentes.
A próxima etapa é definir o Intents
, começando com a primeira intenção, BookHotel
, que envolve adicionar enunciados, slots e prioridades de slots. Os detalhes desses nós são demonstrados no modelo fornecido. Finalmente, você adiciona a segunda intenção, que é a FallbackIntent
. Veja o seguinte código:
Você pode baixe o modelo do CloudFormation pelo trabalho realizado até agora. Depois de você atualize sua pilha com este modelo, um bot funcional será implantado. No console do Amazon Lex, você pode confirmar se há uma versão de rascunho do bot e um alias padrão chamado TestBotAlias
foi criado.
Crie uma nova versão e alias do bot
Amazon Lex oferece suporte à publicação versões de bots, intenções e tipos de slots para que você possa controlar a implementação de seus aplicativos clientes. Uma versão é um instantâneo numerado da definição do seu bot que você pode publicar para uso em diferentes partes do seu fluxo de trabalho, como desenvolvimento, implantação beta e produção. Os bots do Amazon Lex também oferecem suporte aliases. Um alias é um ponteiro para uma versão específica de um bot. Com um alias, você pode atualizar a versão dos seus aplicativos clientes. Em cenários práticos, os aliases de bot são usados para implantações azuis/verdes e para gerenciar configurações específicas do ambiente, como ambientes de desenvolvimento e produção.
Para ilustrar, digamos que você aponte um alias para a versão 1 do seu bot. Quando chegar a hora de atualizar o bot, você poderá publicar a versão 2 e alterar o alias para apontar para a nova versão. Como seus aplicativos usam o alias em vez de uma versão específica, todos os clientes recebem a nova funcionalidade sem precisar de atualizações.
Lembre-se de que quando você modifica o modelo CloudFormation e inicia a implantação, as alterações são implementadas na versão de rascunho, destinada principalmente para teste. Depois de concluir a fase de testes, você poderá estabelecer uma nova versão para finalizar as alterações incorporadas até agora.
Em seguida, você cria uma nova versão do bot com base no seu rascunho, configura um novo alias e vincula a versão a esse alias. A seguir estão os dois novos recursos para adicionar ao seu modelo:
Você pode baixe a nova versão do modelo e implante-o atualizando sua pilha. Você pode ver no console do Amazon Lex que uma nova versão é criada e associada a um novo alias chamado BookHotelDemoAlias
.
Quando você cria uma nova versão de um bot do Amazon Lex, normalmente o número da versão é incrementado sequencialmente, começando em 1. Para discernir uma versão específica, você pode consultar sua descrição.
Adicionar uma função Lambda
Para inicializar valores ou validar a entrada do usuário para seu bot, você pode adicionar uma função Lambda como um gancho de código ao seu bot. Da mesma forma, você também pode usar uma função Lambda para atendimento, por exemplo, gravar dados em bancos de dados ou chamar APIs para salvar as informações coletadas. Para obter mais informações, consulte Habilitar lógica personalizada com funções do AWS Lambda.
Vamos adicionar um novo recurso para a função Lambda ao modelo CloudFormation. Embora geralmente não seja aconselhável incorporar código em modelos do CloudFormation, fazemos isso aqui apenas para tornar a implantação da demonstração menos complicada. Veja o seguinte código:
Para usar esta função Lambda para o cumprimento, habilite as configurações de gancho de código em sua intenção:
Como você fez alterações no seu bot, você pode criar uma nova versão do bot adicionando um novo recurso chamado BookHotelVersionWithLambda
no modelo:
A função Lambda está associada a um alias de bot. O Amazon Lex V2 pode usar uma função do Lambda por alias de bot e por idioma. Portanto, você deve atualizar seu alias no modelo para adicionar o recurso da função Lambda. Você pode fazer isso no BotAliasLocalSettings
seção. Você também precisa apontar o alias para a nova versão criada. O código a seguir é a configuração do alias modificada:
Até agora, você vinculou apenas a função Lambda ao alias. No entanto, você precisa conceder permissão para permitir que o alias invoque a função Lambda. No código a seguir, você adiciona a permissão de invocação do Lambda para o Amazon Lex e especifica o ARN do alias como o ARN de origem:
Você pode baixe a última versão do modelo. Depois de atualizar sua pilha com esta versão, você terá um bot Amazon Lex integrado a uma função Lambda.
Ramos condicionais
Agora vamos explorar o recurso de ramificação condicional do bot do Amazon Lex e considerar um cenário em que a reserva de mais de cinco noites em Seattle não seja permitida para a próxima semana. De acordo com os requisitos comerciais, a conversa deverá terminar com uma mensagem apropriada se o usuário tentar reservar mais de cinco noites em Seattle. A ramificação condicional para isso é representada no modelo CloudFormation sob o SlotCaptureSetting
:
Como você alterou a definição do bot, será necessário criar uma nova versão no modelo e vinculá-la ao alias. Esta é uma modificação temporária porque a empresa planeja permitir grandes reservas em Seattle em breve. A seguir estão os dois novos recursos que você adiciona ao modelo:
Você pode baixe o modelo atualizado. Depois de atualizar sua pilha com esta versão do modelo, o alias será direcionado para a versão que incorpora o recurso de ramificação condicional. Para desfazer esta modificação, você pode atualizar o alias para reverter para a versão anterior.
Logs
Você também pode habilitar logs para seu bot do Amazon Lex. Para fazer isso, você deve atualizar a função do bot para conceder permissões de escrita Amazon CloudWatch Histórico. Veja a seguir um exemplo de adição de uma política do CloudWatch à função:
Para garantir um comportamento consistente e previsível, você deve ser o mais específico possível ao definir nomes e propriedades de recursos em modelos do CloudFormation. Isso ocorre porque o uso do caractere curinga (*) em modelos do CloudFormation pode representar riscos potenciais à segurança e levar a consequências indesejadas. Portanto, é recomendado evitar o uso de curingas e, em vez disso, usar valores explícitos sempre que possível.
Em seguida, você cria um recurso de grupo de logs do CloudWatch, conforme mostrado no código a seguir, para direcionar seus logs para esse grupo:
Por fim, você atualiza seu alias para ativar as configurações de registro de conversas:
Ao atualizar a pilha com este modelo, você habilita os logs de conversa para seu bot. Uma nova versão não é criada nesta etapa porque não há alterações no recurso do bot. Você pode baixe a versão mais recente do modelo.
Clean Up
Para evitar cobranças futuras, exclua a pilha do CloudFormation que você criou.
Conclusão
Nesta postagem, discutimos o processo passo a passo para criar um modelo CloudFormation para um bot Amazon Lex V2. Inicialmente, implantamos um bot básico, depois exploramos o potencial de aliases e versões e como usá-los de forma eficiente com modelos. A seguir, aprendemos como integrar uma função do Lambda a um bot do Amazon Lex V2 e implementar a ramificação condicional no fluxo de conversa do bot para acomodar os requisitos de negócios. Por fim, adicionamos recursos de registro criando um recurso de grupo de logs do CloudWatch e atualizando a função do bot com as permissões necessárias.
O modelo permite a implantação e o gerenciamento simples do bot, com a capacidade de reverter as alterações conforme necessário. No geral, o modelo CloudFormation é útil para gerenciar e otimizar um bot do Amazon Lex V2.
Na próxima etapa, você pode explorar exemplos de bots do Amazon Lex e aplique as técnicas discutidas nesta postagem para convertê-las em modelos CloudFormation. Esta prática prática solidificará sua compreensão do gerenciamento de bots do Amazon Lex V2 por meio de infraestrutura como código.
Sobre os autores
Thomas Rindfuss é arquiteto de soluções sênior na equipe do Amazon Lex. Ele inventa, desenvolve, prototipa e evangeliza novos recursos técnicos e soluções para serviços de Language AI que melhoram a experiência do cliente e facilitam a adoção.
Rijeesh Akkambeth Chathoth é consultor de serviços profissionais na AWS. Ele ajuda os clientes a alcançar o negócio desejado
resultados no espaço do Contact Center aproveitando os recursos do Amazon Connect, Amazon Lex e GenAI.
- Conteúdo com tecnologia de SEO e distribuição de relações públicas. Seja amplificado hoje.
- PlatoData.Network Gerativa Vertical Ai. Capacite-se. Acesse aqui.
- PlatoAiStream. Inteligência Web3. Conhecimento Amplificado. Acesse aqui.
- PlatãoESG. Carbono Tecnologia Limpa, Energia, Ambiente, Solar, Gestão de resíduos. Acesse aqui.
- PlatoHealth. Inteligência em Biotecnologia e Ensaios Clínicos. Acesse aqui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/manage-your-amazon-lex-bot-via-aws-cloudformation-templates/
- :tem
- :é
- :não
- :onde
- $UP
- 1
- 10
- 100
- 11
- 13
- 14
- 15%
- 300
- 40
- 7
- 8
- 9
- a
- habilidade
- Acesso
- acomodar
- Alcançar
- alcançar
- em
- Aja
- Açao Social
- adicionar
- adicionado
- acrescentando
- Adicionalmente
- Adoção
- avançado
- aconselhado
- Depois de
- AI
- Serviços de IA
- Todos os Produtos
- permitir
- permitidas
- permite
- juntamente
- tb
- Apesar
- Amazon
- Amazon-Lex
- Amazon Web Services
- an
- e
- qualquer
- APIs
- Aplicação
- aplicações
- Aplicar
- abordagem
- apropriado
- SOMOS
- aren
- artificial
- inteligência artificial
- Inteligência artificial (AI)
- AS
- assistentes
- associado
- At
- Tentativas
- automatizar
- Automatizado
- automaticamente
- evitar
- AWS
- Formação da Nuvem AWS
- AWS Lambda
- em caminho duplo
- baseado
- basic
- BE
- Porque
- torna-se
- sido
- antes
- começar
- lado
- comportamento
- abaixo
- Benefícios
- beta
- livro
- reserva
- reservas
- Bot
- ambos
- bots
- Ramo
- ramos
- construir
- Prédio
- negócio
- by
- chamado
- chamada
- CAN
- não podes
- casas
- Centralização de
- desafiante
- alterar
- mudado
- Alterações
- personagem
- acusações
- chatbots
- verificar
- Crianças
- escolhido
- Cidades
- cliente
- clientes
- Fechar
- código
- COM
- completar
- complexidade
- complicado
- componentes
- compreender
- preocupado
- condição
- Configuração
- Confirmar
- CONFIRMADO
- Contato
- Consequências
- Considerar
- consistente
- cônsul
- construir
- consultor
- Contacto
- contact center
- conteúdo
- contexto
- ao controle
- Conversa
- conversação
- converter
- Correspondente
- crio
- criado
- Criar
- personalizadas
- cliente
- experiência do cliente
- Clientes
- dados,
- privacidade de dados
- bases de dados
- Data
- dia
- profundo
- deep learning
- Padrão
- definir
- definição
- definição
- demonstração
- demonstraram
- depende
- implantar
- implantado
- Implantação
- desenvolvimento
- Implantações
- descrição
- Design
- desejado
- destino
- detalhes
- desenvolvedores
- Desenvolvimento
- desenvolve
- diferente
- diretamente
- dirigido
- discernir
- discutido
- do
- feito
- down
- rascunho
- cada
- Facilita
- efeito
- eficiente
- eficientemente
- esforço
- embutir
- emprega
- permitir
- habilitado
- permitindo
- final
- garantir
- ambientes
- erro
- estabelecer
- Evento
- exemplo
- exemplos
- Exercício
- vasta experiência
- explorar
- Explorado
- falso
- longe
- Característica
- Funcionalidades
- campo
- final
- finalizar
- Finalmente
- Primeiro nome
- cinco
- fluxo
- seguinte
- Escolha
- formulário
- da
- cumprimento
- totalmente
- função
- funcional
- funcionalidade
- funções
- mais distante
- futuro
- genai
- geralmente
- ter
- Git
- Go
- conceder
- Grupo
- Cresce
- guia
- mãos em
- Ter
- he
- ajuda
- SUA PARTICIPAÇÃO FAZ A DIFERENÇA
- hotel
- Como funciona o dobrador de carta de canal
- Como Negociar
- Contudo
- HTML
- http
- HTTPS
- humano
- i
- Identidade
- if
- ilustrar
- implementação
- implementado
- importar
- melhora
- in
- incluir
- inclui
- Incluindo
- Incorporado
- incorporando
- índice
- INFORMAÇÕES
- Infraestrutura
- do estado inicial,
- inicialmente
- iniciar
- entrada
- em vez disso
- integrar
- integrado
- Integração
- Inteligência
- intenção
- interagir
- interfaces de
- para dentro
- inventa
- envolvido
- envolve
- IT
- ESTÁ
- json
- Rei
- Conhecimento
- língua
- grande
- mais recente
- conduzir
- aprendido
- aprendizagem
- menos
- aproveitando
- como
- LINK
- ligado
- local
- localizado
- localização
- log
- logging
- lógica
- moldadas
- a manter
- Maioria
- fazer
- Fazendo
- gerencia
- gerenciados
- de grupos
- gestão
- muitos
- fósforos
- Mateus
- significava
- ir
- mensagem
- mensagens
- mente
- modelo
- modelos
- modificada
- modificar
- mais
- múltiplo
- devo
- nome
- Nomeado
- nomes
- natural
- necessário
- você merece...
- necessário
- Novo
- Próximo
- semana que vem
- noite
- não
- nós
- nenhum
- nota
- agora
- número
- numerada
- of
- oferecido
- OK
- on
- ONE
- online
- privacidade online
- só
- otimizando
- or
- OS
- Outros
- A Nossa
- global
- parte
- peças
- caminho
- para
- permissão
- permissões
- fase
- planos
- platão
- Inteligência de Dados Platão
- PlatãoData
- ponto
- políticas
- Privacidade
- pose
- possível
- Publique
- potencial
- Prática
- prática
- Previsível
- pré-requisitos
- evitar
- anterior
- anteriormente
- principalmente
- Diretor
- prioridades
- prioridade
- política de privacidade
- processo
- Produção
- profissional
- Agenda
- Progresso
- Propriedades
- proteção
- protótipos
- fornecer
- fornecido
- fornece
- publicar
- Publishing
- aumentar
- pronto
- receber
- Recomenda
- referir
- relacionado
- remover
- removendo
- representado
- requeridos
- requerimento
- Requisitos
- exige
- reserva
- recurso
- Recursos
- resposta
- resultar
- retorno
- reutilizar
- reverter
- certo
- Risco
- riscos
- Tipo
- Rolo
- Quarto
- Quartos
- tempo de execução
- s
- saquê
- mesmo
- amostra
- Salvar
- dizer
- cenário
- cenários
- arranhar
- Seattle
- Segundo
- Seção
- segurança
- riscos de segurança
- Vejo
- Serverless
- serviço
- Serviços
- conjunto
- Configurações
- instalação
- rede de apoio social
- mostrando
- Similarmente
- ranhura
- caça-níqueis
- Instantâneo
- So
- até aqui
- unicamente
- Soluções
- algo
- em breve
- fonte
- Espaço
- específico
- especificando
- pilha
- encenação
- começado
- Comece
- Estado
- Declaração
- ficar
- permanecendo
- Passo
- Passos
- franco
- simplificada
- Tanga
- sujeito
- tal
- ajuda
- Suportado
- suportes
- sistemas
- TAG
- visadas
- Profissionais
- Dados Técnicos:
- técnicas
- Tecnologias
- modelo
- modelos
- temporário
- teste
- ensaio
- do que
- que
- A
- O Futuro
- A fonte
- deles
- Eles
- então
- Lá.
- assim sendo
- Este
- Terceiro
- isto
- aqueles
- Através da
- tempo
- para
- Temas
- Transformar
- verdadeiro
- dois
- tipo
- tipos
- tipicamente
- para
- compreender
- compreensão
- até
- Atualizar
- Atualizada
- Atualizações
- atualização
- us
- usar
- usava
- útil
- Utilizador
- usuários
- utilização
- VALIDAR
- valor
- Valores
- versão
- versões
- via
- Virtual
- queremos
- Caminho..
- we
- web
- serviços web
- Site
- semana
- BEM
- O Quê
- quando
- onde quer que
- se
- qual
- inteiro
- precisarão
- de
- dentro
- sem
- Atividades:
- de gestão de documentos
- seria
- escrita
- yaml
- Vocês
- investimentos
- zefirnet