Administre su bot de Amazon Lex a través de plantillas de AWS CloudFormation | Servicios web de Amazon

Administre su bot de Amazon Lex a través de plantillas de AWS CloudFormation | Servicios web de Amazon

Amazon lex es un servicio de inteligencia artificial (IA) totalmente administrado con modelos avanzados de lenguaje natural para diseñar, construir, probar e implementar interfaces conversacionales en aplicaciones. Emplea tecnologías avanzadas de aprendizaje profundo para comprender las aportaciones de los usuarios, lo que permite a los desarrolladores crear chatbots, asistentes virtuales y otras aplicaciones que pueden interactuar con los usuarios en lenguaje natural.

Administrar sus bots de Amazon Lex usando Formación en la nube de AWS le permite crear plantillas que definen el bot y todos los recursos de AWS de los que depende. AWS CloudFormation proporciona y configura esos recursos en su nombre, eliminando el riesgo de error humano al implementar bots en nuevos entornos. Los beneficios de utilizar CloudFormation incluyen:

  • Consistencia – Una plantilla de CloudFormation proporciona una forma más consistente y automatizada de implementar y administrar los recursos asociados con un bot de Amazon Lex.
  • Control de versiones – Con AWS CloudFormation, puede utilizar sistemas de control de versiones como Git para administrar sus plantillas de CloudFormation. Esto le permite mantener diferentes versiones de su bot y volver a versiones anteriores si es necesario.
  • Reutilización – Puede reutilizar las plantillas de CloudFormation en múltiples entornos, como desarrollo, ensayo y producción. Esto ahorra tiempo y esfuerzo al definir el mismo bot en diferentes entornos.
  • Capacidad de expansión – A medida que su bot de Amazon Lex crece en complejidad, administrarlo a través del Consola de administración de AWS se vuelve más desafiante. AWS CloudFormation permite un enfoque más ágil y eficiente para administrar la definición y los recursos del bot.
  • Automatización – El uso de una plantilla de CloudFormation le permite automatizar el proceso de implementación. Puede utilizar servicios de AWS como AWS CodePipeline y Construcción de código AWS para crear, probar e implementar su bot de Amazon Lex automáticamente.

En esta publicación, lo guiamos a través de los pasos necesarios para crear una plantilla de CloudFormation para un bot de Amazon Lex V2.

Resumen de la solución

Hemos elegido el Reservar viaje bot como nuestro punto de partida para este ejercicio. Usamos una plantilla de CloudFormation para crear un nuevo bot desde cero, incluida la definición de intenciones, espacios y otros componentes necesarios. Además, exploramos temas como control de versiones, alias, integración AWS Lambda funciones, creando ramas condicionales y habilitando el registro.

Requisitos previos

Debe tener los siguientes requisitos previos:

  • An Cuenta de AWS para crear e implementar una plantilla de CloudFormation
  • Lo necesario Gestión de identidades y accesos de AWS (YO SOY) permisos para implementar AWS CloudFormation y los recursos utilizados en la plantilla
  • Conocimientos básicos de Amazon Lex, funciones Lambda y servicios asociados.
  • Conocimientos básicos de creación e implementación de plantillas de CloudFormation.

Crear un rol de IAM

Para comenzar, debe crear una función de IAM que utilizará el bot. Puede lograr esto inicializando una plantilla de CloudFormation y agregando la función de IAM como recurso. Puede utilizar la siguiente plantilla para crear el rol. Si usted descargar la plantilla de ejemplo e implementarlo, debería ver que se ha creado una función de IAM. Proporcionamos ejemplos de plantillas a medida que avanzamos en esta publicación y las fusionamos a medida que avanzamos.

AWSTemplateFormatVersion: "2010-09-09"
Transform: AWS::Serverless-2016-10-31
Description: CloudFormation template for book hotel bot.
Resources:
  # 1. IAM role that is used by the bot at runtime
  BotRuntimeRole:    
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Principal:
              Service:
                - lexv2.amazonaws.com
            Action:
              - "sts:AssumeRole"
      Path: "/"
      Policies:
        - PolicyName: LexRuntimeRolePolicy
          PolicyDocument:
            Version: 2012-10-17
            Statement:
              - Effect: Allow
                Action:
                  - "polly:SynthesizeSpeech"
                  - "comprehend:DetectSentiment"
                Resource: "*"

Configurar el robot de Amazon Lex

A continuación, debe agregar la definición del bot. La siguiente es la plantilla YAML para la definición del bot de Amazon Lex; construyes los componentes necesarios uno por uno:

