Entités personnalisées

Vous pouvez créer des entités personnalisées pour extraire des informations d'entrée utilisateur spécifiques aux cas d'utilisation de vos compétences.

Comme les entités intégrées extraient des informations génériques, elles peuvent être utilisées dans un large éventail de robots. En revanche, les entités personnalisées ont une application plus limitée. Comme l'entité AccountType de FinancialBot qui autorise diverses transactions bancaires en recherchant dans l'entrée de l'utilisateur des mots clés tels que chèques, épargne et cartes de crédit, ces entités sont adaptées aux actions particulières effectuées par votre robot.

Entité composite

Une entité composite regroupe des entités connexes pouvant être traitées dans leur ensemble dans le cadre d'une conversation. L'utilisation des entités composites permet d'extraire des valeurs pour plusieurs entités dans un seul énoncé d'utilisateur, ce qui permet une conversation fluide. Très tôt dans la conception de vos compétences, vous devez identifier ces groupes d'entités connexes, qui reflètent souvent des domaines d'activité spécifiques, et définir les entités composites appropriées.

Par exemple, une entité composite pour une pizza peut inclure des entités pour le type, la taille, la croûte et les garnitures supplémentaires. Si un utilisateur entre "Je voudrais une grande pizza pepperoni avec une croûte sans gluten", la compétence peut extraire les informations "grande", "pepperoni" et "sans gluten"et n'a pas besoin de demander ces valeurs une par une à l'utilisateur.

Vous pouvez configurer une entité composite de façon à résoudre ses éléments constitutifs de différentes façons : elle peut demander des valeurs d'entité individuelles lorsqu'elles n'apparaissent pas dans l'entrée utilisateur, par exemple, ou elle peut utiliser la valeur extraite par une de ses entités pour la résolution d'une deuxième.

Les entités composites peuvent également inclure d'autres types d'élément, tels que ceux qui stockent l'emplacement, et acceptent le texte libre et les pièces jointes.

Les entités d'entité composite vous permettent d'écrire des définitions de flux de dialogue beaucoup plus courtes et plus compactes car elles peuvent être résolues à l'aide d'un seul composant. Voir Configurer des entités composites pour plus de détails sur la création et la configuration d'entités composites.

Entités ML

Une entité d'apprentissage automatique utilise un modèle pour identifier les valeurs d'entité dans un message utilisateur. Vous créez ce modèle à partir des énoncés d'entraînement avec des annotations : texte étiqueté qui correspond à une entité. Dans les énoncés suivants, les énoncés Flo et SFO peuvent être annotés pour une entité qui identifie les fournisseurs pour une compétence de rapport de frais :
  • Remboursez-moi 100 $ pour le dîner chez Flo's
  • SFO a facturé 2,75 $ pour le stationnement le 25 mai
Vous pouvez commencer en fournissant vos propres énoncés annotés, mais vous pouvez regrouper les données d'entraînement en sélectionnant des tâches d'annotation d'entité dans Data Manufacturing. Après avoir entraîné l'entité, elle peut interpréter le contexte d'un message et généraliser les valeurs d'entité. Cette approche flexible permet à une entité ML de reconnaître des valeurs même lorsqu'elles ne sont pas incluses dans l'ensemble d'entraînement.

Comme il est difficile d'anticiper le format ou le libellé des messages utilisateur, en particulier pour les compétences multilingues, vous pouvez utiliser une entité ML à la place des entités de liste de valeurs et d'expression rationnelle moins flexibles. Malgré la mise en correspondance floue, les entités de liste de valeurs (statiques et dynamiques) peuvent souvent détecter des valeurs d'entité uniquement lorsqu'elles correspondent à leurs valeurs ou à leurs synonymes. "Ingénieur informatique" peut ne pas correspondre à "ingénierie informatique", par exemple. Les entités d'expression rationnelle limitent l'entrée utilisateur à correspondre à un modèle prédéterminé ou à la formulation qui procède ou suit une valeur d'entité. Les entités ML, par contre, sont adaptables et peuvent l'être davantage grâce à des données d'entraînement robustes.

