Utiliser des entités et le remplissage d’emplacements dans les copilotes Microsoft Copilot Studio

Important

Les capacités et les fonctionnalités de Power Virtual Agents font maintenant partie de Microsoft Copilot Studio, suite à des investissements significatifs dans l’IA générative et des intégrations améliorées dans Microsoft Copilot.

Certains articles et captures d’écran peuvent faire référence à Power Virtual Agents pendant que nous mettons à jour la documentation et le contenu de la formation.

Une grande partie des conversations de copilote dans Microsoft Copilot Studio consiste à comprendre le langage naturel, à savoir la capacité de l’IA à comprendre l’intention d’un utilisateur. Par exemple, la compréhension du langage naturel est impliquée lorsqu’un utilisateur peut saisir : « J’ai essayé d’utiliser ma carte cadeau, mais elle ne fonctionne pas ». Ensuite, le copilote est en mesure d’acheminer l’utilisateur vers la rubrique liée aux cartes cadeaux qui ne fonctionnent pas, même si cette phrase exacte n’est pas répertoriée comme une phrase déclencheur.

Un aspect fondamental de la compréhension du langage naturel consiste à identifier les entités dans un dialogue avec l’utilisateur. Voir la vidéo sur la prise en main des entités.

Une entité peut être considérée comme une unité d’information qui représente un certain type de sujet réel tel qu’un numéro de téléphone, un code postal, une ville, voire le nom d’une personne. Les connaissances accordées par les entités permettent au copilote de reconnaître les informations pertinentes à partir de l’entrée utilisateur et de les enregistrer pour une utilisation ultérieure.

Entités prédéfinies

Les entités des copilotes vous permettent de stocker des informations dans des groupes similaires.

Microsoft Copilot Studio intègre un ensemble d’entités prédéfinies prêtes à l’emploi, qui représentent les informations stéréotypées les plus couramment utilisées dans les dialogues réels, par exemple l’âge, les couleurs, les nombres et les noms.

Les connaissances accordées par les entités permettent au copilote de reconnaître les informations pertinentes à partir de l’entrée utilisateur et de les enregistrer pour une utilisation ultérieure.

Pour aider à comprendre cette notion, prenons comme exemple l’entité Argent.

  1. Dans Microsoft Copilot Studio, dans le menu de navigation, sélectionnez Entités.

    Accédez à l’onglet Entités.

    Vous voyez la liste des entités prédéfinies disponibles.

    Volet Entités.

  2. Sélectionnez l’entité Argent, ce qui ouvre le volet de détails de l’entité.

    Description de l’entité Argent.

Ici, vous pouvez voir une explication de cette entité et les façons de l’utiliser pour rechercher des informations relatives à l’argent ou à la devise dans les entrées d’un utilisateur.

Par exemple, lorsqu’un utilisateur saisit « Cela coûte 1 000 dollars », en utilisant cette entité monétaire, le copilote sait que « 1 000 dollars » représente l’information de type monétaire. Lorsque le copilote extrait cette entité et l’enregistre dans une variable, il enregistre « 1 000 » en tant que nombre, même si les informations environnantes sont au format texte.

Entités personnalisées

Les entités prédéfinies couvrent les types d’informations couramment utilisés, mais en certaines occasions, comme lors de la création d’un copilote qui répond à un objectif spécifique, vous devrez enseigner au modèle de compréhension du langage du copilote certaines connaissances spécifiques à un domaine.

Par exemple, imaginons que vous voulez créer un copilote pour un magasin de produits d’extérieur. Dans ce cas, vous devrez apprendre au copilote à reconnaître la catégorie « produits vestimentaires de plein air » dans un dialogue.

Pour ce faire, vous devez créer une entité personnalisée. Dans ce cas, vous pouvez créer une entité qui donne au copilote la connaissance de toutes les catégories de produits de plein air.

  1. Dans Microsoft Copilot Studio, dans le menu de navigation, sélectionnez Entités.

    Accédez à l’onglet Entités pour créer une nouvelle entité.

  2. Sélectionnez le bouton Nouvelle entité dans le menu principal.

    Sélectionnez Nouvelle entité.

  3. Cela ouvre un volet dans lequel vous pouvez choisir le type d’entité : soit une entité Liste fermée ou une entité Expression régulière (regex).

Entités de liste fermée

Les entités de liste fermée vous permettent de définir une liste d’éléments. Ceci est mieux utilisé pour les petites listes faciles à gérer et qui ont des étiquettes d’éléments simples.

Capture d’écran de la fenêtre de création d’entité, avec l’option Liste fermée en surbrillance.