Type: AWS::Lex::Bot
Properties:
  AutoBuildBotLocales: Boolean
  BotFileS3Location: 
    S3Location
  BotLocales: 
    - BotLocale
  BotTags: 
    - Tag
  DataPrivacy: 
    DataPrivacy
  Description: String
  IdleSessionTTLInSeconds: Integer
  Name: String
  RoleArn: String
  TestBotAliasSettings: 
    TestBotAliasSettings
  TestBotAliasTags: 
    - Tag

Para crear un bot que solo incluya la definición del bot sin ninguna intención, puede utilizar la siguiente plantilla. Aquí, especifica el nombre del bot, el ARN del rol que creó previamente, la configuración de privacidad de datos y más:

BookHotelBot:
    DependsOn: BotRuntimeRole # The role created in the previous step
    Type: AWS::Lex::Bot
    Properties:
      Name: "BookHotel"
      Description: "Sample Bot to book a hotel"
      RoleArn: !GetAtt BotRuntimeRole.Arn      
      #For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify whether your use of Amazon Lex 
      #is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under 
      #age 13 and subject to the Children's Online Privacy Protection Act (COPPA) by specifying true or false in the 
      #childDirected field.
      DataPrivacy:
        ChildDirected: false
      IdleSessionTTLInSeconds: 300

solicite descargar la plantilla actualizada. La implementación de la plantilla actualizada le permite crear tanto el rol como la definición del bot. Ten en cuenta que eres actualizando la pila que creaste en el paso anterior.

El último paso consiste en definir el BotLocales, que forman la mayor parte de la funcionalidad del bot. Esto incluye, por ejemplo, Intents y Slot types. La siguiente es la plantilla YAML:

  CustomVocabulary: 
    CustomVocabulary
  Description: String
  Intents: 
    - Intent
  LocaleId: String
  NluConfidenceThreshold: Number
  SlotTypes: 
    - SlotType
  VoiceSettings: 
    VoiceSettings

En este caso, construyes el BookHotel intent, que requiere un tipo de espacio personalizado para los tipos de habitación. Tu configuras el LocaleId, Entonces el VoiceSettings. Luego agrega el SlotTypes y sus valores correspondientes.

El siguiente paso es definir el Intents, comenzando con la primera intención, BookHotel, lo que implica agregar expresiones, espacios y prioridades de espacios. Los detalles de estos nodos se demuestran en la plantilla proporcionada. Finalmente, agregas la segunda intención, que es la FallbackIntent. Ver el siguiente código:

BotLocales:
        - LocaleId: "en_US"
          Description: "en US locale"
          NluConfidenceThreshold: 0.40
          VoiceSettings:
            VoiceId: "Matthew"
          SlotTypes:
            - Name: "RoomTypeValues"
              Description: "Type of room"
              SlotTypeValues:
                - SampleValue:
                    Value: queen
                - SampleValue:
                    Value: king
                - SampleValue:
                    Value: deluxe
              ValueSelectionSetting:
                ResolutionStrategy: ORIGINAL_VALUE
          Intents:
            - Name: "BookHotel"
              Description: "Intent to book a hotel room"
              SampleUtterances:
                - Utterance: "Book a hotel"
                - Utterance: "I want a make hotel reservations"
                - Utterance: "Book a {Nights} night stay in {Location}"
              IntentConfirmationSetting:
                PromptSpecification:
                  MessageGroupsList:
                    - Message:
                        PlainTextMessage:
                          Value: "Okay, I have you down for a {Nights} night stay in {Location} starting {CheckInDate}.  Shall I book the reservation?"
                  MaxRetries: 3
                  AllowInterrupt: false
                DeclinationResponse:
                  MessageGroupsList:
                    - Message:
                        PlainTextMessage:
                          Value: "Okay, I have cancelled your reservation in progress."
                  AllowInterrupt: false
              SlotPriorities:
                - Priority: 1
                  SlotName: Location
                - Priority: 2
                  SlotName: CheckInDate
                - Priority: 3
                  SlotName: Nights
                - Priority: 4
                  SlotName: RoomType
              Slots:
                - Name: "Location"
                  Description: "Location of the city in which the hotel is located"
                  SlotTypeName: "AMAZON.City"
                  ValueElicitationSetting:
                    SlotConstraint: "Required"
                    PromptSpecification:
                      MessageGroupsList:
                        - Message:
                            PlainTextMessage:
                              Value: "What city will you be staying in?"
                      MaxRetries: 2
                      AllowInterrupt: false
                - Name: "CheckInDate"
                  Description: "Date of check-in"
                  SlotTypeName: "AMAZON.Date"
                  ValueElicitationSetting:
                    SlotConstraint: "Required"
                    PromptSpecification:
                      MessageGroupsList:
                        - Message:
                            PlainTextMessage:
                              Value: "What day do you want to check in?"
                      MaxRetries: 2
                      AllowInterrupt: false
                - Name: "Nights"
                  Description: "something"
                  SlotTypeName: "AMAZON.Number"
                  ValueElicitationSetting:
                    SlotConstraint: "Required"
                    PromptSpecification:
                      MessageGroupsList:
                        - Message:
                            PlainTextMessage:
                              Value: "How many nights will you be staying?"
                      MaxRetries: 2
                      AllowInterrupt: false
                - Name: "RoomType"
                  Description: "Enumeration of types of rooms that are offered by a hotel."
                  SlotTypeName: "RoomTypeValues"
                  ValueElicitationSetting:
                    SlotConstraint: "Required"
                    PromptSpecification:
                      MessageGroupsList:
                        - Message:
                            PlainTextMessage:
                              Value: "What type of room would you like, queen, king or deluxe?"
                      MaxRetries: 2
                      AllowInterrupt: false
            - Name: "FallbackIntent"
              Description: "Default intent when no other intent matches"
              ParentIntentSignature: "AMAZON.FallbackIntent"

