Comment désactiver les miniatures de fichiers sur Windows 10
6 août 2020
Les meilleurs traitements anti-vergetures (Mise à jour: août 2020) · CompraMejor.es
6 août 2020

AWS Lex

AWS Lex est le service d'Amazon pour créer vos propres chatbots. Construit à l'aide de la même technologie d'apprentissage automatique qu'Alexa, Lex peut reconnaître l'intention de l'utilisateur, rechercher des données supplémentaires, puis répondre aux demandes des utilisateurs à l'aide de Lambda pour l'exécution de code.

Qu'est-ce qu'AWS Lex?

AWS Lex est composé de nombreux services d'apprentissage automatique, dont la plupart sont disponibles en tant que service AWS autonome.

La première étape est la reconnaissance vocale, c'est-à-dire la conversion de mots prononcés en texte qu'une machine peut comprendre plus facilement. Le service Transcribe d'AWS le fait très bien, bien qu'il soit mieux adapté aux applications non temps réel, telles que le sous-titrage de vidéos ou la transcription des journaux d'appels audio. Cette étape n'est pas nécessaire si vous créez un chatbot textuel, mais elle est cruciale pour des bots comme Alexa et Siri.

Cependant, les machines ne comprennent pas automatiquement le langage humain, donc extraire les éléments utiles d'une phrase donnée est essentiel pour que le chatbot réponde couramment aux commandes. AWS Comprendre le fait avec une grande précision et est capable de sélectionner et d'identifier des mots-clés dans le texte d'entrée.

Combiné à une logique personnalisée pour dicter le déroulement d'une conversation, Lex est capable de répondre aux commandes de l'utilisateur et d'envoyer des tâches à Lambda pour un traitement ultérieur. Au cours d'une conversation, AWS Lex peut également interroger les utilisateurs pour obtenir des informations supplémentaires; par exemple, si un utilisateur tente de prendre rendez-vous, Lex peut lui demander une date et une heure qui lui conviennent.

La sortie texte de Lex peut également être convertie en parole à l'aide d'AWS Polly, ce qui permet une expérience de chatbot fluide.

Compte tenu de la mesure de tous les services de composants, le prix de Lex lui-même est étonnamment simple: vous êtes facturé 0,004 USD par demande vocale (4 USD pour mille) et 0,001 USD par demande de texte (1 USD pour mille).

Contrairement à la plupart des services AWS, Lex n'est actuellement disponible que dans trois régions:

  • us-east-1 (Virginie du Nord)
  • us-west-2 (Oregon)
  • eu-west-1 (Irlande)

Compte tenu de la façon dont un chatbot dépend généralement de la latence, il est surprenant de ne voir que quelques régions prises en charge, mais Lex ne prend également en charge que l'anglais, de sorte que les choix de région ont du sens.

Comment fonctionne Lex?

Pour commencer, rendez-vous sur la console Lex. Quelques exemples d'applications sont déjà créés que vous pouvez essayer par vous-même, mais nous allons continuer et créer un nouveau bot personnalisé afin que vous puissiez voir comment ils sont créés.

Création d'un bot personnalisé.

Tout commence par les intentions. Vous pouvez considérer les intentions comme certaines actions dont votre bot est capable, telles que la planification de rendez-vous, la commande d'éléments, etc. Chaque intention nécessite quelques mots déclencheurs, appelés énoncés, qui démarrent la conversation. Essayez de garder ces derniers assez brefs; par exemple, "prendre un rendez-vous" fonctionne mieux que "Je souhaite prendre un rendez-vous".

Déclarations AWS Lex

Votre bot peut avoir plusieurs intentions et plusieurs énoncés associés à chaque intention. Vous devriez essayer de capturer toutes les différentes façons dont un utilisateur peut déclarer son intention.

