Test du bot avec une entrée vocale (AWS CLI) - Amazon Lex V1

Si vous utilisez Amazon Lex V2, consultez plutôt le guide Amazon Lex V2.

 

Si vous utilisez Amazon Lex V1, nous vous recommandons de mettre à niveau vos robots vers Amazon Lex V2. Nous n'ajoutons plus de nouvelles fonctionnalités à la V1 et recommandons vivement d'utiliser la V2 pour tous les nouveaux robots.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Test du bot avec une entrée vocale (AWS CLI)

Pour tester le bot à l'aide de fichiers audio, utilisez l'opération PostContent. Vous générez les fichiers audio à l'aide des opérations Amazon Polly. text-to-speech

Pour exécuter les commandes de cet exercice, vous devez connaître la région dans laquelle les commandes Amazon Lex et Amazon Polly seront exécutées. Pour obtenir la liste des régions pour Amazon Lex, consultezQuotas de service d'exécution. Pour obtenir la liste des régions pour Amazon Polly, voir AWSRégions et points de terminaison dans le manuel Amazon Web Services General Reference.

Note

L'exemple d'AWS CLI est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez "\$LATEST" par $LATEST et remplacez le caractère de continuation, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).

Pour utiliser une entrée vocale afin de tester le bot (AWS CLI)
  1. Dans leAWS CLI, créez un fichier audio à l'aide d'Amazon Polly. L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).

    aws polly synthesize-speech \ --region region \ --output-format pcm \ --text "i would like to order flowers" \ --voice-id "Salli" \ IntentSpeech.mpg
  2. Pour envoyer le fichier audio à Amazon Lex, exécutez la commande suivante. Amazon Lex enregistre le son de la réponse dans le fichier de sortie spécifié.

    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 répond en demandant le premier emplacement. Il enregistre la réponse audio dans le fichier de sortie spécifié.

    {
        "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. Pour commander des roses, créez le fichier audio suivant et envoyez-le à 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. Pour définir la date de livraison, créez le fichier audio suivant et envoyez-le à 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. Pour définir le délai de livraison, créez le fichier audio suivant et envoyez-le à 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. Pour confirmer la livraison, créez le fichier audio suivant et envoyez-le à 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

    Une fois que vous avez confirmé la livraison, Amazon Lex envoie une réponse confirmant la réalisation de l'intention :

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

Étape suivante

Exercice 2 : Ajout d'un nouvel énoncé (AWS CLI)