solicite descargar la plantilla de CloudFormation por el trabajo realizado hasta ahora. Después de usted actualiza tu pila Con esta plantilla, se implementará un bot funcional. En la consola de Amazon Lex, puede confirmar que existe una versión borrador del bot y un alias predeterminado llamado TestBotAlias se ha creado.

alias de robot

Crear una nueva versión y alias del bot

Amazon Lex admite la publicación versiones de bots, intents y tipos de slots para que pueda controlar la implementación de sus aplicaciones cliente. Una versión es una instantánea numerada de la definición de su bot que puede publicar para usarla en diferentes partes de su flujo de trabajo, como desarrollo, implementación beta y producción. Los bots de Amazon Lex también son compatibles alias. Un alias es un puntero a una versión específica de un bot. Con un alias, puede actualizar la versión de sus aplicaciones cliente. En escenarios prácticos, los alias de bot se utilizan para implementaciones azules/verdes y para gestionar configuraciones específicas del entorno, como entornos de desarrollo y producción.

Para ilustrar, digamos que apunta un alias a la versión 1 de su bot. Cuando llegue el momento de actualizar el bot, puede publicar la versión 2 y cambiar el alias para que apunte a la nueva versión. Debido a que sus aplicaciones usan el alias en lugar de una versión específica, todos los clientes reciben la nueva funcionalidad sin necesidad de actualizaciones.

Tenga en cuenta que cuando modifica la plantilla de CloudFormation e inicia la implementación, los cambios se implementan dentro de la versión borrador, destinada principalmente a pruebas. Después de completar su fase de prueba, puede establecer una nueva versión para finalizar los cambios que ha incorporado hasta ahora.

A continuación, crea una nueva versión del bot basada en su borrador, configura un nuevo alias y vincula la versión a este alias. Los siguientes son los dos nuevos recursos que puede agregar a su plantilla:

BookHotelInitialVersion:
    DependsOn: BookHotelBot
    Type: AWS::Lex::BotVersion
    Properties:
      BotId: !Ref BookHotelBot
      BotVersionLocaleSpecification:
        - LocaleId: en_US
          BotVersionLocaleDetails:
            SourceBotVersion: DRAFT
      Description: Hotel Bot initial version

  BookHotelDemoAlias:
    Type: AWS::Lex::BotAlias
    Properties:
      BotId: !Ref BookHotelBot
      BotAliasName: "BookHotelDemoAlias"
      BotVersion: !GetAtt BookHotelInitialVersion.BotVersion

solicite descargar la nueva versión de la plantilla e impleméntelo actualizando su pila. Puede ver en la consola de Amazon Lex que se crea una nueva versión y se asocia con un nuevo alias llamado BookHotelDemoAlias.

alias de demostración

Cuando crea una nueva versión de un bot de Amazon Lex, normalmente incrementa el número de versión de forma secuencial, comenzando desde 1. Para discernir una versión específica, puede consultar su descripción.

versión inicial

Agregar una función Lambda

