Entités dans LUISEntities in LUIS

Les entités sont des mots ou des phrases dans les énoncés qui sont des données clés dans le domaine de votre application.Entities are words or phrases in utterances that are key data in your application’s domain.

Comparaison entre entité et intentionEntity compared to intent

L’entité représente un mot ou une phrase dans l’énoncé que vous souhaitez extraire.The entity represents a word or phrase inside the utterance that you want extracted. Un énoncé peut inclure plusieurs entités ou aucune.An utterance can include many entities or none at all. Une entité représente une classe, notamment une collection d’objets similaires (lieux, choses, personnes, événements ou concepts).An entity represents a class including a collection of similar objects (places, things, people, events or concepts). Les entités décrivent des informations relatives à l’intention, et sont parfois essentiels pour que votre application effectue sa tâche.Entities describe information relevant to the intent, and sometimes they are essential for your app to perform its task. Par exemple, une application Recherche d’actualités peut inclure des entités telles que « sujet », « source », « mot clé » et « date de publication », qui sont des données clés pour rechercher des informations.For example, a News Search app may include entities such as “topic”, “source”, “keyword” and “publishing date”, which are key data to search for news. Dans une application de réservation de voyages, « emplacement », « date », « compagnie aérienne », « classe voyage » et « tickets » sont des informations clés pour la réservation des vols (pertinentes pour l’intention « Bookflight »).In a travel booking app, the “location”, “date”, "airline", "travel class" and "tickets" are key information for flight booking (relevant to the "Bookflight" intent).

En comparaison, l’intention représente la prédiction de l’énoncé entier.By comparison, the intent represents the prediction of the entire utterance.

Les entités représentent les donnéesEntities represent data

Les entités sont des données que vous voulez extraire à partir de l’énoncé.Entities are data you want to pull from the utterance. Il peut s’agir d’un nom, d’une date, d’un nom de produit ou d’un groupe de mots.This can be a name, date, product name, or any group of words.

ÉnoncéUtterance EntitéEntity DonnéesData
Acheter 3 tickets pour New YorkBuy 3 tickets to New York Nombre prédéfiniPrebuilt number
Location.DestinationLocation.Destination
33
New YorkNew York
Acheter un ticket de New York à Londres pour le 5 marsBuy a ticket from New York to London on March 5 Location.OriginLocation.Origin
Location.DestinationLocation.Destination
datetimeV2 prédéfiniPrebuilt datetimeV2
New YorkNew York
LondresLondon
5 mars 2018March 5, 2018

Les intentions sont obligatoires mais les entités sont facultatives.While intents are required, entities are optional. Vous n’avez pas besoin créer des entités pour chaque concept dans votre application, mais uniquement pour les concepts nécessaires pour que l’application effectue une action.You do not need to create entities for every concept in your app, but only for those required for the app to take action.

Si vos énoncés ne contiennent pas les détails dont votre bot a besoin pour continuer, il est inutile de les ajouter.If your utterances do not have details your bot needs to continue, you do not need to add them. Vous pouvez les ajouter ultérieurement, au fur et à mesure que votre application arrive à maturité.As your app matures, you can add them later.

Si vous ne savez pas comment utiliser les informations, ajoutez quelques entités prédéfinies courantes, comme datetimeV2, ordinal, email et phone number.If you are not sure how you would use the information, add a few common prebuilt entities such as datetimeV2, ordinal, email, and phone number.

Étiquette pour la signification du motLabel for word meaning

Si le choix des mots ou la disposition des mots est identique, mais que la signification est différente, n’utilisez pas l’entité pour l’étiqueter.If the word choice or word arrangement is the same, but doesn't mean the same thing, do not label it with the entity.

Dans les énoncés suivants, le mot fair est un homographe.The following utterances, the word fair is a homograph. Il est orthographié de la même manière, mais a une signification différente :It is spelled the same but has a different meaning:

ÉnoncéUtterance
Quelles sont les foires qui ont lieu dans la région de Seattle cet été ?What kind of county fairs are happening in the Seattle area this summer?
L’évaluation actuelle pour Seattle est-elle juste ?Is the current rating for the Seattle review fair?

Si vous souhaitez qu’une entité d’événement recherche toutes les données d’événement, étiquetez le mot fair dans le premier énoncé, mais pas dans le second.If you wanted an event entity to find all event data, label the word fair in the first utterance, but not in the second.

Les entités sont partagées entre les intentionsEntities are shared across intents

Les entités sont partagées entre les intentions.Entities are shared among intents. Elles n’appartiennent pas à une seule intention.They don't belong to any single intent. Les entités et les intentions peuvent être associées au niveau sémantique, mais la relation n’est pas exclusive.Intents and entities can be semantically associated but it is not an exclusive relationship.