Entités de liste de valeurs

Entité basée sur une liste de valeurs prédéfinies, comme les éléments de menu sortis par un composant de réponse commune. Vous pouvez optimiser la capacité de l'entité à analyser l'entrée utilisateur en définissant des synonymes. Il peut s'agir d'abréviations, de termes argotiques et de fautes d'orthographe courantes. Les valeurs des synonymes ne sont pas sensibles à la casse : États-Unis et usa, par exemple, sont considérées comme une même valeur.

Entités dynamiques

Les entités dynamiques sont des entités dont les valeurs peuvent être mises à jour, même après la publication de la compétence.
Note

Les entités dynamiques ne sont prises en charge que dans les instances Oracle Digital Assistant qui ont été provisionnées sur Oracle Cloud Infrastructure (parfois appelée infrastructure en nuage de 2e génération). Si votre instance est provisionnée sur la plate-forme Oracle Cloud (comme toutes les instances de la version 19.4.1), vous ne pouvez pas utiliser cette fonction.
Comme les entités de liste de valeurs, les entités dynamiques sont de type énumération. Cependant, les entités dynamiques diffèrent des entités de liste de valeurs car leurs valeurs ne sont pas statiques; elles peuvent être modifiées fréquemment. Pour cette raison, et également parce que les entités dynamiques peuvent contenir des milliers de valeurs et de synonymes, les valeurs ne sont généralement pas gérées dans l'interface utilisateur. Elles sont gérées par l'API d'entités dynamiques (décrite dans la rubrique API REST pour Oracle Digital Assistant).
Note Les modèles vocaux améliorés créés pour les valeurs d'entité dynamique ne sont actuellement entraînés qu'après une demande de poussée finalisée à partir de l'API d'entité dynamique. Par conséquent, si vous modifiez les valeurs d'entité dynamique à l'aide de l'interface utilisateur, ce changement ne sera pas inclus dans les modèles vocaux améliorés une fois la compétence réentraînée.

Vos modifications ne peuvent être incluses qu'après la mise à jour suivante de l'API. Pour préserver vos modifications, le paramètre copy de la demande doit être réglé à TRUE.

Expression régulière

Résout une entité à l'aide d'une expression rationnelle, telle que (?<=one\s).*(?=\sthree). Les expressions rationnelles permettent à votre compétence de déterminer des formes prédéfinies dans l'entrée utilisateur, comme les numéros de ticket. Contrairement aux autres types d'entité, les entités basées sur les expressions rationnelles n'utilisent pas le traitement du langage naturel car la mise en correspondance est strictement basée sur l'appariement de formes.

Liste d'entités

Surensemble d'entités. Par exemple, pour une compétence de gestion de voyages, vous pouvez regrouper les entités déjà définies qui extraient des valeurs telles que des noms de ville et des codes et noms d'aéroport dans une entité unique nommée Destination. De la sorte, vous permettez à votre compétence de répondre à un utilisateur qui utilise indifféremment des noms de ville, des codes d'aéroport ou des noms d'aéroport. Ainsi, lorsqu'un utilisateur entre "Je veux aller de JFK à San Francisco", l'entité Destination détecte le point de départ à l'aide de l'entité Code d'aéroport et la destination en utilisant l'entité Nom de ville.

Calculé

Une entité dérivée est l'enfant d'une entité intégrée ou d'une autre entité que vous définissez. Cette relation est basée sur des expressions prépositionnelles ("à" ou "de" dans des énoncés tels que Je veux aller de Boston à Dallas ou Transférer de l'argent de mon compte de chèques à mon compte d'épargne). Les entités dérivées ne peuvent pas être des entités parents. Et comme les entités dérivées ne sont détectées par le moteur de compréhension du langage naturel qu'après tous les autres types d'entité, vous ne pouvez pas inclure des entités dérivées dans une liste d'entités.