個人標識資訊 (PII) 偵測認知技能
PII 偵測技能會從輸入文字擷取個人資訊,並提供遮罩它的選項。 此技能會使用 Azure AI 語言中提供的偵測模型。
注意
此技能會繫結至 Azure AI 服務,並且每個索引子每天超過 20 個文件的交易需要可計費資源。 內建技能的執行會依現有的 Azure AI 服務預付型方案價格收費。
@odata.type
Microsoft.Skills.Text.PIIDetectionSkill
資料限制
記錄的大小上限應該是 50,000 個字元 (以 String.Length
為測量單位)。 您可以使用 文字分割技能 進行數據區塊化。 將頁面長度設定為 5000,以獲得最佳結果。
技能參數
參數會區分大小寫,而且全都是選擇性的。
參數名稱 | 描述 |
---|---|
defaultLanguageCode |
(選擇性)要套用至未明確指定語言的文件的語言代碼。 如果未指定預設語言代碼,則英文 (en) 是預設語言代碼。 查看支援語言的完整清單。 |
minimumPrecision |
介於 0.0 和 1.0 之間的值。 如果信賴分數 (在輸出中 piiEntities ) 低於設定 minimumPrecision 值,則不會傳回或遮罩實體。 預設值為 0.0。 |
maskingMode |
參數,提供各種方式來遮罩輸入文字中偵測到的個人資訊。 支援下列選項:
|
maskingCharacter |
如果 參數設定為 replace ,則用來遮罩文字的maskingMode 字元。 支援下列選項: * (預設值)。 只有在 null 未設定為 replace 時maskingMode ,才能使用此參數。 |
domain |
(選擇性)如果指定,字串值會將定義域設定為實體類別的子集。 可能的值包括: "phi" (僅偵測機密健康情況資訊), "none" 。 |
piiCategories |
(選擇性)如果您想要指定偵測並傳回哪些實體,請使用這個選擇性參數(定義為字串清單),搭配適當的實體類別。 此參數也可讓您偵測文件語言預設不會啟用的實體。 如需完整清單,請參閱 支援的個人標識資訊實體類別 。 |
modelVersion |
(選擇性)指定 呼叫個人標識資訊偵測時要使用的模型 版本。 未指定時,它會預設為最新版本。 除非有必要,否則建議您不要指定此值。 |
技能輸入
輸入名稱 | 描述 |
---|---|
languageCode |
字串,表示記錄的語言。 如果未指定此參數,則會使用預設語言程式代碼來分析記錄。 查看支援語言的完整清單。 |
text |
要分析的文字。 |
技能輸出
輸出名稱 | 描述 |
---|---|
piiEntities |
包含下列欄位的複雜型別數組:
如需完整清單,請參閱 支援的個人標識資訊實體類別 。 |
maskedText |
此輸出會因 maskingMode 而異。 如果 maskingMode 為 replace ,則輸出是透過輸入文字執行的遮罩字串結果,如所述 maskingMode 。 如果 maskingMode 為 none ,則沒有輸出。 |
範例定義
{
"@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"
}
]
}
範例輸入
{
"values": [
{
"recordId": "1",
"data":
{
"text": "Microsoft employee with ssn 859-98-0987 is using our awesome API's."
}
}
]
}
範例輸出
{
"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."
}
}
]
}
此技能輸出中實體傳回的位移會直接從 語言服務 API 傳回,這表示如果您使用它們來編製原始字串的索引,則應該使用 .NET 中的 StringInfo 類別來擷取正確的內容。 如需詳細資訊,請參閱 語言服務功能中的多語系和表情符號支援。
錯誤和警告
如果不支援文件的語言代碼,則會傳回警告,而且不會擷取任何實體。 如果您的文字是空的,則會傳回警告。 如果您的文字大於 50,000 個字元,則只會分析前 50,000 個字元,併發出警告。
如果技能傳回警告,輸出 maskedText
可能是空的,這可能會影響任何預期輸出的下游技能。 基於這個理由,請務必在撰寫技能集定義時調查與遺漏輸出相關的所有警告。