Para inicializar valores o validar la entrada del usuario para su bot, puede agregar una función Lambda como enlace de código a su bot. De manera similar, también puede utilizar una función Lambda para el cumplimiento, por ejemplo, escribir datos en bases de datos o llamar a API para guardar la información recopilada. Para obtener más información, consulte Habilitación de lógica personalizada con funciones de AWS Lambda.

Agreguemos un nuevo recurso para la función Lambda a la plantilla de CloudFormation. Aunque generalmente no se recomienda incrustar código en las plantillas de CloudFormation, lo hacemos aquí únicamente para que la implementación de la demostración sea menos complicada. Vea el siguiente código:

HotelBotFunction:
    DependsOn: BotRuntimeRole # So that the Lambda function is ready before the bot deployment
    Type: AWS::Serverless::Function
    Properties:
      FunctionName: book_hotel_lambda
      Runtime: python3.11
      Timeout: 15
      Handler: index.lambda_handler
      InlineCode: |
        import os
        import json

        def close(intent_request):
            intent_request['sessionState']['intent']['state'] = 'Fulfilled'

            message = {"contentType": "PlainText",
                      "content": "Your Booking is confirmed"}

            session_attributes = {}
            sessionState = intent_request['sessionState']
            if 'sessionAttributes' in sessionState:
                session_attributes = sessionState['sessionAttributes']

            requestAttributes = None
            if 'requestAttributes' in intent_request:
                requestAttributes = intent_request['requestAttributes']

            return {
                'sessionState': {
                    'sessionAttributes': session_attributes,
                    'dialogAction': {
                        'type': 'Close'
                    },
                    'intent': intent_request['sessionState']['intent'],
                    'originatingRequestId': 'xxxxxxx-xxxx-xxxx-xxxx'
                },
                'messages':  [message],
                'sessionId': intent_request['sessionId'],
                'requestAttributes': requestAttributes
            }

        def router(event):
            intent_name = event['sessionState']['intent']['name']
            slots = event['sessionState']['intent']['slots']
            if (intent_name == 'BookHotel'):
                # invoke lambda and return result
                return close(event)

            raise Exception(
                'The intent is not supported by Lambda: ' + intent_name)

        def lambda_handler(event, context):
            response = router(event)
            return response

Para utilizar esta función Lambda para el cumplimiento, habilite la configuración del enlace de código en su intención:

Intents:
  - Name: "BookHotel"
    Description: "Intent to book a hotel room"
    FulfillmentCodeHook:
      Enabled: true
    SampleUtterances:
      - Utterance: "Book a hotel"
      - Utterance: "I want a make hotel reservations"
      - Utterance: "Book a {Nights} night stay in {Location}"

Debido a que realizó cambios en su bot, puede crear una nueva versión del bot agregando un nuevo recurso llamado BookHotelVersionWithLambda en la plantilla:

BookHotelVersionWithLambda:
    DependsOn: BookHotelInitialVersion
    Type: AWS::Lex::BotVersion
    Properties:
      BotId: !Ref BookHotelBot
      BotVersionLocaleSpecification:
        - LocaleId: en_US
          BotVersionLocaleDetails:
            SourceBotVersion: DRAFT
      Description: Hotel Bot with a lambda function

La función Lambda está asociada con un alias de bot. Amazon Lex V2 puede utilizar una función Lambda por alias de bot por idioma. Por lo tanto, debe actualizar su alias en la plantilla para agregar el recurso de la función Lambda. Puedes hacerlo en el BotAliasLocalSettings sección. También debe señalar el alias a la nueva versión que creó. El siguiente código es la configuración de alias modificada:

  BookHotelDemoAlias:
    Type: AWS::Lex::BotAlias
    Properties:
      BotId: !Ref BookHotelBot
      BotAliasName: "BookHotelDemoAlias"
      BotVersion: !GetAtt BookHotelVersionWithLambda.BotVersion
      # Remove BotAliasLocaleSettings if you aren't concerned with Lambda setup.
      # If you are you can modify the LambdaArn below to get started.
      BotAliasLocaleSettings:
        - LocaleId: en_US
          BotAliasLocaleSetting:
            Enabled: true
            CodeHookSpecification:
              LambdaCodeHook:
                CodeHookInterfaceVersion: "1.0"
                LambdaArn: !GetAtt HotelBotFunction.Arn