Dans l’énoncé « Me réserver un ticket pour Paris », « Paris » est une entité de type emplacement.In the utterance "Book me a ticket to Paris", "Paris" is an entity of type location. En reconnaissant les entités qui sont mentionnées dans l’entrée utilisateur, LUIS vous permet de choisir les actions spécifiques à prendre pour répondre à une intention.By recognizing the entities that are mentioned in the user’s input, LUIS helps you choose the specific actions to take to fulfill an intent.

Affecter des entités dans une intention NoneAssign entities in None intent

Toutes les intentions, notamment l’intention None, doivent avoir des entités étiquetées.All intents, including the None intent, should have entities labeled. Cela permet à LUIS de savoir où les entités se trouvent dans les énoncés et quels mots entourent les entités.This helps LUIS learn more about where the entities are in the utterances and what words are around the entities.

État de l’entité pour les prédictionsEntity status for predictions

Consultez Entity Status predictions (prédictions de l’état de l’entité) pour plus d’informations.See Entity Status predictions for more information.

Types d’entitésTypes of entities

LUIS offre de nombreux types d’entités : entités prédéfinies, entités personnalisées issues de l’apprentissage automatique et entités de liste.LUIS offers many types of entities; prebuilt entities, custom machine learned entities and list entities.

NOMName Étiquette Can (Peut)Can label DescriptionDescription
PrédéfiniePrebuilt
PersonnaliséeCustom
DéfinitionDefinition
Types intégrés qui représentent des concepts courants.Built-in types that represent common concepts.

ListeList
nombre de phrases clés, ordinal, température, dimension, argent, âge, pourcentage, e-mail, URL, numéro de téléphone et phrase clé.key phrase number, ordinal, temperature, dimension, money, age, percentage, email, URL, phone number, and key phrase.

Les noms des entités prédéfinies sont réservés.Prebuilt entity names are reserved.

Toutes les entités prédéfinies qui sont ajoutées à l’application sont retournées dans la requête du point de terminaison.All prebuilt entities that are added to the application are returned in the endpoint query. Pour plus d’informations, consultez Entités prédéfinies.For more information, see Prebuilt entities.

Exemple de réponse pour l’entitéExample response for entity
Expression régulière Regular Expression
RegExRegEx
DéfinitionDefinition
Expression régulière personnalisée pour le texte d’énoncé brut mis en forme.Custom regular expression for formatted raw utterance text. Elle ignore la casse et la variante culturelle.It ignores case and ignores cultural variant.

Cette entité est adaptée aux mots ou phrases mis en forme de manière cohérente avec toute variation également cohérente.This entity is good for words or phrases that are consistently formatted with any variation that is also consistent.

La correspondance d’expression régulière est appliquée après les modifications de la vérification orthographique.Regular expression matching is applied after spell-check alterations.

Si l’expression régulière est trop complexe (par ex. elle utilise trop de crochets), vous ne pouvez pas ajouter l’expression au modèle.If the regular expression is too complex, such as using many brackets, you are not able to add the expression to the model.

ExempleExample
kb[0-9]{6,} correspond à kb123456.kb[0-9]{6,} matches kb123456.

Démarrage rapideQuickstart
Exemple de réponse pour l’entitéExample response for entity
SimpleSimple
Issue de l’apprentissage automatiqueMachine-learned
DéfinitionDefinition
Une entité simple est une entité générique qui décrit un concept unique et est apprise à partir d’un contexte issu de l’apprentissage automatique.A simple entity is a generic entity that describes a single concept and is learned from machine-learned context. Le contexte inclue le choix des mots, l’emplacement des mots et la longueur de l’énoncé.Context include word choice, word placement, and utterance length.

Il s’agit d’une bonne entité pour les mots ou les phrases qui ne sont pas mis en forme de manière cohérente, mais qui ont la même signification.This is a good entity for words or phrases that are not consistently formatted but indicate the same thing.

Démarrage rapideQuickstart
Exemple de réponse pour l’entitéExample response for entity
ListeList
Correspondance exacteExact match
DéfinitionDefinition
Les entités de liste représentent un ensemble fixe, fermé de mots associés, ainsi que leurs synonymes, dans votre système.List entities represent a fixed, closed set of related words along with their synoymns in your system.

Chaque entité de liste peut avoir une ou plusieurs formes.Each list entity may have one or more forms. Les entités de liste sont adaptées à un ensemble connu de variations sur les manières de représenter le même concept.Best used for a known set of variations on ways to represent the same concept.

