Aviso de fin de soporte: el 15 de septiembre de 2025, AWS dejaremos de ofrecer soporte para Amazon Lex V1. Después del 15 de septiembre de 2025, ya no podrá acceder a la consola Amazon Lex V1 ni a los recursos de Amazon Lex V1. Si utiliza Amazon Lex V2, consulte en su lugar la guía Amazon Lex V2.
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.
Para probar el bot utilizando archivos de audio, use la operación PostContent. Los archivos de audio se generan mediante las operaciones de Amazon Polly. text-to-speech
Para ejecutar los comandos de este ejercicio, debe conocer la región donde se ejecutarán los comandos de Amazon Lex y Amazon Polly. Para ver la lista de regiones de Amazon Lex, consulte Cuotas de servicio en tiempo de ejecución. Para ver la lista de regiones de Amazon Polly, consulte AWS Regiones y puntos de conexión en la referencia general de Amazon Web Services.
nota
El siguiente AWS CLI ejemplo está formateado para Unix, Linux y macOS. Para Windows, cambie "\$LATEST"
por $LATEST
y sustituya la barra diagonal invertida (\) utilizada como carácter de continuación al final de cada línea por el signo de intercalación (^).
Para utilizar una entrada de voz para probar el bot (AWS CLI)
-
En el AWS CLI, crea un archivo de audio con Amazon Polly. El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).
aws polly synthesize-speech \ --region
region
\ --output-format pcm \ --text "i would like to order flowers" \ --voice-id "Salli" \ IntentSpeech.mpg -
Para enviar el archivo de audio a Amazon Lex, ejecute el siguiente comando. Amazon Lex guarda el audio de la respuesta en el archivo de salida especificado.
aws lex-runtime post-content \ --region
region
\ --bot-name OrderFlowersBot \ --bot-alias "\$LATEST" \ --user-id UserOne \ --content-type "audio/l16; rate=16000; channels=1" \ --input-stream IntentSpeech.mpg \ IntentOutputSpeech.mpgAmazon Lex responde con una solicitud para la primera ranura. Guarda la respuesta de audio en el archivo de salida especificado.
{ "contentType": "audio/mpeg", "slotToElicit": "FlowerType", "dialogState": "ElicitSlot", "intentName": "OrderFlowers", "inputTranscript": "i would like to order some flowers", "slots": { "PickupDate": null, "PickupTime": null, "FlowerType": null }, "message": "What type of flowers would you like to order?" }
-
Para realizar un pedido de rosas, cree el siguiente archivo de audio y envíelo a Amazon Lex.
aws polly synthesize-speech \ --region
region
\ --output-format pcm \ --text "roses" \ --voice-id "Salli" \ FlowerTypeSpeech.mpgaws lex-runtime post-content \ --region
region
\ --bot-name OrderFlowersBot \ --bot-alias "\$LATEST" \ --user-id UserOne \ --content-type "audio/l16; rate=16000; channels=1" \ --input-stream FlowerTypeSpeech.mpg \ FlowerTypeOutputSpeech.mpg -
Para establecer la fecha de la entrega, cree el siguiente archivo de audio y envíelo a Amazon Lex:
aws polly synthesize-speech \ --region
region
\ --output-format pcm \ --text "tuesday" \ --voice-id "Salli" \ DateSpeech.mpgaws lex-runtime post-content \ --region
region
\ --bot-name OrderFlowersBot \ --bot-alias "\$LATEST" \ --user-id UserOne \ --content-type "audio/l16; rate=16000; channels=1" \ --input-stream DateSpeech.mpg \ DateOutputSpeech.mpg -
Para establecer la hora de la entrega, cree el siguiente archivo de audio y envíelo a Amazon Lex:
aws polly synthesize-speech \ --region
region
\ --output-format pcm \ --text "10:00 a.m." \ --voice-id "Salli" \ TimeSpeech.mpgaws lex-runtime post-content \ --region
region
\ --bot-name OrderFlowersBot \ --bot-alias "\$LATEST" \ --user-id UserOne \ --content-type "audio/l16; rate=16000; channels=1" \ --input-stream TimeSpeech.mpg \ TimeOutputSpeech.mpg -
Para confirmar la entrega, cree el siguiente archivo de audio y envíelo a Amazon Lex:
aws polly synthesize-speech \ --region
region
\ --output-format pcm \ --text "yes" \ --voice-id "Salli" \ ConfirmSpeech.mpgaws lex-runtime post-content \ --region
region
\ --bot-name OrderFlowersBot \ --bot-alias "\$LATEST" \ --user-id UserOne \ --content-type "audio/l16; rate=16000; channels=1" \ --input-stream ConfirmSpeech.mpg \ ConfirmOutputSpeech.mpgDespués de confirmar la entrega, Amazon Lex envía una respuesta que confirma el cumplimiento de la intención:
{ "contentType": "text/plain;charset=utf-8", "dialogState": "ReadyForFulfillment", "intentName": "OrderFlowers", "inputTranscript": "yes", "slots": { "PickupDate": "2017-05-16", "PickupTime": "10:00", "FlowerType": "roses" } }
Paso siguiente
Ejercicio 2: Añadir un nuevo enunciado (AWS CLI)