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.
Probar el bot con entrada de voz (AWS CLI)
Para probar el bot utilizando archivos de audio, use la operación PostContent. Puede generar los archivos de audio mediante las operaciones de texto a voz de Amazon Polly.
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 Regiones y puntos de conexión de AWS en la referencia general de Amazon Web Services.
nota
El ejemplo de AWS CLI siguiente tiene formato 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 la AWS CLI, cree un archivo de audio con Amazon Polly. El ejemplo está preparado 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)