LUIS ne détecte pas les valeurs supplémentaires pour les entités de liste.LUIS does not discover additional values for list entities. Utilisez la fonctionnalité Recommander pour trouver des suggestions de nouveaux mots à partir de la liste actuelle.Use the Recommend feature to see suggestions for new words based on the current list.

S’il existe plusieurs entités de liste avec la même valeur, chaque entité est retournée dans la requête du point de terminaison.If there is more than one list entity with the same value, each entity is returned in the endpoint query.

Démarrage rapideQuickstart
Exemple de réponse pour l’entitéExample response for entity
Pattern.anyPattern.any
MixteMixed
DéfinitionDefinition
Patterns.any est un espace réservé à longueur variable utilisé uniquement dans le gabarit d’énoncé d’un modèle pour marquer où l’entité commence et se termine.Patterns.any is a variable-length placeholder used only in a pattern's template utterance to mark where the entity begins and ends.

ExempleExample
Si un énoncé recherche des livres en fonction du titre, pattern.any extrait le titre complet.Given an utterance search for books based on title, the pattern.any extracts the complete title. Un gabarit d’énoncé utilisant pattern.any est Who wrote {BookTitle}[?].A template utterance using pattern.any is Who wrote {BookTitle}[?].

DidacticielTutorial
Exemple de réponse pour l’entitéExample response for entity
CompositeComposite
Issue de l’apprentissage automatiqueMachine-learned
DéfinitionDefinition
Une entité composite est constituée d’autres entités (prédéfinies, simples, regex, liste ou hiérarchiques).A composite entity is made up of other entities, such as prebuilt entities, simple, regex, list, hierarchical. Les entités distinctes forment une entité entière.The separate entities form a whole entity.

ExempleExample
Une entité composite nommée PlaneTicketOrder peut avoir les entités enfants prédéfinies number et ToLocation.A composite entity named PlaneTicketOrder may have child entities prebuilt number and ToLocation.

DidacticielTutorial
Exemple de réponse pour l’entitéExample response for entity
HiérarchiqueHierarchical
Issue de l’apprentissage automatiqueMachine-learned
DéfinitionDefinition
Une entité hiérarchique est une catégorie d’entités simples apprises de façon contextuelle.A hierarchical entity is a category of contextually learned simple entities.

ExempleExample
Avec une entité hiérarchique Location avec les enfants ToLocation et FromLocation, chaque enfant peut être déterminé en fonction du contexte dans l’énoncé.Given a hierarchical entity of Location with children ToLocation and FromLocation, each child can be determined based on the context within the utterance. Dans l’énoncé, Book 2 tickets from Seattle to New York, ToLocation et FromLocation sont différents au niveau du contexte selon les mots qui les entourent.In the utterance, Book 2 tickets from Seattle to New York, the ToLocation and FromLocation are contextually different based the words around them.

Ne pas utiliser siDo not use if
Si vous recherchez une entité avec des correspondances de texte exactes dans les enfants, quel que soit le contexte, vous devez utiliser une entité de liste.If you are looking for an entity that has exact text matches for children regardless of context, you should use a List entity. Si vous recherchez une relation parent-enfant avec d’autres types d’entités, vous devez utiliser l’entité Composite.If you are looking for a parent-child relationship with other entity types, you should use the Composite entity.

Démarrage rapideQuickstart
Exemple de réponse pour l’entitéExample response for entity

Les entités prédéfinies sont des entités personnalisées fournies par LUIS.Prebuilt entities are custom entities provided by LUIS. Certaines de ces entités sont définies dans le projet Recognizers-Text open source.Some of these entities are defined in the open-source Recognizers-Text project. Il existe de nombreux exemples dans le répertoire /Specs pour les cultures prises en charge.There are many examples in the /Specs directory for the supported cultures. Si votre culture ou entité spécifique n’est pas encore prise en charge, vous pouvez contribuer au projet.If your specific culture or entity isn't currently supported, contribute to the project.

Les entités issues de l’apprentissage automatique fonctionnent mieux quand elles sont testées via des requêtes du point de terminaison et l’examen des énoncés du point de terminaison.Machine-learned entities work best when tested via endpoint queries and reviewing endpoint utterances.

Les entités d’expression régulière sont définies par une expression régulière fournie par l’utilisateur dans le cadre de la définition de l’entité.Regular expression entities are defined by a regular expression the user provides as part of the entity definition.

Les entités de correspondance exacte utilisent le texte fourni dans l’entité pour établir une correspondance exacte de texte.Exact-match entities use the text provided in the entity to make an exact text match.

Les entités mixtes utilisent une combinaison des méthodes de détection d’entité.Mixed entities use a combination of entity detection methods.