La sélection de cette option lors de la création d’une entité affiche un volet où vous pouvez spécifier le nom de l’entité, une description facultative et entrer les éléments que vous souhaitez inclure dans l’entité.

Capture d’écran du volet de la liste Entités.

Lorsque vous saisissez des éléments, vous pouvez :

  • Sélectionner chaque élément pour changer son nom.
  • Sélectionner l’icône de la corbeille pour supprimer l’élément de la liste.
  • Sélectionnez + Synonymes (ou sélectionnez les synonymes répertoriés s’ils ont déjà été ajoutés) pour ouvrir le volet Modifier les synonymes.

Vous pouvez ajouter des synonymes pour développer 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.

Capture d’écran du volet Modifier les synonymes.

Pour chaque entité, vous pouvez également activer Correspondance intelligente.

La correspondance intelligente fait partie de l’intelligence prise en charge par le modèle de compréhension du langage du copilote. Avec cette option activée, le copilote interprétera l’entrée de l’utilisateur à l’aide de la logique partielle, en fonction des éléments répertoriés dans l’entité.

En particulier, le copilote corrigera automatiquement les fautes d’orthographe et étendra sa logique de correspondance sémantiquement. Par exemple, le copilote peut automatiquement faire correspondre « softball » à « baseball ».

Capture d’écran de la bascule d’option de correspondance intelligente.

Lorsque vous avez terminé de créer ou de modifier votre entité, sélectionnez Enregistrer pour enregistrer et revenir à la liste des entités. Sélectionnez Fermer pour annuler vos modifications (vous aurez la possibilité de revenir à la modification de l’entité au cas où vous auriez accidentellement sélectionné la mauvaise option).

Entités d’expression régulière (Regex)

Les entités d’expression régulière (regex) vous permettent de définir des modèles logiques que vous pouvez utiliser pour faire correspondre et extraire des informations d’une entrée. Les entités Regex sont idéales pour la mise en correspondance de modèles complexes avec l’entrée d’un utilisateur, ou si vous devez autoriser des variations spécifiques dans la façon dont un utilisateur peut formater ou entrer son entrée dans une conversation.

Par exemple, une entité regex vous permet d’identifier des éléments tels qu’un ID de suivi, un numéro de licence, un numéro de carte de crédit ou une adresse IP à partir d’une chaîne que l’utilisateur saisit dans le copilote.

Capture d’écran de la fenêtre de création d’entité, avec l’option Regex en surbrillance.

La sélection de cette option lors de la création d’une entité affiche un volet où vous pouvez spécifier le nom de l’entité, une description facultative et entrer le schéma regex qui doit être utilisé pour associer et extraire les éléments d’entité depuis l’entrée.

Capture d’écran du volet de l’entité Regex.

Une entité regex Microsoft Copilot Studio utilise la Syntaxe des expressions régulières .NET.

Par défaut, la correspondance de modèle est sensible à la casse, pour la rendre insensible à la casse, utilisez l’option d’expression régulière (?i) dans votre chaîne de modèle. Quelques exemples de base sont inclus dans le volet d’entité regex, et des informations supplémentaires sur la syntaxe et d’autres exemples peuvent être trouvés dans la rubrique Langage d’expression régulière – Référence rapide.

Si vous devez faire en sorte que l’expression régulière accepte plusieurs modèles, vous pouvez utiliser l’opérateur d’alternance | pour concaténer des expressions régulières. Par exemple, vous pouvez combiner deux modèles d’expression régulière pour rechercher à la fois l’ancien et le nouveau format d’un code d’identification de produit.

Lorsque vous avez terminé de créer ou de modifier votre entité, sélectionnez Enregistrer pour enregistrer et revenir à la liste des entités. Sélectionnez Fermer pour annuler vos modifications (vous aurez la possibilité de revenir à la modification de l’entité au cas où vous auriez accidentellement sélectionné la mauvaise option).

Utiliser des entités dans une conversation

Maintenant que vous avez fait ce qu’il faut pour donner au copilote des connaissances sur les équipements de plein air en créant cette entité de catégorie de produits et quelques autres entités personnalisées, vous pouvez commencer à les utiliser lors de la création d’une conversation de copilote.

  1. Accédez à la page Sujets pour le copilote que vous souhaitez modifier.

  2. Ouvrez le canevas de création du sujet auquel vous souhaitez ajouter une entité.

  3. Sélectionnez Ajouter un nœud (+), puis sélectionnez Poser une question.

    Capture d’écran de l’ajout d’un nœud.

  4. En dessous de Identifier, sélectionnez l’entité que vous avez créée dans Entités personnalisées.

    Nœud de question avec sélection d’entité.

  5. Vous pouvez également sélectionner des éléments à afficher sous forme de boutons. Par exemple, si vous souhaitez afficher certaines catégories sous forme de boutons que les utilisateurs puissent facilement choisir comme entrée, vous pouvez simplement choisir Options de sélection de l’utilisateur, puis sélectionnez-les dans la liste qui contient les éléments que vous avez ajoutés lorsque vous avez créé l’entité personnalisée.

    Ajouter des nœuds de condition.

    Autres nœuds de condition.

  6. Nommez la variable pour la sortie de la réponse de l’utilisateur, si nécessaire.

