Probar el bot con entrada de voz (AWS CLI) - Amazon Lex V1

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)
  1. 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
  2. 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.mpg

    Amazon 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?"
    }
  3. 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.mpg
    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 FlowerTypeSpeech.mpg \ FlowerTypeOutputSpeech.mpg
  4. 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.mpg
    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 DateSpeech.mpg \ DateOutputSpeech.mpg
  5. 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.mpg
    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 TimeSpeech.mpg \ TimeOutputSpeech.mpg
  6. 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.mpg
    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 ConfirmSpeech.mpg \ ConfirmOutputSpeech.mpg

    Despué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)