Si utiliza Amazon Lex V2, consulte la guía de Amazon Lex V2.
Si utiliza Amazon Lex V1, le recomendamos que actualice los bots a Amazon Lex V2. Hemos dejado de agregar nuevas características a V1, por lo que recomendamos encarecidamente utilizar V2 para todos los nuevos bots.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
AMAZON.FallbackIntent
Cuando la entrada de un usuario a una intención no es lo que espera un bot, puede configurar Amazon Lex para que invoque una intención alternativa. Por ejemplo, si la entrada del usuario «Quiero pedir caramelos» no coincide con una intención del bot OrderFlowers
, Amazon Lex invoca la intención alternativa para gestionar la respuesta.
Puede añadir una intención alternativa mediante la incorporación del tipo de intención AMAZON.FallbackIntent
integrada al bot. Puede especificar la intención mediante la operación PutBot o eligiendo la intención en la lista de intenciones integradas en la consola.
La invocación de una intención alternativa se realiza en dos pasos. En el primer paso, la intención alternativa coincide según la entrada del usuario. Cuando la intención alternativa coincide, la forma en que se comporta el bot depende del número de reintentos configurados para una pregunta. Por ejemplo, si el número máximo de intentos para determinar una intención es 2, el bot devuelve la pregunta aclaratoria del bot dos veces antes de invocar la intención alternativa.
Amazon Lex hace coincidir la intención alternativa en estas situaciones:
-
La entrada del usuario a una intención no coincide con la entrada que espera el bot
-
La entrada de audio es ruido o la entrada de texto no se reconoce como palabras.
-
La entrada del usuario es ambigua y Amazon Lex no puede determinar qué intención debe invocar.
La intención alternativa se invoca cuando:
-
El bot no reconoce la entrada del usuario como una intención después del número configurado de intentos de clarificación cuando comienza la conversación.
-
Una intención no reconoce la entrada del usuario como un valor de slot después del número de intentos configurado.
-
Una intención no reconoce la entrada del usuario como respuesta a una pregunta de confirmación después del número de intentos configurado.
Puede utilizar lo siguiente con una intención alternativa:
-
Una función de Lambda de cumplimiento
-
Una instrucción de conclusión
-
Una pregunta de seguimiento
No puede añadir lo siguiente a una intención alternativa:
-
Enunciados
-
Slots
-
Una función de Lambda de inicialización y validación
-
Una pregunta de confirmación
Si ha configurado una instrucción de cancelación y una intención alternativa para un bot, Amazon Lex utiliza la intención alternativa. Si necesita que su bot tenga una instrucción de cancelación, puede utilizar la función de cumplimiento para la intención alternativa con el fin de proporcionar el mismo comportamiento que una instrucción de cancelación. Para obtener más información, consulte el parámetro abortStatement
de la operación PutBot.
Uso de las preguntas de aclaración
Si proporciona al bot una pregunta aclaratoria, esta se utiliza para solicitar una intención válida al usuario. La pregunta aclaratoria se repetirá el número de veces que haya configurado. Después de eso, se invocará la intención alternativa.
Si no establece una pregunta aclaratoria al crear un bot y el usuario no comienza la conversación con una intención válida, Amazon Lex llama inmediatamente a su intención alternativa.
Cuando se utiliza una intención alternativa sin una pregunta aclaratoria, Amazon Lex no llama a la alternativa en estas circunstancias:
-
Cuando el usuario responde a una pregunta de seguimiento, pero no proporciona una intención. Por ejemplo, si el usuario responde “sí” a la pregunta de seguimiento “¿Desea algo más hoy?”. Amazon Lex devuelve la excepción 400 de solicitud errónea porque no tiene una pregunta aclaratoria que pueda enviar al usuario para obtener una intención.
-
Cuando se utiliza una función AWS Lambda, se devuelve un tipo de diálogo
ElicitIntent
. Dado que Amazon Lex no tiene una pregunta aclaratoria para obtener una intención del usuario, devuelve la excepción 400 de solicitud errónea. -
Cuando se utiliza la operación
PutSession
, se envía un tipo de diálogoElicitIntent
. Dado que Amazon Lex no tiene una pregunta aclaratoria para obtener una intención del usuario, devuelve la excepción 400 de solicitud errónea.
Uso de una función de Lambda con una intención alternativa
Cuando se invoca una intención alternativa, la respuesta depende de la configuración del parámetro fulfillmentActivity
para la operación PutIntent. El bot realiza una de las siguientes operaciones:
-
Devuelve la información de la intención a la aplicación cliente.
-
Llama a la función de Lambda de cumplimiento. Llama a la función con las variables de sesión que se establecen para la sesión.
Para obtener más información acerca de cómo configurar la respuesta cuando se invoca una intención alternativa, consulte el parámetro fulfillmentActivity
de la operación PutIntent.
Si utiliza la función de Lambda de cumplimiento en su intención alternativa, puede utilizar esta función para llamar a otra intención o para realizar algún tipo de comunicación con el usuario, como recopilar un número de devolución de llamada o abrir una sesión con un representante del servicio de atención al cliente.
Puede realizar cualquier acción en una función de Lambda de intención alternativa que pueda realizar en la función de cumplimiento para otra intención. Para obtener más información acerca de la creación de una función de cumplimiento mediante AWS Lambda, consulte Uso de funciones de Lambda.
Una intención alternativa se puede invocar varias veces en la misma sesión. Por ejemplo, suponga que la función de Lambda utiliza la acción de diálogo ElicitIntent
para solicitar al usuario una intención diferente. Si Amazon Lex no puede deducir la intención del usuario después del número de intentos configurado, invoca de nuevo la intención alternativa. También invoca la intención alternativa cuando el usuario no responde con un valor de slot válido después del número de intentos configurados.
Puede configurar una función de Lambda para realizar un seguimiento del número de veces que se llama a la intención alternativa mediante una variable de sesión. La función de Lambda puede realizar una acción diferente si se llama más veces que el umbral establecido en la función de Lambda. Para obtener más información acerca de las variables de sesión, consulte Definición de atributos de la sesión.