Comprendre les entités dans Dialogflow

Comprendre les entités dans Dialogflow

À propos de cet atelier de programmation

subjectDernière mise à jour : oct. 8, 2020
account_circleRédigé par Joanna Smith

1. Avant de commencer

Les entités sont un mécanisme de Dialogflow permettant d'identifier et d'extraire des données utiles à partir d'entrées en langage naturel. Bien que les intents permettent à l'agent de comprendre la motivation derrière une entrée utilisateur particulière, les entités servent à repérer des informations spécifiques que les utilisateurs mentionnent (des adresses postales aux noms de produits ou aux montants avec unités). Toutes les données importantes que vous souhaitez obtenir à partir d'une requête utilisateur ont une entité correspondante.

La liste suivante explique les trois types d'entités :

  • Les entités système fournies avec Dialogflow permettent aux agents d'extraire des informations sur un large éventail de concepts sans configuration supplémentaire. Par exemple, des entités système sont disponibles pour extraire des dates, des heures et des lieux à partir d'entrées en langage naturel.
  • Les entités de développeur, que vous définissez, extraient des informations sur des concepts autres que ceux couverts par les entités système. Par exemple, une marque peut créer une entité de développeur pour reconnaître un ensemble unique de noms de produits.
  • Les entités de session, que vous définissez également, ne s'appliquent qu'à une conversation spécifique. Par exemple, vous pouvez créer une entité de session pour représenter les options urgentes disponibles pour un utilisateur particulier lors de la réservation.

Prérequis

Avant de continuer, vous devez effectuer les ateliers de programmation suivants :

  1. Créer un planning de rendez-vous avec Dialogflow
  2. Intégrer un chatbot Dialogflow à Actions on Google

Vous devez également comprendre les concepts et les constructions de base de Dialogflow, que vous pouvez découvrir dans les vidéos suivantes du parcours de formation Créer un chatbot avec Dialogflow :

Points abordés

  • Créer et utiliser des entités système dans Dialogflow
  • Créer et utiliser des entités de développeur dans Dialogflow
  • Tester l'agent

Ce que vous allez faire

  • Version améliorée d'un agent Dialogflow déjà créé
  • Entités de développeur dans Dialogflow
  • Entités système dans Dialogflow

Prérequis

  • Un navigateur Web et une adresse e-mail pour se connecter à la console Dialogflow

2. Activer et utiliser les entités système dans Dialogflow

  1. Accédez à la console Dialogflow.
  2. Sélectionnez l'agent AppointmentScheduler que vous avez créé précédemment.

ecedc445a9578e3b.png

  1. Cliquez sur Intents.

37ee739b69fa1ae7.png

  1. Cliquez sur Planifier des rendez-vous pour ouvrir les paramètres de l'intention.

Vous remarquerez des expressions d'entraînement comme "Prends rendez-vous pour demain à 16h", où Date et Heure sont automatiquement extraits en tant que @sys.date et @sys.time. N'hésitez pas à ajouter d'autres expressions d'entraînement pour voir comment Dialogflow extrait automatiquement les entités système.

7dcdad1372191f90.png

Comme vous l'avez vu, les entités système permettent aux agents d'extraire des informations sur un large éventail de concepts sans configuration supplémentaire. Les données telles que les adresses, les adresses e-mail, les devises et les numéros de téléphone sont des exemples courants d'entités système. Pour en savoir plus, consultez Entités système.

3. Activer et utiliser des entités de développeur dans Dialogflow

Créer des entités de développeur

Jusqu'à présent, vous vous êtes adressé à votre outil de planification de rendez-vous de manière générique. Supposons maintenant que votre planificateur soit destiné au bureau des véhicules motorisés d'un État, qui propose principalement des services de permis de conduire et d'immatriculation. Créez ces entités.

  1. Cliquez sur Entités.

4d8924f1d4edc0d1.png

  1. Cliquez sur Créer une entité.

b77e94e5e47adbc7.png

  1. Saisissez "AppointmentType" comme nom d'entité, puis ajoutez "Immatriculation du véhicule" et "Permis de conduire" comme deux valeurs de référence avec quelques synonymes, comme illustré dans l'image suivante. Cliquez sur Enregistrer.

51562b4327dbaf1.png