Limites de l’entitéEntity limits

Consultez les limites pour comprendre le nombre de chaque type d’entité que vous pouvez ajouter à un modèle.Review limits to understand how many of each type of entity you can add to a model.

Rôles et entités hiérarchiquesRoles versus hierarchical entities

Pour plus d’informations, consultez Rôles et entités hiérarchiques.For more information, see Roles versus hierarchical entities.

Entités composites et hiérarchiquesComposite vs hierarchical entities

Les entités composites et les entités hiérarchiques ont des relations parent-enfant et sont issues de l’apprentissage automatique.Composite entities and hierarchical entities both have parent-child relationships and are machine learned. L’apprentissage automatique permet à LUIS de comprendre les entités dans différents contextes (organisation des mots).The machine-learning allows LUIS to understand the entities based on different contexts (arrangement of words). Les entités composite sont plus flexibles, car elles acceptent différents types d’entités en tant qu’enfants.Composite entities are more flexible because they allow different entity types as children. Les enfants d’une entité hiérarchique sont des entités simples.A hierarchical entity's children are only simple entities.

typeType ObjectifPurpose ExemplesExample
HiérarchiqueHierarchical Parent-enfant d’entités simplesParent-child of simple entities Location.Origin=New YorkLocation.Origin=New York
Location.Destination=LondonLocation.Destination=London
CompositeComposite Entités parent-enfant : prédéfinie, liste, simple, hiérarchiqueParent-child entities: prebuilt, list, simple, hierarchical number=3number=3
list=first classlist=first class
prebuilt.datetimeV2=March 5prebuilt.datetimeV2=March 5

Données correspondant à plusieurs entitésData matching multiple entities

Si un mot ou une phrase correspond à plusieurs entités, la requête du point de terminaison retourne chaque entité.If a word or phrase matches more than one entity, the endpoint query returns each entity. Si vous ajoutez l’entité Number prédéfinie et l’entité datetimeV2 prédéfinie, et que vous avez un énoncé create meeting on 2018/03/12 for lunch with wayne, LUIS reconnaît toutes les entités et retourne un tableau d’entités dans le cadre de la réponse du point de terminaison JSON :If you add both prebuilt number entity and prebuild datetimeV2, and have an utterance create meeting on 2018/03/12 for lunch with wayne, LUIS recognizes all the entities and returns an array of entities as part of the JSON endpoint response:

{
  "query": "create meeting on 2018/03/12 for lunch with wayne",
  "topScoringIntent": {
    "intent": "Calendar.Add",
    "score": 0.9333419
  },
  "entities": [
    {
      "entity": "2018/03/12",
      "type": "builtin.datetimeV2.date",
      "startIndex": 18,
      "endIndex": 27,
      "resolution": {
        "values": [
          {
            "timex": "2018-03-12",
            "type": "date",
            "value": "2018-03-12"
          }
        ]
      }
    },
    {
      "entity": "2018",
      "type": "builtin.number",
      "startIndex": 18,
      "endIndex": 21,
      "resolution": {
        "value": "2018"
      }
    },
    {
      "entity": "03/12",
      "type": "builtin.number",
      "startIndex": 23,
      "endIndex": 27,
      "resolution": {
        "value": "0.25"
      }
    }
  ]
}

Données correspondant à plusieurs entités ListeData matching multiple List entities

Si un mot ou une phrase correspond à plusieurs entités Liste, la requête du point de terminaison retourne chaque entité Liste.If a word or phrase matches more than one list entity, the endpoint query returns each List entity.

Pour la requête when is the best time to go to red rock?, et si l’application contient le mot red dans plusieurs listes, LUIS reconnaît toutes les entités et retourne un tableau d’entités dans le cadre de la réponse du point de terminaison JSON :For the query when is the best time to go to red rock?, and the app has the word red in more than one list, LUIS recognizes all the entities and returns an array of entities as part of the JSON endpoint response:

{
  "query": "when is the best time to go to red rock?",
  "topScoringIntent": {
    "intent": "Calendar.Find",
    "score": 0.06701678
  },
  "entities": [
    {
      "entity": "red",
      "type": "Colors",
      "startIndex": 31,
      "endIndex": 33,
      "resolution": {
        "values": [
          "Red"
        ]
      }
    },
    {
      "entity": "red rock",
      "type": "Cities",
      "startIndex": 31,
      "endIndex": 38,
      "resolution": {
        "values": [
          "Destinations"
        ]
      }
    }
  ]
}

Si vous avez besoin de plus que le nombre maximal d’entitésIf you need more than the maximum number of entities

