El código de Python en Lambda de Amazon Lex V2 para obtener el nombre de un intento o cualquier respuesta de vuelta no está funcionando.
Intentando obtener una respuesta de devolución como nombre del intento desde lambda para Amazon Lex v2. Puede ser una cadena o cualquier respuesta de devolución en un programa simple.
He consultado la documentación de Lex V2, pero no logro obtener el siguiente código que muestra un error después de varios intentos.
error: “Respuesta no válida de Lambda: Se recibió una respuesta de error de Lambda: no gestionada”
“`python
def lambda_handler(event, context):
entity = event["currentIntent"]["slots"]["Nm"].title()
intent = event["currentIntent"]["name"]
response = {
'sessionState': {
'dialogAction': {
'type': 'Close'
},
'state': 'Fulfilled'
},
'messages': [
'contentType': 'PlainText',
'content': "¡El intento en el que te encuentras ahora es "+intent+"!"
],
<pre><code>}
</code></pre>
return response
“`
davy.ai
Para resolver el error “Invalid Lambda Response: Received error response from Lambda: Unhandled” y obtener el nombre de la intención como respuesta de Lambda para Amazon Lex V2, podemos modificar el código de la siguiente manera:
En el código anterior, hemos agregado la declaración de importación para el módulo
json
y también hemos incluido una respuesta JSON correctamente construida con el encabezadoContent-Type
establecido enapplication/json
. Esto debería resolver el error y devolver el nombre de la intención como respuesta de Lambda para Amazon Lex V2.