Umiejętność poznawcza rozpoznawania jednostek (wersja 3)

Umiejętność rozpoznawania jednostek (wersja 3) wyodrębnia jednostki różnych typów z tekstu. Te jednostki należą do 14 różnych kategorii, począwszy od osób i organizacji do adresów URL i numerów telefonów. Ta umiejętność korzysta z modeli uczenia maszynowego rozpoznawania jednostek nazwanych udostępnianych przez język sztucznej inteligencji platformy Azure.

Uwaga

Ta umiejętność jest powiązana z usługami azure AI i wymaga rozliczanego zasobu dla transakcji, które przekraczają 20 dokumentów na indeksator dziennie. Wykonanie wbudowanych umiejętności jest naliczane za istniejące usługi Azure AI z płatnością zgodnie z rzeczywistym użyciem.

@odata.type

Microsoft.Skills.Text.V3.EntityRecognitionSkill

Limity danych

Maksymalny rozmiar rekordu powinien wynosić 50 000 znaków mierzonych przez String.Lengthwartość . Jeśli musisz podzielić dane przed wysłaniem ich do umiejętności EntityRecognition, rozważ użycie umiejętności Dzielenie tekstu. W przypadku korzystania z umiejętności podziału ustaw długość strony na 5000, aby uzyskać najlepszą wydajność.

Parametry umiejętności

Parametry są uwzględniane w wielkości liter i są opcjonalne.

Nazwa parametru opis
categories Tablica kategorii, które powinny zostać wyodrębnione. Możliwe typy kategorii: "Person", "Location", "Organization""DateTime""URL""Product""personType""Email""Quantity""Skill""Address""Event", , . "ipAddress""phoneNumber" Jeśli nie podano żadnej kategorii, zwracane są wszystkie typy.
defaultLanguageCode Kod języka tekstu wejściowego. Jeśli nie określono domyślnego kodu języka, język angielski (en) będzie używany jako domyślny kod języka.
Zobacz pełną listę obsługiwanych języków. Nie wszystkie kategorie jednostek są obsługiwane dla wszystkich języków; zobacz notatkę poniżej.
minimumPrecision Wartość z zakresu od 0 do 1. Jeśli wynik ufności (w danych wyjściowych namedEntities ) jest niższy niż ta wartość, jednostka nie jest zwracana. Wartość domyślna to 0.
modelVersion (Opcjonalnie) Określa wersję modelu do użycia podczas wywoływania interfejsu API rozpoznawania jednostek. Jeśli nie zostanie określona, będzie ona domyślnie dostępna do najnowszej. Zalecamy, aby nie określać tej wartości, chyba że jest to konieczne.

Dane wejściowe umiejętności

Nazwa danych wejściowych opis
languageCode Ciąg wskazujący język rekordów. Jeśli ten parametr nie zostanie określony, domyślny kod języka będzie używany do analizowania rekordów.
Zobacz pełną listę obsługiwanych języków.
text Tekst do przeanalizowania.

Dane wyjściowe umiejętności

Uwaga

Nie wszystkie kategorie jednostek są obsługiwane dla wszystkich języków. Zobacz Obsługiwane kategorie jednostek rozpoznawania jednostek nazwanych (NER), aby dowiedzieć się, które kategorie jednostek są obsługiwane dla używanego języka.

Nazwa danych wyjściowych opis
persons Tablica ciągów, w których każdy ciąg reprezentuje nazwę osoby.
locations Tablica ciągów, w której każdy ciąg reprezentuje lokalizację.
organizations Tablica ciągów, w których każdy ciąg reprezentuje organizację.
quantities Tablica ciągów, w której każdy ciąg reprezentuje ilość.
dateTimes Tablica ciągów, w której każdy ciąg reprezentuje wartość DateTime (jak jest wyświetlana w tekście).
urls Tablica ciągów, w której każdy ciąg reprezentuje adres URL
emails Tablica ciągów, w których każdy ciąg reprezentuje wiadomość e-mail
personTypes Tablica ciągów, w których każdy ciąg reprezentuje personType
events Tablica ciągów, w których każdy ciąg reprezentuje zdarzenie
products Tablica ciągów, w których każdy ciąg reprezentuje produkt
skills Tablica ciągów, w których każdy ciąg reprezentuje umiejętności
addresses Tablica ciągów, w której każdy ciąg reprezentuje adres
phoneNumbers Tablica ciągów, w których każdy ciąg reprezentuje numer telefonu
ipAddresses Tablica ciągów, w której każdy ciąg reprezentuje adres IP
namedEntities Tablica typów złożonych, które zawierają następujące pola:
  • category
  • Podkategorii
  • confidenceScore (Wyższa wartość oznacza, że bardziej jest to rzeczywista jednostka)
  • length (długość (liczba znaków) tej jednostki)
  • offset (lokalizacja, w której została znaleziona w tekście)
  • text (rzeczywista nazwa jednostki wyświetlana w tekście)

Przykładowa definicja

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

Przykładowe dane wejściowe

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

Przykładowe dane wyjściowe

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

Przesunięcia zwracane dla jednostek w danych wyjściowych tej umiejętności są zwracane bezpośrednio z interfejsów API usługi językowej, co oznacza, że jeśli używasz ich do indeksowania do oryginalnego ciągu, należy użyć klasy StringInfo na platformie .NET, aby wyodrębnić poprawną zawartość. Aby uzyskać więcej informacji, zobacz Obsługa wielojęzycznych i emoji w temacie Funkcje usługi językowej.

Przypadki ostrzegawcze

Jeśli kod języka dokumentu nie jest obsługiwany, zwracane jest ostrzeżenie i nie są wyodrębniane żadne jednostki.

Zobacz też