Test di un bot utilizzando l'input vocale (AWS CLI) - Amazon Lex versione 1

Avviso di fine del supporto: il 15 settembre 2025 AWS interromperà il supporto per Amazon Lex V1. Dopo il 15 settembre 2025, non potrai più accedere alla console Amazon Lex V1 o alle risorse Amazon Lex V1. Se utilizzi Amazon Lex V2, consulta invece la guida Amazon Lex V2.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Test di un bot utilizzando l'input vocale (AWS CLI)

Per testare il bot utilizzando file audio, usa l'operazione PostContent. I file audio vengono generati utilizzando le operazioni di Amazon Polly text-to-speech.

Per eseguire i comandi di questo esercizio, devi conoscere la regione in cui verranno eseguiti i comandi Amazon Lex e Amazon Polly. Per un elenco delle regioni per Amazon Lex, consultaQuote di servizio runtime. Per un elenco delle regioni per Amazon Polly, consulta AWS Regioni ed endpoint nel riferimento generale di Amazon Web Services.

Nota

L' AWS CLI esempio seguente è formattato per Unix, Linux e macOS. Per Windows, modifica "\$LATEST" in $LATEST e sostituisci il carattere di continuazione UNIX barra rovesciata (\) al termine di ogni riga con un accento circonflesso (^).

Per testare il bot utilizzando l'input vocale (AWS CLI)
  1. Nel AWS CLI, crea un file audio utilizzando Amazon Polly. L'esempio è formattato per Unix, Linux e macOS. Per Windows, sostituisci il carattere di continuazione UNIX barra rovesciata (\) al termine di ogni riga con un accento circonflesso (^).

    aws polly synthesize-speech \ --region region \ --output-format pcm \ --text "i would like to order flowers" \ --voice-id "Salli" \ IntentSpeech.mpg
  2. Per inviare il file audio ad Amazon Lex, esegui il comando seguente. Amazon Lex salva l'audio della risposta nel file di output specificato.

    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 risponde con una richiesta per il primo slot. quindi salva l'audio della risposta nel file di output specificato.

    {
        "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. Per ordinare delle rose, crea il seguente file audio e invialo ad 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. Per impostare la data di consegna, crea il seguente file audio e invialo ad 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. Per impostare il tempo di consegna, crea il seguente file audio e invialo ad 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. Per confermare la consegna, crea il seguente file audio e invialo ad 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

    Dopo aver confermato la spedizione, Amazon Lex invia una risposta che conferma l'adempimento dell'intento:

    {
        "contentType": "text/plain;charset=utf-8", 
        "dialogState": "ReadyForFulfillment", 
        "intentName": "OrderFlowers", 
        "inputTranscript": "yes", 
        "slots": {
            "PickupDate": "2017-05-16", 
            "PickupTime": "10:00", 
            "FlowerType": "roses"
        }
    }
    

Fase succcessiva

Esercizio 2. Aggiunta di una nuova enunciazione (AWS CLI)