Vous devrez peut-être utiliser des entités hiérarchiques et composites.You might need to use hierarchical and composite entities. Les entités hiérarchiques reflètent la relation entre des entités qui partagent des caractéristiques ou qui sont membres d’une catégorie.Hierarchical entities reflect the relationship between entities that share characteristics or are members of a category. Les entités enfants sont toutes membres de la catégorie de leur parent.The child entities are all members of their parent's category. Par exemple, une entité hiérarchique nommée PlaneTicketClass peut avoir les entités enfants EconomyClass et FirstClass.For example, a hierarchical entity named PlaneTicketClass might have the child entities EconomyClass and FirstClass. La hiérarchie s’étend sur un seul niveau de profondeur.The hierarchy spans only one level of depth.

Les entités composites représentent les parties d’un ensemble.Composite entities represent parts of a whole. Par exemple, une entité composite nommée PlaneTicketOrder peut avoir les entités enfants Airline, Destination, DepartureCity, DepartureDate et PlaneTicketClass.For example, a composite entity named PlaneTicketOrder might have child entities Airline, Destination, DepartureCity, DepartureDate, and PlaneTicketClass. Vous générez une entité composite à partir d’entités simples existantes, d’enfants d’entités hiérarchiques ou d’entités prédéfinies.You build a composite entity from pre-existing simple entities, children of hierarchical entities, or prebuilt entities.

LUIS fournit également le type d’entité de liste qui n’est pas issu de l’apprentissage automatique, mais qui permet à votre application LUIS de spécifier une liste fixe de valeurs.LUIS also provides the list entity type that is not machine-learned but allows your LUIS app to specify a fixed list of values. Consultez les Limites de LUIS pour passer en revue les limites du type d’entité de liste.See LUIS Boundaries reference to review limits of the List entity type.

Si vous avez envisagé les entités hiérarchiques, composites et liste, mais avez besoin d’aller au-delà de la limite, contactez le support technique.If you've considered hierarchical, composite, and list entities and still need more than the limit, contact support. Pour cela, rassemblez des informations détaillées sur votre système, accédez au site web LUIS, puis sélectionnez Support.To do so, gather detailed information about your system, go to the LUIS website, and then select Support. Si votre abonnement Azure comprend des services de support, contactez le support technique Azure.If your Azure subscription includes support services, contact Azure technical support.

Meilleures pratiquesBest practices

Créez une entité lorsque l’application appelante ou le bot a besoin de paramètres ou de données à partir de l’énoncé requis pour exécuter une action.Create an entity when the calling application or bot needs some parameters or data from the utterance required to execute an action. Une entité est un mot ou une phrase dans l’énoncé que vous avez besoin d’extraire, peut-être en tant que paramètre d’une fonction.An entity is a word or phrase in the utterance that you need extracted -- perhaps as a parameter for a function.

Afin de sélectionner le type correct d’entité à ajouter à votre application, vous devez savoir comment les données sont entrées par les utilisateurs.In order to select the correct type of entity to add to your application, you need to know how that data is entered by users. Chaque entité est trouvée à l’aide d’un mécanisme différent, comme l’apprentissage automatique, une liste fermée ou une expression régulière.Each entity type is found using a different mechanism such as machine-learning, closed list or regular expression. Si vous avez des doutes, commencez avec une entité simple et étiquetez le mot ou la phrase qui représente ces données dans tous les énoncés, pour toutes les intentions, notamment l’intention None.If you are unsure, begin with a simple entity and label the word or phrase that represents that data in all utterances, across all intents including the None intent.

Passez en revue les énoncés du point de terminaison de manière régulière pour rechercher une utilisation commune où une entité peut être identifiée en tant qu’expression régulière ou trouvée à l’aide d’une correspondance exacte de texte.Review endpoint utterances on a regular basis to find common usage where an entity can be identified as a regular expression or found with an exact text match.

Dans le cadre de cet examen, envisagez d’ajouter une liste de phrases pour ajouter un signal dans LUIS pour les mots ou les phrases qui sont pertinents pour votre domaine, mais qui ne sont pas des correspondances exactes, et pour lesquels le degré de confiance dans LUIS est faible.As part of the review, consider adding a phrase list to add a signal to LUIS for words or phrases that are significant to your domain but are not exact matches, and for which LUIS doesn't have a high confidence.

Pour plus d’informations, consultez les meilleures pratiques.See best practices for more information.

Étapes suivantesNext steps

Découvrez les concepts relatifs aux bons énoncés.Learn concepts about good utterances.

Consultez Ajouter des entités pour découvrir comment ajouter des entités à votre application LUIS.See Add entities to learn more about how to add entities to your LUIS app.