Dela via


Kognitiv färdighet för entitetsigenkänning (v2)

Entitetsigenkänningsfärdigheten (v2) extraherar entiteter av olika typer från text. Den här färdigheten använder maskininlärningsmodellerna som tillhandahålls av Textanalys i Azure AI-tjänster.

Viktigt!

Entitetsigenkänningsfärdigheten (v2) (Microsoft.Skills.Text.EntityRecognitionSkill) ersätts nu av Microsoft.Skills.Text.V3.EntityRecognitionSkill. Följ rekommendationerna i Inaktuella färdigheter för att migrera till en kompetens som stöds.

Kommentar

När du utökar omfånget genom att öka bearbetningsfrekvensen, lägga till fler dokument eller lägga till fler AI-algoritmer måste du bifoga en fakturerbar Azure AI-tjänstresurs. Avgifter tillkommer när API:er anropas i Azure AI-tjänster och för extrahering av bilder som en del av dokumentknäckningssteget i Azure AI Search. Det finns inga avgifter för textextrahering från dokument.

Körning av inbyggda kunskaper debiteras enligt det befintliga priset för Betala per användning för Azure AI-tjänster. Prissättning för bildextrahering beskrivs på prissättningssidan för Azure AI Search.

@odata.type

Microsoft.Skills.Text.EntityRecognitionSkill

Databegränsningar

Den maximala storleken på en post ska vara 50 000 tecken mätt med String.Length. Om du behöver dela upp dina data innan du skickar dem till nyckelfrasextraktorn bör du överväga att använda färdigheten Textdelning. Om du använder en textdelningsfärdighet anger du sidlängden till 5 000 för bästa prestanda.

Kompetensparametrar

Parametrar är skiftlägeskänsliga och är alla valfria.

Parameternamn beskrivning
categories Matris med kategorier som ska extraheras. Möjliga kategorityper: "Person", "Location", "Organization", "Quantity", "Datetime", , "URL". "Email" Om ingen kategori anges returneras alla typer.
defaultLanguageCode Språkkod för indatatexten. Följande språk stöds: ar, cs, da, de, en, es, fi, fr, hu, it, ja, ko, nl, no, pl, pt-BR, pt-PT, ru, sv, tr, zh-hans. Alla entitetskategorier stöds inte för alla språk. se kommentaren nedan.
minimumPrecision Ett värde mellan 0 och 1. Om konfidenspoängen namedEntities (i utdata) är lägre än det här värdet returneras inte entiteten. Standardvärdet är 0.
includeTypelessEntities Ange till true om du vill känna igen välkända entiteter som inte passar de aktuella kategorierna. Identifierade entiteter returneras i det entities komplexa utdatafältet. Till exempel är "Windows 10" en välkänd entitet (en produkt), men eftersom "Products" inte är en kategori som stöds skulle den här entiteten inkluderas i utdatafältet entiteter. Standardvärdet är false

Kunskapsindata

Indatanamn beskrivning
languageCode Valfritt. Standard är "en".
text Texten som ska analyseras.

Kunskapsutdata

Kommentar

Alla entitetskategorier stöds inte för alla språk. Kategorityperna "Person", "Location"och "Organization" entitet stöds för den fullständiga listan över språk ovan. Endast de, en, es, fr och zh-hans stöd extrahering av "Quantity", "Datetime", "URL"och "Email" typer. Mer information finns i Språk- och regionstöd för api:et för Textanalys.

Utdatanamn beskrivning
persons En matris med strängar där varje sträng representerar namnet på en person.
locations En matris med strängar där varje sträng representerar en plats.
organizations En matris med strängar där varje sträng representerar en organisation.
quantities En matris med strängar där varje sträng representerar en kvantitet.
dateTimes En matris med strängar där varje sträng representerar ett DateTime-värde (som det visas i texten).
urls En matris med strängar där varje sträng representerar en URL
emails En matris med strängar där varje sträng representerar ett e-postmeddelande
namedEntities En matris med komplexa typer som innehåller följande fält:
  • category
  • värde (det faktiska entitetsnamnet)
  • offset (Platsen där den hittades i texten)
  • konfidens (högre värde innebär att det är mer att vara en verklig entitet)
entities En matris med komplexa typer som innehåller omfattande information om de entiteter som extraheras från text, med följande fält
  • namn (det faktiska entitetsnamnet. Detta representerar ett "normaliserat" formulär)
  • wikipediaId
  • wikipediaLanguage
  • wikipediaUrl (en länk till Wikipedia-sidan för entiteten)
  • bingId
  • typ (kategorin för den identifierade entiteten)
  • subType (endast tillgängligt för vissa kategorier ger detta en mer detaljerad vy av entitetstypen)
  • matchningar (en komplex samling som innehåller)
    • text (råtexten för entiteten)
    • offset (platsen där den hittades)
    • längd (längden på den råa entitetstexten)

Exempeldefinition

  {
    "@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"
      }
    ]
  }

Exempelindata

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

Exempelutdata

{
  "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
            }]
          }
        ]
      }
    }
  ]
}

Observera att de förskjutningar som returneras för entiteter i utdata från den här färdigheten returneras direkt från Textanalys-API:et, vilket innebär att om du använder dem för att indexera i den ursprungliga strängen bör du använda klassen StringInfo i .NET för att extrahera rätt innehåll. Mer information finns här.

Varningsfall

Om språkkoden för dokumentet inte stöds returneras en varning och inga entiteter extraheras.

Se även