Persoonsgegevens (PII) Detectie cognitieve vaardigheid

De vaardigheid PII-detectie extraheert persoonlijke gegevens uit een invoertekst en geeft u de mogelijkheid om deze te maskeren. Deze vaardigheid maakt gebruik van de detectiemodellen in Azure AI Language.

Notitie

Deze vaardigheid is gebonden aan Azure AI-services en vereist een factureerbare resource voor transacties die groter zijn dan 20 documenten per indexeerfunctie per dag. Voor de uitvoering van ingebouwde vaardigheden worden kosten in rekening gebracht voor de bestaande betalen per gebruik-prijs van Azure AI-services.

@odata.type

Microsoft.Skills.Text.PIIDetectionSkill

Gegevenslimieten

De maximale grootte van een record moet 50.000 tekens zijn, zoals gemeten door String.Length. U kunt de vaardigheid Tekst splitsen gebruiken voor gegevenssegmentering. Stel de paginalengte in op 5000 voor de beste resultaten.

Vaardigheidsparameters

Parameters zijn hoofdlettergevoelig en alle parameters zijn optioneel.

Parameternaam Beschrijving
defaultLanguageCode (Optioneel) De taalcode die moet worden toegepast op documenten die niet expliciet taal opgeven. Als de standaardtaalcode niet is opgegeven, is Engels (en) de standaardtaalcode.
Zie de volledige lijst met ondersteunde talen.
minimumPrecision Een waarde tussen 0,0 en 1,0. Als de betrouwbaarheidsscore (in de piiEntities uitvoer) lager is dan de ingestelde minimumPrecision waarde, wordt de entiteit niet geretourneerd of gemaskeerd. De standaardwaarde is 0.0.
maskingMode Een parameter die verschillende manieren biedt om de persoonlijke gegevens te maskeren die in de invoertekst zijn gedetecteerd. De volgende opties worden ondersteund:
  • "none" (standaard): Er treedt geen maskering op en de maskedText uitvoer wordt niet geretourneerd.
  • "replace": vervangt de gedetecteerde entiteiten door het teken dat is opgegeven in de maskingCharacter parameter. Het teken wordt herhaald tot de lengte van de gedetecteerde entiteit, zodat de verschuivingen correct overeenkomen met zowel de invoertekst als de uitvoer maskedText.
maskingCharacter Het teken dat wordt gebruikt om de tekst te maskeren als de maskingMode parameter is ingesteld op replace. De volgende optie wordt ondersteund: * (standaard). Deze parameter kan alleen zijn null als maskingMode deze niet is ingesteld op replace.
domain (Optioneel) Een tekenreekswaarde, indien opgegeven, stelt het domein in op een subset van de entiteitscategorieën. Mogelijke waarden zijn: "phi" (alleen vertrouwelijke statusinformatie detecteren), "none".
piiCategories (Optioneel) Als u wilt opgeven welke entiteiten worden gedetecteerd en geretourneerd, gebruikt u deze optionele parameter (gedefinieerd als een lijst met tekenreeksen) met de juiste entiteitscategorieën. Met deze parameter kunt u ook entiteiten detecteren die niet standaard zijn ingeschakeld voor uw documenttaal. Zie Ondersteunde entiteitscategorieën voor persoonlijk identificeerbare informatie voor de volledige lijst.
modelVersion (Optioneel) Hiermee geeft u de versie van het model op die moet worden gebruikt bij het aanroepen van persoonsgegevensdetectie. Deze wordt standaard ingesteld op de meest recente versie wanneer deze niet is opgegeven. U wordt aangeraden deze waarde niet op te geven, tenzij dit nodig is.

Invoer van vaardigheden

Invoernaam Beschrijving
languageCode Een tekenreeks die de taal van de records aangeeft. Als deze parameter niet is opgegeven, wordt de standaardtaalcode gebruikt om de records te analyseren.
Zie de volledige lijst met ondersteunde talen.
text De te analyseren tekst.

Uitvoer van vaardigheden

Uitvoernaam Beschrijving
piiEntities Een matrix met complexe typen die de volgende velden bevatten:
  • "text" (De werkelijke persoonsgegevens zoals geëxtraheerd)
  • "type"
  • "subType"
  • "score" (Hogere waarde betekent dat het waarschijnlijker is dat het een echte entiteit is)
  • "offset" (in de invoertekst)
  • "length"

Zie Ondersteunde entiteitscategorieën voor persoonlijk identificeerbare informatie voor de volledige lijst.
maskedText Deze uitvoer is afhankelijk van maskingMode. Als maskingMode dat het is replace, is de uitvoer het tekenreeksresultaat van de maskering die wordt uitgevoerd op de invoertekst, zoals wordt beschreven door de maskingMode. Als maskingMode dat het is none, is er geen uitvoer.

Voorbeelddefinitie

  {
    "@odata.type": "#Microsoft.Skills.Text.PIIDetectionSkill",
    "defaultLanguageCode": "en",
    "minimumPrecision": 0.5,
    "maskingMode": "replace",
    "maskingCharacter": "*",
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "piiEntities"
      },
      {
        "name": "maskedText"
      }
    ]
  }

Voorbeeldinvoer

{
    "values": [
      {
        "recordId": "1",
        "data":
           {
             "text": "Microsoft employee with ssn 859-98-0987 is using our awesome API's."
           }
      }
    ]
}

Voorbeelduitvoer

{
  "values": [
    {
      "recordId": "1",
      "data" : 
      {
        "piiEntities":[ 
           { 
              "text":"859-98-0987",
              "type":"U.S. Social Security Number (SSN)",
              "subtype":"",
              "offset":28,
              "length":11,
              "score":0.65
           }
        ],
        "maskedText": "Microsoft employee with ssn *********** is using our awesome API's."
      }
    }
  ]
}

De offsets die worden geretourneerd voor entiteiten in de uitvoer van deze vaardigheid, worden rechtstreeks geretourneerd door de Language Service-API's. Dit betekent dat als u ze gebruikt om te indexeren in de oorspronkelijke tekenreeks, u de stringInfo-klasse in .NET moet gebruiken om de juiste inhoud te extraheren. Zie Ondersteuning voor meertalige en emoji's in taalservicefuncties voor meer informatie.

Fouten en waarschuwingen

Als de taalcode voor het document niet wordt ondersteund, wordt er een waarschuwing geretourneerd en worden er geen entiteiten geëxtraheerd. Als uw tekst leeg is, wordt er een waarschuwing geretourneerd. Als uw tekst groter is dan 50.000 tekens, worden alleen de eerste 50.000 tekens geanalyseerd en wordt er een waarschuwing weergegeven.

Als de vaardigheid een waarschuwing retourneert, kan de uitvoer maskedText leeg zijn, wat van invloed kan zijn op downstreamvaardigheden die de uitvoer verwachten. Daarom moet u alle waarschuwingen met betrekking tot ontbrekende uitvoer onderzoeken bij het schrijven van de definitie van uw vaardighedenset.

Zie ook