Freigeben über


Der kognitive Skill „Entitätserkennung“ (v2)

Mit der Qualifikation Entitätserkennung (v2) (EntityRecognitionSkill) können Sie Entitäten aus verschiedenen Arten von Text extrahieren. Bei diesem Skill werden die Machine Learning-Modelle verwendet, die in Azure KI Services über die Textanalyse bereitgestellt werden.

Wichtig

Die Qualifikation Erkennung benannter Entitäten (v2) (Microsoft.Skills.Text.NamedEntityRecognitionSkill) wurde jetzt eingestellt und ersetzt durch Microsoft.Skills.Text.V3.EntityRecognitionSkill. Führen Sie unter Berücksichtigung der Empfehlungen unter Veraltete Skills eine Migration zu einem unterstützten Skill durch.

Hinweis

Wenn Sie den Umfang erweitern, indem Sie die Verarbeitungsfrequenz erhöhen oder weitere Dokumente oder KI-Algorithmen hinzufügen, müssen Sie eine kostenpflichtige Azure KI Services-Ressource anfügen. Gebühren fallen beim Aufrufen von APIs in Azure AI Services sowie für die Bildextraktion im Rahmen der Dokumentaufschlüsselungsphase in Azure AI Search an. Für die Textextraktion aus Dokumenten fallen keine Gebühren an.

Die Ausführung integrierter Skills wird nach dem bestehenden nutzungsbasierten Preis für Azure KI Services berechnet. Die Preise für die Bildextraktion werden auf der Preisseite von Azure KI Search beschrieben.

@odata.type

Microsoft.Skills.Text.EntityRecognitionSkill

Datengrenzwerte

Die maximale Größe eines Datensatzes beträgt 50.000 Zeichen (gemessen durch String.Length). Wenn Sie Ihre Daten teilen müssen, bevor Sie sie an die Schlüsselbegriffserkennung senden, denken Sie daran, den Skill „Text teilen“ zu verwenden. Wenn Sie einen Textteilungsskill verwenden, legen Sie die Seitenlänge auf 5000 fest, um die beste Leistung zu erzielen.

Skillparameter

Bei den Parametern, die alle optional sind, wird die Groß-/Kleinschreibung beachtet.

Parametername Beschreibung
categories Array von zu extrahierenden Kategorien. Mögliche Kategorietypen: "Person", "Location", "Organization", "Quantity", "Datetime", "URL" und "Email". Wenn keine Kategorie angegeben ist, werden alle Typen zurückgegeben.
defaultLanguageCode Sprachcode des Eingabetexts. Die folgenden Sprachen werden unterstützt: ar, cs, da, de, en, es, fi, fr, hu, it, ja, ko, nl, no, pl, pt-BR, pt-PT, ru, sv, tr, zh-hans. Nicht alle Entitätskategorien werden für alle Sprachen unterstützt (siehe Anmerkung unten).
minimumPrecision Ein Wert zwischen 0 und 1 ein. Wenn die Zuverlässigkeitsbewertung (in der namedEntities-Ausgabe) unter diesem Wert liegt, wird die Entität nicht zurückgegeben. Der Standardwert ist 0.
includeTypelessEntities Legen Sie diese Option auf true fest, wenn Sie bekannte Entitäten erkennen möchten, die nicht in die aktuellen Kategorien passen. Erkannte Entitäten werden im komplexen Ausgabefeld entities zurückgegeben. „Windows 10“ ist z.B. eine bekannte Entität (ein Produkt), aber da „Produkte“ keine unterstützte Kategorie ist, wäre diese Entität im Entitäten-Ausgabefeld enthalten. Der Standardwert ist false

Skilleingaben

Eingabename Beschreibung
languageCode Optional. Der Standardwert ist "en".
text Der zu analysierende Text

Skillausgaben

Hinweis

Nicht alle Entitätskategorien werden für alle Sprachen unterstützt. Die Entitätskategorietypen "Person", "Location" und "Organization" werden für die vollständige Liste der oben genannten Sprachen unterstützt. Nur de, en, es, fr und zh-hans unterstützen die Extraktion der Typen "Quantity", "Datetime", "URL" und "Email". Weitere Informationen finden Sie unter Sprach- und Regionsunterstützung für die Textanalyse-API.