Hasta ahora, solo ha vinculado la función Lambda con el alias. Sin embargo, debe otorgar permiso para permitir que el alias invoque la función Lambda. En el siguiente código, agrega el permiso de invocación de Lambda para Amazon Lex y especifica el ARN del alias como ARN de origen:

  LexInvokeLambdaPermission:
    Type: AWS::Lambda::Permission
    Properties:
      Action: "lambda:InvokeFunction"
      FunctionName: !GetAtt HotelBotFunction.Arn
      Principal: "lexv2.amazonaws.com"
      SourceArn: !GetAtt BookHotelDemoAlias.Arn

solicite descarga la última versión de la plantilla. Después de actualizar su pila con esta versión, tendrá un bot de Amazon Lex integrado con una función Lambda.

segunda versión

Ali actualizado

Ramas condicionales

Ahora exploremos la función de rama condicional del bot Amazon Lex y consideremos un escenario en el que no se permite reservar más de cinco noches en Seattle durante la próxima semana. Según los requisitos comerciales, la conversación debe finalizar con un mensaje apropiado si el usuario intenta reservar más de cinco noches en Seattle. La rama condicional para eso está representada en la plantilla de CloudFormation bajo el SlotCaptureSetting:

- Name: "Nights"
                  Description: “Number of nights.”
                  SlotTypeName: "AMAZON.Number"
                  ValueElicitationSetting:
                    SlotConstraint: "Required"
                    SlotCaptureSetting:
                      CaptureConditional:
                        DefaultBranch:
                          NextStep:
                            DialogAction:
                              Type: "ElicitSlot"
                              SlotToElicit: "RoomType"
                        ConditionalBranches:
                          - Name: "Branch1"
                            Condition:
                              ExpressionString: '{Nights}>5 AND {Location} = "Seattle"'
                            Response:
                              AllowInterrupt: true
                              MessageGroupsList:
                                - Message:
                                    PlainTextMessage:
                                      Value: “Sorry, we cannot book more than five nights in {Location} right now."
                            NextStep:
                              DialogAction:
                                Type: "EndConversation"
                        IsActive: true

                    PromptSpecification:
                      MessageGroupsList:
                        - Message:
                            PlainTextMessage:
                              Value: "How many nights will you be staying?"
                      MaxRetries: 2
                      AllowInterrupt: false

Debido a que cambió la definición del bot, debe crear una nueva versión en la plantilla y vincularla con el alias. Esta es una modificación temporal porque la empresa planea permitir grandes reservas en Seattle pronto. Los siguientes son los dos nuevos recursos que agrega a la plantilla:

BookHotelConditionalBranches:
    DependsOn: BookHotelVersionWithLambda
    Type: AWS::Lex::BotVersion
    Properties:
      BotId: !Ref BookHotelBot
      BotVersionLocaleSpecification:
        - LocaleId: en_US
          BotVersionLocaleDetails:
            SourceBotVersion: DRAFT
      Description: Hotel Bot Version with conditional branches

  BookHotelDemoAlias:
    Type: AWS::Lex::BotAlias
    Properties:
      BotId: !Ref BookHotelBot
      BotAliasName: "BookHotelDemoAlias"
      BotVersion: !GetAtt BookHotelConditionalBranches.BotVersion
      # Remove BotAliasLocaleSettings if you aren't concerned with Lambda setup.
      # If you are you can modify the LambdaArn below to get started.
      BotAliasLocaleSettings:
        - LocaleId: en_US
          BotAliasLocaleSetting:
            Enabled: true
            CodeHookSpecification:
              LambdaCodeHook:
                CodeHookInterfaceVersion: "1.0"
                LambdaArn: !GetAtt HotelBotFunction.Arn

solicite descargar la plantilla actualizada. Después de actualizar su pila con esta versión de plantilla, el alias se dirigirá a la versión que incorpora la función de bifurcación condicional. Para deshacer esta modificación, puede actualizar el alias para volver a la versión anterior.

tercera versión

alias para la tercera versión

Troncos

También puede habilitar registros para su bot de Amazon Lex. Para hacerlo, debes actualizar el rol del bot para otorgar permisos de escritura. Reloj en la nube de Amazon registros. El siguiente es un ejemplo de cómo agregar una política de CloudWatch al rol:

BotRuntimeRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Principal:
              Service:
                - lexv2.amazonaws.com
            Action:
              - "sts:AssumeRole"
      Path: "/"
      Policies:
        - PolicyName: LexRuntimeRolePolicy
          PolicyDocument:
            Version: 2012-10-17
            Statement:
              - Effect: Allow
                Action:
                  - "polly:SynthesizeSpeech"
                  - "comprehend:DetectSentiment"
                Resource: "*"
        - PolicyName: CloudWatchPolicy
          PolicyDocument:
            Version: 2012-10-17
            Statement:
              - Effect: Allow
                Action:
                  - "logs:CreateLogStream"
                  - "logs:PutLogEvents"
                Resource: "*"