Vous pouvez ajouter d'autres lignes avec d'autres services en tant que types d'entités.

  1. Cliquez sur Enregistrer.

Modifier l'intention pour tenir compte de l'entité développeur nouvellement créée

  1. Cliquez sur Intent.
  2. Saisissez "Règle un rendez-vous pour le permis de conduire à 15h demain" dans l'intention de planifier un rendez-vous.

Vous verrez la reconnaissance automatique de permis de conduire, à 15h et demain en tant qu'entités système et développeur.

5fb91b31806f06f.png

  1. Saisissez les expressions d'entraînement suivantes :
  2. Rendez-vous pour le renouvellement de la licence lundi
  3. Prends rendez-vous lundi à 14h pour une licence
  4. Rendez-vous pour l'immatriculation du véhicule lundi

5addff06908c61f8.png

  1. Vous devez rendre AppointmentType obligatoire, comme pour l'heure et la date. Pour ce faire, accédez à Actions and Parameters (Actions et paramètres), puis cochez la case sur la ligne AppointmentType.

c43e72c5c1a43f5c.png

  1. Ajoutez une requête, par exemple "Quels services recherchez-vous ? Le DMV propose des services d'immatriculation de véhicules et de permis de conduire." Si l'utilisateur ne fournit pas de type de rendez-vous, la requête sera utilisée.
  2. Cliquez sur Enregistrer.

4. Tester le chatbot

Vous pouvez tester votre chatbot dans le simulateur Actions, ou utiliser l'intégration Web ou Google Home que vous avez apprise précédemment.

Scénario de test 1

Dans ce cas, l'utilisateur demande uniquement à fixer un rendez-vous sans fournir les trois informations. Dialogflow lui demande donc la date, l'heure et le type de rendez-vous à l'aide des invites de remplissage d'emplacement que vous avez définies.

  1. Utilisateur : "Prends un rendez-vous."
  2. Chatbot : "Quelle date ?"
  3. Utilisateur : "23 mai."
  4. Chatbot : "À quelle heure souhaitez-vous venir ?"
  5. Utilisateur : "10h"
  6. Chatbot : "Quels services recherchez-vous ? Le DMV propose des services d'immatriculation de véhicules et de permis de conduire."
  7. Utilisateur : "Licence."
  8. Chatbot : "Votre rendez-vous pour l'immatriculation de votre véhicule est prévu le 23/05/2019 à 10h00. À bientôt !"

Scénario de test 2

Dans ce cas, l'utilisateur demande à prendre rendez-vous en fournissant des informations partielles. Dialogflow lui demande donc la date, l'heure et le type de rendez-vous à l'aide des invites de remplissage d'emplacement que vous avez définies.

  1. Utilisateur : "J'ai besoin d'un rendez-vous pour demain à 16h."
  2. Chatbot : "Quels services recherchez-vous ? Le DMV propose des services d'immatriculation de véhicules et de permis de conduire."
  3. Utilisateur : "Licence."
  4. Chatbot : "Votre rendez-vous pour le permis de conduire est fixé au 24/04/2019 à 16h00. À bientôt !"

Scénario de test 3

Dans ce cas, l'utilisateur fournit toutes les informations. Dialogflow traite les informations et fournit une réponse confirmant le rendez-vous.

  1. Utilisateur : "Prends rendez-vous pour l'immatriculation du véhicule à 14h demain."
  2. Chatbot : "Votre rendez-vous pour l'immatriculation de votre véhicule est prévu le 24/04/2019 à 14h00. À bientôt !"

5. Effectuer un nettoyage

Si vous prévoyez de suivre d'autres ateliers de programmation Dialogflow, ignorez cette section pour le moment et revenez-y plus tard.

Supprimer l'agent Dialogflow

  • Cliquez sur fe9c61cc27fb9f2e.png à côté de votre agent existant.

520c1c6bb9f46ea6.png

  • Dans l'onglet Général, faites défiler la page jusqu'en bas, puis cliquez sur Supprimer cet agent.
  • Saisissez Supprimer dans la boîte de dialogue, puis cliquez sur Supprimer.

6. Félicitations

Vous avez créé un chatbot qui gère les entrées personnalisées avec des entités de développeur. Vous êtes maintenant développeur de chatbots !

En savoir plus

Pour en savoir plus, consultez les ressources suivantes :