Ausgabename Beschreibung
persons Ein Array von Zeichenfolgen, wobei jede Zeichenfolge den Namen einer Person darstellt.
locations Ein Array von Zeichenfolgen, wobei jede Zeichenfolge einen Ort darstellt.
organizations Ein Array von Zeichenfolgen, wobei jede Zeichenfolge eine Organisation darstellt.
quantities Ein Array von Zeichenfolgen, wobei jede Zeichenfolge eine Menge darstellt.
dateTimes Ein Array von Zeichenfolgen, wobei jede Zeichenfolge einen DateTime-Wert darstellt (wie im Text gezeigt).
urls Ein Array von Zeichenfolgen, wobei jede Zeichenfolge eine URL darstellt.
emails Ein Array von Zeichenfolgen, wobei jede Zeichenfolge eine E-Mail-Adresse darstellt.
namedEntities Ein Array mit komplexen Typen und den folgenden Feldern:
  • category
  • value (der tatsächliche Entitätsname)
  • offset (die Fundstelle im Text)
  • Zuverlässigkeit (ein höherer Wert bedeutet, dass es sich mit höherer Wahrscheinlichkeit um eine echte Entität handelt)
entities Ein Array mit komplexen Typen, die umfangreiche Informationen zu den aus dem Text extrahierten Entitäten enthalten, und den folgenden Feldern:
  • name (der tatsächliche Name der Entität. Dieser stellt ein „normalisiertes“ Formular dar.)
  • wikipediaId
  • wikipediaLanguage
  • wikipediaUrl (Link zur Wikipedia-Seite für die Entität)
  • bingId
  • type (Kategorie der erkannten Entität)
  • subType (nur für bestimmte Kategorien verfügbar; ermöglicht eine präzisere Ansicht des Entitätstyps)
  • matches (eine komplexe Sammlung mit:)
    • text (unformatierter Text für die Entität)
    • offset (Fundstelle)
    • length (Länge des unformatierten Texts für die Entität)

Beispieldefinition

  {
    "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill",
    "categories": [ "Person", "Email"],
    "defaultLanguageCode": "en",
    "includeTypelessEntities": true,
    "minimumPrecision": 0.5,
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "persons",
        "targetName": "people"
      },
      {
        "name": "emails",
        "targetName": "contact"
      },
      {
        "name": "entities"
      }
    ]
  }

Beispieleingabe

{
    "values": [
      {
        "recordId": "1",
        "data":
           {
             "text": "Contoso corporation was founded by John Smith. They can be reached at contact@contoso.com",
             "languageCode": "en"
           }
      }
    ]
}

Beispielausgabe

{
  "values": [
    {
      "recordId": "1",
      "data" : 
      {
        "persons": [ "John Smith"],
        "emails":["contact@contoso.com"],
        "namedEntities": 
        [
          {
            "category":"Person",
            "value": "John Smith",
            "offset": 35,
            "confidence": 0.98
          }
        ],
        "entities":  
        [
          {
            "name":"John Smith",
            "wikipediaId": null,
            "wikipediaLanguage": null,
            "wikipediaUrl": null,
            "bingId": null,
            "type": "Person",
            "subType": null,
            "matches": [{
                "text": "John Smith",
                "offset": 35,
                "length": 10
            }]
          },
          {
            "name": "contact@contoso.com",
            "wikipediaId": null,
            "wikipediaLanguage": null,
            "wikipediaUrl": null,
            "bingId": null,
            "type": "Email",
            "subType": null,
            "matches": [
            {
                "text": "contact@contoso.com",
                "offset": 70,
                "length": 19
            }]
          },
          {
            "name": "Contoso",
            "wikipediaId": "Contoso",
            "wikipediaLanguage": "en",
            "wikipediaUrl": "https://en.wikipedia.org/wiki/Contoso",
            "bingId": "349f014e-7a37-e619-0374-787ebb288113",
            "type": null,
            "subType": null,
            "matches": [
            {
                "text": "Contoso",
                "offset": 0,
                "length": 7
            }]
          }
        ]
      }
    }
  ]
}

Beachten Sie, dass die für Entitäten in der Ausgabe dieses Skills zurückgegebenen Offsets direkt von der Textanalyse-API zurückgegeben werden. Dies bedeutet, dass Sie, wenn Sie sie zum Indizieren in der ursprünglichen Zeichenfolge verwenden, die StringInfo-Klasse in .NET verwenden müssen, um den richtigen Inhalt zu extrahieren. Weitere Details finden Sie hier.

Warnungsfälle

Wird der Sprachcode für das Dokument nicht unterstützt, wird eine Warnung zurückgegeben, und es werden keine Entitäten extrahiert.

Siehe auch