Para garantizar un comportamiento coherente y predecible, debe ser lo más específico posible al definir nombres y propiedades de recursos en las plantillas de CloudFormation. Esto se debe a que el uso del carácter comodín (*) en las plantillas de CloudFormation puede plantear riesgos potenciales de seguridad y provocar consecuencias no deseadas. Por lo tanto, se recomienda evitar el uso de comodines y, en su lugar, utilizar valores explícitos siempre que sea posible.

A continuación, crea un recurso de grupo de registros de CloudWatch, como se muestra en el siguiente código, para dirigir sus registros a este grupo:

  #Log Group
  LexLogGroup:
    Type: AWS::Logs::LogGroup
    Properties:
      LogGroupName: /lex/hotel-bot
      RetentionInDays: 5

Finalmente, actualiza su alias para habilitar la configuración del registro de conversaciones:

BookHotelDemoAlias:
    Type: AWS::Lex::BotAlias
    Properties:
      BotId: !Ref BookHotelBot
      BotAliasName: "BookHotelDemoAlias"
      BotVersion: !GetAtt BookHotelConditionalBranches.BotVersion
      BotAliasLocaleSettings:
        - LocaleId: en_US
          BotAliasLocaleSetting:
            Enabled: true
            CodeHookSpecification:
              LambdaCodeHook:
                CodeHookInterfaceVersion: "1.0"
                LambdaArn: !GetAtt HotelBotFunction.Arn
      ConversationLogSettings:
        TextLogSettings:
          - Destination:
              CloudWatch:
                CloudWatchLogGroupArn: !GetAtt LexLogGroup.Arn
                LogPrefix: bookHotel
            Enabled: true

Cuando actualiza la pila con esta plantilla, habilita los registros de conversación para su bot. No se crea una nueva versión en este paso porque no hay cambios en su recurso de bot. Puede descargue la última versión de la plantilla.

Limpiar

Para evitar incurrir en cargos en el futuro, elimine la pila de CloudFormation que creó.

Conclusión

En esta publicación, analizamos el proceso paso a paso para crear una plantilla de CloudFormation para un bot de Amazon Lex V2. Inicialmente, implementamos un bot básico, luego exploramos el potencial de los alias y las versiones y cómo usarlos de manera eficiente con plantillas. A continuación, aprendimos cómo integrar una función Lambda con un bot Amazon Lex V2 e implementamos bifurcaciones condicionales en el flujo de conversación del bot para adaptarse a los requisitos comerciales. Finalmente, agregamos funciones de registro creando un recurso de grupo de registro de CloudWatch y actualizando la función del bot con los permisos necesarios.

La plantilla permite una implementación y gestión sencillas del bot, con la capacidad de revertir los cambios según sea necesario. En general, la plantilla de CloudFormation es útil para administrar y optimizar un bot de Amazon Lex V2.

Como siguiente paso, puedes explorar ejemplos de robots de Amazon Lex y aplique las técnicas analizadas en esta publicación para convertirlas en plantillas de CloudFormation. Esta práctica práctica solidificará su comprensión de la administración de bots de Amazon Lex V2 a través de infraestructura como código.


Acerca de los autores

Administre su bot de Amazon Lex a través de plantillas de AWS CloudFormation | Amazon Web Services PlatoBlockchain Inteligencia de datos. Búsqueda vertical. Ai.Tomas Rindfuss es Arquitecto de Soluciones Sr. en el equipo de Amazon Lex. Inventa, desarrolla, crea prototipos y evangeliza nuevas funciones y soluciones técnicas para los servicios de Language AI que mejoran la experiencia del cliente y facilitan la adopción.

Administre su bot de Amazon Lex a través de plantillas de AWS CloudFormation | Amazon Web Services PlatoBlockchain Inteligencia de datos. Búsqueda vertical. Ai.Rijeesh Akkambeth Chathoth es consultor de servicios profesionales en AWS. Ayuda a los clientes a lograr el negocio deseado.
resultados en el espacio del Contact Center aprovechando las funciones de Amazon Connect, Amazon Lex y GenAI.

Sello de tiempo:

Mas de Aprendizaje automático de AWS