Bonnes pratiques en matière d’entités et de remplissage d’emplacements dans Copilot Studio
Qu’est-ce que le remplissage des emplacements ?
Le remplissage d’emplacements est lié à l’utilisation d’entités qui permettent à un copilote d’acquérir et d’utiliser des informations plus facilement en les identifiant et en les extrayant de la requête de l’utilisateur.
Un copilote a généralement besoin de plusieurs informations d’un utilisateur pour faire son travail. Pour acquérir ces informations, vous posez généralement des questions distinctes, une pour chaque fait dont le copilote a besoin. Lorsque vous utilisez des entités dans vos questions, Copilot Studio détecte les informations requises et ignore les questions où des informations pourraient être identifiées dans la requête utilisateur déclencheuse.
Par exemple, lorsqu’un utilisateur demande :
Je voudrais commander 3 grands t-shirts bleus
La compréhension du langage naturel (NLU) de Copilot Studio peut immédiatement comprendre :
- Le Sujet est une Commande.
- La Quantité est 3.
- La Couleur est Bleu.
- Le type d’article est T-shirt.
Le copilote peut alors ignorer les questions inutiles. Si certaines informations manquent, par exemple la Taille, il pose les questions qui n’ont pas de réponse avant de continuer. Le remplissage d’emplacements permet à votre copilote d’acquérir et d’utiliser des informations plus facilement et réduit le nombre de questions que vous devez poser.
Vous définissez d’abord les entités que vous souhaitez utiliser et leur type.
Définition des entités
Copilot Studio fournit plusieurs entités intégrées pour les scénarios d’utilisation les plus courants, tels que Adresse e-mail, Date et heure, Nom de la personne, Numéro de téléphone, Couleur, Pays, Ville, Nombre, Argent, et bien d’autres.
Les entités intégrées sont puissantes car elles peuvent gérer de nombreuses variantes de la forme que peut prendre une information. Par exemple, lors de l’utilisation de Argent dans une conversation, l’utilisateur peut saisir une valeur telle que « 100 € », « cent euros" ou « 100 euros ». Le modèle de NLU de Copilot Studio comprend que la valeur est une valeur monétaire de 100 euros.
Astuce
Quelle que soit la manière dont les valeurs sont saisies, tant qu’elles sont demandées par des questions dans le flux de la conversation, elles sont stockées dans des variables que vous pouvez réutiliser.
Vous pouvez également définir vos propres entités personnalisées, telles que le Type d’article de l’exemple précédent. Les entités personnalisées peuvent être de deux types :
- Liste fermée : pour une liste prédéfinie de valeurs.
- Expressions régulières (RegEx) : pour les informations correspondant à un schéma spécifique. Le type RegEx est idéal lorsque vous devez capturer des données qui suivent toujours le même format (par exemple, INC000001 pour un numéro de billet)
Amélioration de l’expérience utilisateur
L’utilisation d’entités vous simplifie la vie en permettant à Copilot Studio de recueillir plus intelligemment des informations à partir des requêtes des utilisateurs. Plus important encore, cela améliore la vie des utilisateurs, car les entités peuvent rechercher et stocker des informations à partir des requêtes des utilisateurs, puis rendre ces informations disponibles plus tard dans la conversation. Les entités améliorent l’expérience utilisateur en donnant l’impression que votre copilote est plus intelligent et les utiliser autant que possible est définitivement une pratique recommandée.
Bonnes pratiques en matière d’entités
Utiliser des synonymes
Vous pouvez ajouter des synonymes aux entités de liste fermée pour étendre manuellement la logique de correspondance pour chaque élément de la liste de l’entité. Par exemple, dans l’élément « randonnée », vous pouvez ajouter « trekking » et « alpinisme » comme synonymes.
Astuce
- L’utilisation de synonymes peut également faciliter le déclenchement de sujet, car ils augmentent le poids d’une phrase déclencheur en ajoutant des mots associés comme synonymes d’une entité qu’elle contient. Par exemple, pour une option « Réclamation », ajoutez des mots ou expressions négatifs similaires comme synonymes.
- Le modèle de NLU fait également un généralité avec toutes les variantes de l’entité (c’est-à-dire toutes leurs valeurs et leurs synonymes) dans le cas où une phrase déclencheur d’un sujet comprenne au moins une variation de cette entité. En d’autres termes, les auteurs du copilote doivent inclure un exemple de phrase déclencheur avec une utilisation de cette entité pour que le NLU puisse généraliser sur d’autres variantes d’entités.
Activer la correspondance active
Pour chaque entité de liste fermée, vous pouvez également activer la Correspondance intelligente.
La correspondance intelligente fait partie de l’intelligence prise en charge par le modèle NLU du copilote. Avec cette option activée, le bot interprète l’entrée de l’utilisateur à l’aide de la logique floue, en fonction des éléments répertoriés dans l’entité.
En particulier, le copilote corrige automatiquement les fautes d’orthographe et étend sa logique de correspondance sémantiquement. Par exemple, le copilote peut automatiquement faire correspondre softball à baseball.
Soyez créatif avec les expressions régulières
Parfois, l’extraction d’entités à partir d’une requête utilisateur peut prêter à confusion pour le modèle de NLU, en particulier lorsque plusieurs entités du même type sont présentes dans la requête utilisateur.
Par exemple, si un utilisateur dit :
Pouvez-vous apporter 2 serviettes et 1 oreiller dans la chambre 101
L’utilisation de l’entité Nombre intégrée peut prêter à confusion entre 2, 1 et 101. Pour éviter cette confusion, vous pouvez définir les entités d’expression régulière suivantes :
- Quantité de serviettes : [1-9] serviette
- Quantité d’oreillers : [1-9] oreiller
- Numéro de chambre : [0-9]{3}
Alternatives aux entités pour stocker des données référentielles
Pour les jeux de données volumineux ou évolutifs (par exemple, une liste de produits ou de clients), au lieu d’utiliser des entités de liste fermée Copilot Studio, vous voudrez peut-être consulter des sources externes. Vous devez transmettre l’énoncé de l’utilisateur au service externe à l’aide d’un flux de cloud Power Automate.
La logique de votre sujet peut alors valider l’exactitude du résultat (ou demander à l’utilisateur de le valider) avant d’avancer dans la conversation.
Dataverse est un bon candidat pour stocker de telles données, car il dispose d’une capacité de Recherche Dataverse intégrée qui prend en charge la correspondance approximative pour renvoyer les meilleurs résultats avec un score de confiance. Même si vous effectuez une recherche avec une phrase complète, il est capable de récupérer des correspondances potentielles.
Astuce
Pour examiner un exemple d’implémentation, voir Renvoyer une liste de résultats.