Une fois que le bot démarre un intent, il demande à l'utilisateur des données supplémentaires. Techniquement, vous n'avez pas besoin de données supplémentaires, et vous pouvez demander à votre bot de terminer la conversation et d'exécuter son action immédiatement.

Les données supplémentaires se présentent sous la forme de slots. Vous pouvez les considérer comme des arguments pour une commande – le bot doit interroger l'utilisateur pour chaque argument avant d'envoyer son action finale. Les arguments sont sensibles au type. Par conséquent, si Lex demande à un utilisateur combien d'articles il souhaite commander, il n'acceptera pas «vert» comme réponse.

AWS propose déjà de nombreux types prédéfinis, dont la plupart sont identifiés par AWS Comprehend. Si vous demandez une date à un utilisateur, utilisez AMAZON.DATE, et si vous demandez une adresse, utilisez AMAZON.StreedAddress.

Chaque emplacement est livré avec sa propre invite, qui est affichée ou lue à l'utilisateur. Par exemple, si vous demandez à l'utilisateur la date de son rendez-vous, vous pouvez écrire quelque chose comme "Pour quel jour souhaitez-vous prendre rendez-vous?"

Slots AWS Lex

Vous pouvez également créer vos propres types de machines à sous. Par exemple, si vous proposez différents types de rendez-vous, vous pouvez les ajouter dans votre propre type. Lex élargit les valeurs de vos emplacements pour inclure des réponses similaires que vous pouvez obtenir des utilisateurs du monde réel. Vous pouvez également limiter votre type d'emplacement personnalisé aux seuls mots et synonymes exacts, si vous souhaitez qu'il soit plus strict. Une bonne règle de base, cependant, est d'inclure les types dans l'invite de l'emplacement afin que l'utilisateur connaisse les options. Sinon, certaines personnes peuvent rester bloquées.

De plus, vous pouvez intégrer des slots directement dans les énoncés. Si un utilisateur dit "Je souhaite prendre un rendez-vous demain,”Vous pouvez supprimer l'étape supplémentaire et considérer que la fente est remplie. Vous pouvez le faire en entourant le nom de l'emplacement avec des crochets dans la définition de l'énoncé:

un rendez-vous le {AppointmentDate}

C'est toute la configuration dont votre bot a besoin, mais la plupart des utilisateurs aiment voir une invite de confirmation avant que l'action ne soit entreprise, à la fois pour leur tranquillité d'esprit et pour s'assurer que le bot n'a pas foiré quelque chose. Lex prend en charge cela, sous les paramètres «Invite de confirmation». Vous pouvez inclure des variables d'emplacement dans l'invite, que Lex remplit avec ce que l'utilisateur a dit (au meilleur de sa connaissance, au moins).

Paramètres de confirmation Lex

De là, vous pouvez cliquer sur Build pour tester votre bot dans le panneau de test intégré. Il doit répondre à votre énoncé et vous demander chacun des créneaux que vous lui avez attribués. Il devrait bien répondre aux modifications de la structure des commandes, mais si ce n’est pas le cas, vous voudrez peut-être ajouter d’autres énoncés ou étendre vos définitions d’emplacement.

Test du chatbot AWS Lex

Par défaut, Lex fonctionne en mode débogage et renvoie simplement les valeurs des emplacements une fois que c'est fait. Vous pouvez modifier cela pour appeler une fonction Lambda, en transmettant les valeurs de l'emplacement en tant que paramètres à la fonction. C'est à vous de décider quoi faire à partir d'ici. Vous pouvez également prendre manuellement plus de contrôle sur Lex à l'aide d'un crochet de validation Lambda; cela vous permet d'exécuter une fonction Lambda chaque fois qu'un utilisateur répond, soit de valider et d'activer l'entrée, soit d'inviter à nouveau l'utilisateur.

Une fois votre bot terminé, vous pouvez envoyer un message de réponse indiquant à l'utilisateur comment la fonction Lambda a géré ses entrées, ou simplement les remercier pour leur service.

//]]>