PII(개인 식별 정보) 탐지 인지 기술
PII 검색 기술은 입력 텍스트에서 개인 정보를 추출하고 마스킹 옵션을 제공합니다. 이 기술은 Azure AI Language에서 제공하는 검색 모델을 사용합니다.
참고 항목
이 기술은 Azure AI 서비스에 바인딩되며, 하루에 인덱서당 20개의 문서를 초과하는 트랜잭션에 대해 청구 가능한 리소스를 필요로 합니다. 기본 제공 기술을 실행하는 요금은 기존 Azure AI 서비스 종량제 가격으로 청구됩니다.
@odata.type
Microsoft.Skills.Text.PIIDetectionSkill
데이터 제한
레코드의 최대 크기는 String.Length
에 의해 측정된 대로 50,000자여야 합니다. 데이터 청크에 텍스트 분할 기술을 사용할 수 있습니다. 최상의 결과를 위해 페이지 길이를 5000으로 설정합니다.
기술 매개 변수
매개 변수는 대/소문자를 구분하며 모두 선택 사항입니다.
매개 변수 이름 | 설명 |
---|---|
defaultLanguageCode |
(선택 사항) 언어를 명시적으로 지정하지 않는 문서에 적용할 언어 코드입니다. 기본 언어 코드를 지정하지 않으면 영어(en)가 기본 언어 코드입니다. 지원되는 언어 전체 목록을 참조하세요. |
minimumPrecision |
0.0과 1.0 사이의 값입니다. 출력의 piiEntities 신뢰도 점수가 설정된 minimumPrecision 값보다 낮으면 엔터티가 반환되거나 마스킹되지 않습니다. 기본값은 0.0입니다. |
maskingMode |
입력 텍스트에서 검색된 개인 정보를 마스킹하는 다양한 방법을 제공하는 매개 변수입니다. 지원되는 옵션은 다음과 같습니다.
|
maskingCharacter |
maskingMode 매개 변수가 replace 로 설정된 경우 텍스트를 마스킹하는데 사용되는 문자입니다. 지원되는 옵션은 다음과 같습니다. * (기본값). 이 매개 변수는 로 설정replace 되지 않은 경우에만 maskingMode 가능합니다null . |
domain |
(선택 사항) 문자열 값(지정된 경우)은 도메인을 엔터티 범주의 하위 집합으로 설정합니다. 가능한 값은 다음과 "phi" 같습니다(기밀 상태 정보만 검색) "none" . |
piiCategories |
(선택 사항) 검색되고 반환되는 엔터티를 지정하려면 이 선택적 매개 변수(문자열 목록으로 정의됨)를 적절한 엔터티 범주와 함께 사용합니다. 이 매개 변수를 사용하여 문서 언어에 대해 기본적으로 사용되지 않는 엔터티를 검색할 수도 있습니다. 전체 목록은 지원되는 개인 식별 정보 엔터티 범주를 참조하세요. |
modelVersion |
(선택 사항) 개인 식별 정보 검색을 호출할 때 사용할 모델의 버전을 지정합니다. 지정하지 않으면 기본적으로 최신 버전으로 설정됩니다. 필요한 경우가 아니면 이 값을 지정하지 않는 것이 좋습니다. |
기술 입력
입력 이름 | 설명 |
---|---|
languageCode |
레코드의 언어를 나타내는 문자열입니다. 이 매개 변수를 지정하지 않으면 기본 언어 코드가 레코드를 분석하는 데 사용됩니다. 지원되는 언어 전체 목록을 참조하세요. |
text |
분석할 텍스트입니다. |
기술 출력
출력 이름 | 설명 |
---|---|
piiEntities |
다음 필드를 포함하는 복합 형식의 배열입니다.
전체 목록은 지원되는 개인 식별 정보 엔터티 범주를 참조하세요. |
maskedText |
이 출력은 에 따라 maskingMode 다릅니다. 이 replace 경우 maskingMode 출력은 입력 텍스트maskingMode 에 대해 수행되는 마스킹의 문자열 결과입니다. 이 none 경우 maskingMode 출력이 없습니다. |
샘플 정의
{
"@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."
}
}
]
}
이 기술의 출력에서 엔터티에 대해 반환되는 오프셋은 Language Service API에서 직접 반환됩니다. 즉, 원래 문자열로 인덱싱하는 데 사용하는 경우 올바른 콘텐츠를 추출하기 위해 .NET에서 StringInfo 클래스를 사용해야 합니다. 자세한 내용은 언어 서비스 기능에서 다국어 및 이모지 지원을 참조하세요.
오류 및 경고
문서의 언어 코드가 지원되지 않으면 경고가 반환되고 엔터티가 추출되지 않습니다. 텍스트가 비어 있으면 경고가 반환됩니다. 텍스트가 50,000자보다 큰 경우 처음 50,000자만 분석되고 경고가 발생합니다.
기술에서 경고를 반환하는 경우 출력maskedText
이 비어 있을 수 있으며 , 이로써 출력을 필요로 하는 모든 다운스트림 기술에 영향을 줄 수 있습니다. 이러한 이유로 기술 세트 정의를 작성할 때 누락된 출력과 관련된 모든 경고를 조사해야 합니다.