Compétence cognitive Reconnaissance d’entités (V3)
La compétence Reconnaissance d’entités (v3) extrait les entités de différents types du texte. Ces entités sont classées dans 14 catégories distinctes, allant des personnes et des organisations aux URL et numéros de téléphone. Cette compétence utilise les modèles de Machine Learning Reconnaissance d'entité nommée fournis par Azure AI Language.
Remarque
Cette compétence est liée aux services Azure AI et nécessite une ressource facturable pour les transactions qui dépassent 20 documents par indexeur et par jour. L'exécution des compétences intégrées est facturée au prix actuel du paiement à l'utilisation des services Azure AI.
@odata.type
Microsoft.Skills.Text.V3.EntityRecognitionSkill
Limites de données
La taille maximale d’un enregistrement doit être de 50 000 caractères telle que mesurée par String.Length
. Si vous devez subdiviser vos données avant de les envoyer à la compétence EntityRecognition, utilisez la compétence Fractionnement de texte. Lorsque vous utilisez une compétence de fractionnement de texte, définissez la longueur de la page sur 5000 pour obtenir les meilleures performances.
Paramètres de la compétence
Les paramètres respectent la casse et sont tous facultatifs.
Nom du paramètre | Description |
---|---|
categories |
Tableau des catégories à extraire. Types de catégorie possibles : "Person" , "Location" , "Organization" , "Quantity" , "DateTime" , "URL" , "Email" , "personType" , "Event" , "Product" , "Skill" , "Address" , "phoneNumber" , "ipAddress" . Si aucune catégorie n’est précisée, tous les types sont retournés. |
defaultLanguageCode |
Code de langue du texte d’entrée. Si le code du langage par défaut n’est pas spécifié, l’anglais (en) est utilisé comme code de langage par défaut. Voir la liste complète des langues prises en charge. Les catégories d’entités ne sont pas toutes prises en charge pour toutes les langues. Consultez la remarque ci-dessous. |
minimumPrecision |
Valeur comprise entre 0 et 1 Si le score de confiance (dans la sortie namedEntities ) est inférieur à cette valeur, l’entité n’est pas retournée. La valeur par défaut est 0. |
modelVersion |
(Facultatif) Précise la version du modèle à utiliser pour appeler l’API de reconnaissance des entités. Si rien n’est spécifié, c’est la dernière version disponible qui est utilisée par défaut. Nous vous recommandons de ne pas spécifier cette valeur, sauf nécessité. |
Entrées de la compétence
Nom de l'entrée | Description |
---|---|
languageCode |
Chaîne indiquant la langue des enregistrements. Si ce paramètre n’est pas spécifié, le code de langue par défaut est utilisé pour l’analyse des enregistrements. Voir la liste complète des langues prises en charge. |
text |
Texte à analyser. |
Sorties de la compétence
Remarque
toutes les catégories d’entités ne sont pas prises en charge pour toutes les langues. Consultez les catégories d’entités NER (Reconnaissance d'entité nommée) prises en charge pour savoir quelles catégories d’entités sont prises en charge pour le langage que vous allez utiliser.
Nom de sortie | Description |
---|---|
persons |
Tableau de chaînes représentant chacune le nom d’une personne. |
locations |
Tableau de chaînes représentant chacune un lieu. |
organizations |
Tableau de chaînes représentant chacune une organisation. |
quantities |
Tableau de chaînes représentant chacune une quantité. |
dateTimes |
Tableau de chaînes représentant chacune une valeur DateTime (telle qu’elle apparaît dans le texte). |
urls |
Tableau de chaînes représentant chacune une URL. |
emails |
Tableau de chaînes représentant chacune un e-mail. |
personTypes |
Tableau de chaînes représentant chacune un élément PersonType. |
events |
Tableau de chaînes représentant chacune un événement. |
products |
Tableau de chaînes représentant chacune un produit. |
skills |
Tableau de chaînes représentant chacune une compétence. |
addresses |
Tableau de chaînes représentant chacune une adresse. |
phoneNumbers |
Tableau de chaînes représentant chacune un numéro de téléphone. |
ipAddresses |
Tableau de chaînes représentant chacune une adresse. |
namedEntities |
Tableau de types complexes contenant les champs suivants :
|
Exemple de définition
{
"@odata.type": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill",
"context": "/document",
"categories": [ "Person", "Email"],
"defaultLanguageCode": "en",
"minimumPrecision": 0.5,
"inputs": [
{
"name": "text",
"source": "/document/content"
},
{
"name": "languageCode",
"source": "/document/language"
}
],
"outputs": [
{
"name": "persons",
"targetName": "people"
},
{
"name": "emails",
"targetName": "emails"
},
{
"name": "namedEntities",
"targetName": "namedEntities"
}
]
}
Exemple d’entrée
{
"values": [
{
"recordId": "1",
"data":
{
"text": "Contoso Corporation was founded by Jean Martin. They can be reached at contact@contoso.com",
"languageCode": "en"
}
}
]
}
Exemple de sortie
{
"values": [
{
"recordId": "1",
"data" :
{
"people": [ "Jean Martin"],
"emails":["contact@contoso.com"],
"namedEntities":
[
{
"category": "Person",
"subcategory": null,
"length": 11,
"offset": 35,
"confidenceScore": 0.98,
"text": "Jean Martin"
},
{
"category": "Email",
"subcategory": null,
"length": 19,
"offset": 71,
"confidenceScore": 0.8,
"text": "contact@contoso.com"
}
],
}
}
]
}
Les décalages renvoyés pour les entités dans la sortie de cette compétence le sont directement à partir des API du service de langage, ce qui signifie que, si vous les utilisez pour indexer dans la chaîne d'origine, vous devez utiliser la classe StringInfo dans .NET afin d'extraire le bon contenu. Pour plus d’informations, consultez Prise en charge de plusieurs langues et des emojis dans les fonctionnalités du service de langage.
Cas d’avertissement
Si le code de langue du document n’est pas pris en charge, un avertissement est retourné et aucune entité n’est extraite.