Remplissage d’emplacement

Le remplissage d’emplacement est un concept de compréhension du langage naturel qui implique d’enregistrer une entité extraite dans un objet. Cependant, dans Microsoft Copilot Studio, le remplissage d’emplacement consiste à placer la valeur d’entité extraite dans une variable.

Nous continuerons à utiliser la rubrique des équipements de plein air comme exemple ; il sera déclenché en tapant « Je veux acheter quelque chose » dans le chat de test.

La rubrique est correctement déclenchée et le copilote demande la catégorie de produit ; il affiche également le choix de boutons spécifié lors de la création du nœud Poser une question. Dans l’arborescence de dialogue, le suivi entre les rubriques montre également que le copilote s’exécute jusqu’au nœud de question que vous venez de modifier.

suivi entre les rubriques.

Un utilisateur peut utiliser les choix prédéfinis en sélectionnant l’un des boutons. Sinon, il peut taper quelque chose comme « trekking » et voir que ce mot renvoie à « randonnée », car ces mots ont été définis comme synonymes.

Suivi supplémentaire entre les rubriques.

Le suivi entre les rubriques montre que le dialogue est correctement dirigé vers le chemin dans lequel la valeur de la catégorie de produit est « Randonnée ». Vous pouvez inspecter la valeur de la variable dans la fenêtre d’observation des variables au bas du canevas de création. Dans la fenêtre d’observation, la valeur de la variable est « Randonnée ».

Essentiellement, le remplissage des emplacement a eu lieu en insérant l’entité extraite « Randonnée » dans la variable VarProductCategory.

Fenêtre d’observation des variables.

Vous pouvez également utiliser ce que l’on appelle le « remplissage proactif des emplacements », où l’utilisateur peut spécifier plusieurs informations qui sont mises en correspondance avec plusieurs entités. Le copilote est capable de comprendre automatiquement les informations appartenant à une entité spécifique. Dans les cas où il n’est pas sûr de la mise en correspondance, il invite l’utilisateur à être plus précis en fournissant des choix.

Dans cet exemple, l’utilisateur a écrit « Je veux acheter des équipements de randonnée ». Cela inclut la phrase de déclenchement (l’utilisateur veut acheter de l’équipement), mais fournit également une deuxième information : le type réel d’équipement. Dans ce cas, le copilote renseigne l’entité pour l’achat d’équipement et l’entité pour le type d’équipement.

Remplissage multiple et proactif des emplacements.

Dans le suivi entre les rubriques, vous pouvez voir que le copilote accepte l’entrée utilisateur et ignore judicieusement le nœud de question qui demande la catégorie de produit.

Le copilote écoute toujours activement les entrées utilisateur, se souvenant des informations à l’avance afin d’ignorer les étapes inutiles, le cas échéant.

Reprenons le test et essayons un autre cas. Dans cet essai, vous pouvez ajouter quelques nœuds de questions supplémentaires pour demander des choses comme le type d’équipement de randonnée ainsi que la fourchette de prix (en utilisant l’entité Argent).

Cette fois-ci, lorsque la question sur la catégorie de produit est posée, au lieu d’indiquer au copilote uniquement la catégorie de produit, l’utilisateur peut préciser : « Je souhaite acheter une paire de chaussures de randonnée coûtant moins de 100 $ ». Dans cet exemple, le copilote est non seulement en mesure d’acheminer vers le chemin adéquat de catégorie de produits de randonnée, mais aussi de remplir activement les emplacements demandant le type d’équipement de randonnée et les informations sur la fourchette de prix cible.

suivi entre les rubriques pour les catégories de produits et le prix.

Le remplissage proactif des emplacements peut être contrôlé manuellement au niveau du nœud. Si vous souhaitez toujours poser la question dans un nœud spécifique, que l’emplacement ait été rempli à partir des réponses précédentes de l’utilisateur ou non, vous pouvez désactiver l’option Ignorer la question pour ce nœud de question.

Ignorer la question.

Regarder une vidéo d’approfondissement