빠른 시작: PII(개인 식별 정보) 검색
참고 항목
이 빠른 시작에서는 문서에서 PII 검색만 다룹니다. 대화에서 PII를 검색하는 방법에 대해 자세히 알아보려면 대화에서 PII를 검색하고 수정하는 방법을 참조하세요.
참조 문서 | 추가 샘플 | 패키지(NuGet) | 라이브러리 소스 코드
이 빠른 시작을 사용하여 .NET용 클라이언트 라이브러리를 사용하여 PII(개인 식별 정보) 검색 애플리케이션을 만듭니다. 다음 예에서는 텍스트에서 인식된 중요한 정보를 식별할 수 있는 C# 애플리케이션을 만듭니다.
팁
AI Studio를 사용하여 코드를 작성할 필요 없이 요약을 시도할 수 있습니다.
필수 조건
- Azure 구독 - 체험 구독 만들기
- Azure 구독 이 있으면 AI 서비스 리소스를 만듭니다.
- Visual Studio IDE
설치
환경 변수 만들기
API 요청을 보내려면 애플리케이션을 인증해야 합니다. 프로덕션의 경우 자격 증명을 안전하게 저장하고 액세스하는 방법을 사용합니다. 이 예제에서는 애플리케이션을 실행하는 로컬 컴퓨터의 환경 변수에 자격 증명을 작성합니다.
Language 리소스 키에 대한 환경 변수를 설정하려면 콘솔 창을 열고 운영 체제 및 개발 환경에 대한 지침을 따릅니다.
LANGUAGE_KEY
환경 변수를 설정하려면your-key
를 리소스에 대한 키 중 하나로 바꿉니다.LANGUAGE_ENDPOINT
환경 변수를 설정하려면your-endpoint
를 리소스에 대한 엔드포인트로 바꿉니다.
Important
API 키를 사용하는 경우 Azure Key Vault와 같은 다른 위치에 안전하게 저장합니다. API 키를 코드에 직접 포함하지 말고, 공개적으로 게시하지 마세요.
AI 서비스 보안에 대한 자세한 내용은 Azure AI 서비스에 대한 요청 인증을 참조하세요.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
참고 항목
현재 실행 중인 콘솔에서만 환경 변수에 액세스해야 하는 경우 환경 변수를 setx
대신 set
으로 설정할 수 있습니다.
환경 변수가 추가되면 콘솔 창을 포함하여 환경 변수를 읽어야 하는 실행 중인 프로그램을 다시 시작해야 할 수 있습니다. 예를 들어 편집기로 Visual Studio를 사용하는 경우 Visual Studio를 다시 시작한 후 예제를 실행합니다.
새 .NET Core 애플리케이션 만들기
Visual Studio IDE를 사용하여 새 .NET Core 콘솔 앱을 만듭니다. 그러면 단일 C# 소스 파일인 program.cs를 사용하여 "Hello World" 프로젝트가 생성됩니다.
솔루션 탐색기에서 솔루션을 마우스 오른쪽 단추로 클릭하고 NuGet 패키지 관리를 선택하여 클라이언트 라이브러리를 설치합니다. 열리는 패키지 관리자에서 찾아보기를 선택하고 Azure.AI.TextAnalytics
를 검색합니다. 5.2.0
버전, 설치를 차례로 선택합니다. 패키지 관리자 콘솔을 사용할 수도 있습니다.
코드 예
다음 코드를 program.cs 파일에 복사하고 코드를 실행합니다.
using Azure;
using System;
using Azure.AI.TextAnalytics;
namespace Example
{
class Program
{
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
static string languageKey = Environment.GetEnvironmentVariable("LANGUAGE_KEY");
static string languageEndpoint = Environment.GetEnvironmentVariable("LANGUAGE_ENDPOINT");
private static readonly AzureKeyCredential credentials = new AzureKeyCredential(languageKey);
private static readonly Uri endpoint = new Uri(languageEndpoint);
// Example method for detecting sensitive information (PII) from text
static void RecognizePIIExample(TextAnalyticsClient client)
{
string document = "Call our office at 312-555-1234, or send an email to support@contoso.com.";
PiiEntityCollection entities = client.RecognizePiiEntities(document).Value;
Console.WriteLine($"Redacted Text: {entities.RedactedText}");
if (entities.Count > 0)
{
Console.WriteLine($"Recognized {entities.Count} PII entit{(entities.Count > 1 ? "ies" : "y")}:");
foreach (PiiEntity entity in entities)
{
Console.WriteLine($"Text: {entity.Text}, Category: {entity.Category}, SubCategory: {entity.SubCategory}, Confidence score: {entity.ConfidenceScore}");
}
}
else
{
Console.WriteLine("No entities were found.");
}
}
static void Main(string[] args)
{
var client = new TextAnalyticsClient(endpoint, credentials);
RecognizePIIExample(client);
Console.Write("Press any key to exit.");
Console.ReadKey();
}
}
}
출력
Redacted Text: Call our office at ************, or send an email to *******************.
Recognized 2 PII entities:
Text: 312-555-1234, Category: PhoneNumber, SubCategory: , Confidence score: 0.8
Text: support@contoso.com, Category: Email, SubCategory: , Confidence score: 0.8
참조 문서 | 추가 샘플 | 패키지(Maven) | 라이브러리 소스 코드
이 빠른 시작을 사용하여 Java용 클라이언트 라이브러리를 사용하여 PII(개인 식별 정보) 검색 애플리케이션을 만듭니다. 다음 예에서는 텍스트에서 인식된 중요한 정보를 식별할 수 있는 Java 애플리케이션을 만듭니다.
팁
AI Studio를 사용하여 코드를 작성할 필요 없이 요약을 시도할 수 있습니다.
필수 조건
- Azure 구독 - 체험 구독 만들기
- Azure 구독 이 있으면 AI 서비스 리소스를 만듭니다.
- JDK(Java Development Kit) 버전 8 이상
설치
환경 변수 만들기
API 요청을 보내려면 애플리케이션을 인증해야 합니다. 프로덕션의 경우 자격 증명을 안전하게 저장하고 액세스하는 방법을 사용합니다. 이 예제에서는 애플리케이션을 실행하는 로컬 컴퓨터의 환경 변수에 자격 증명을 작성합니다.
Language 리소스 키에 대한 환경 변수를 설정하려면 콘솔 창을 열고 운영 체제 및 개발 환경에 대한 지침을 따릅니다.
LANGUAGE_KEY
환경 변수를 설정하려면your-key
를 리소스에 대한 키 중 하나로 바꿉니다.LANGUAGE_ENDPOINT
환경 변수를 설정하려면your-endpoint
를 리소스에 대한 엔드포인트로 바꿉니다.
Important
API 키를 사용하는 경우 Azure Key Vault와 같은 다른 위치에 안전하게 저장합니다. API 키를 코드에 직접 포함하지 말고, 공개적으로 게시하지 마세요.
AI 서비스 보안에 대한 자세한 내용은 Azure AI 서비스에 대한 요청 인증을 참조하세요.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
참고 항목
현재 실행 중인 콘솔에서만 환경 변수에 액세스해야 하는 경우 환경 변수를 setx
대신 set
으로 설정할 수 있습니다.
환경 변수가 추가되면 콘솔 창을 포함하여 환경 변수를 읽어야 하는 실행 중인 프로그램을 다시 시작해야 할 수 있습니다. 예를 들어 편집기로 Visual Studio를 사용하는 경우 Visual Studio를 다시 시작한 후 예제를 실행합니다.
클라이언트 라이브러리 추가
선호하는 IDE 또는 개발 환경에서 Maven 프로젝트를 만듭니다. 그런 다음, 프로젝트의 pom.xml 파일에 다음 종속성을 추가합니다. 온라인에서 다른 빌드 도구용 구현 구문을 찾을 수 있습니다.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
코드 예
Example.java
라는 Java 파일을 만듭니다. 파일을 열고 아래 코드를 복사합니다. 그런 다음 코드를 실행합니다.
import com.azure.core.credential.AzureKeyCredential;
import com.azure.ai.textanalytics.models.*;
import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
import com.azure.ai.textanalytics.TextAnalyticsClient;
public class Example {
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
private static String languageKey = System.getenv("LANGUAGE_KEY");
private static String languageEndpoint = System.getenv("LANGUAGE_ENDPOINT");
public static void main(String[] args) {
TextAnalyticsClient client = authenticateClient(languageKey, languageEndpoint);
recognizePiiEntitiesExample(client);
}
// Method to authenticate the client object with your key and endpoint
static TextAnalyticsClient authenticateClient(String key, String endpoint) {
return new TextAnalyticsClientBuilder()
.credential(new AzureKeyCredential(key))
.endpoint(endpoint)
.buildClient();
}
// Example method for detecting sensitive information (PII) from text
static void recognizePiiEntitiesExample(TextAnalyticsClient client)
{
// The text that need be analyzed.
String document = "My SSN is 859-98-0987";
PiiEntityCollection piiEntityCollection = client.recognizePiiEntities(document);
System.out.printf("Redacted Text: %s%n", piiEntityCollection.getRedactedText());
piiEntityCollection.forEach(entity -> System.out.printf(
"Recognized Personally Identifiable Information entity: %s, entity category: %s, entity subcategory: %s,"
+ " confidence score: %f.%n",
entity.getText(), entity.getCategory(), entity.getSubcategory(), entity.getConfidenceScore()));
}
}
출력
Redacted Text: My SSN is ***********
Recognized Personally Identifiable Information entity: 859-98-0987, entity category: USSocialSecurityNumber, entity subcategory: null, confidence score: 0.650000.
참조 설명서 | 추가 샘플 | 패키지(npm) | 라이브러리 소스 코드
이 빠른 시작을 사용하여 Node.js용 클라이언트 라이브러리를 사용하여 PII(개인 식별 정보) 검색 애플리케이션을 만듭니다. 다음 예에서는 텍스트에서 인식된 중요한 정보를 식별할 수 있는 JavaScript 애플리케이션을 만듭니다.
필수 조건
- Azure 구독 - 체험 구독 만들기
- Azure 구독 이 있으면 AI 서비스 리소스를 만듭니다.
- Node.js v14 LTS 이상
설치
환경 변수 만들기
API 요청을 보내려면 애플리케이션을 인증해야 합니다. 프로덕션의 경우 자격 증명을 안전하게 저장하고 액세스하는 방법을 사용합니다. 이 예제에서는 애플리케이션을 실행하는 로컬 컴퓨터의 환경 변수에 자격 증명을 작성합니다.
Language 리소스 키에 대한 환경 변수를 설정하려면 콘솔 창을 열고 운영 체제 및 개발 환경에 대한 지침을 따릅니다.
LANGUAGE_KEY
환경 변수를 설정하려면your-key
를 리소스에 대한 키 중 하나로 바꿉니다.LANGUAGE_ENDPOINT
환경 변수를 설정하려면your-endpoint
를 리소스에 대한 엔드포인트로 바꿉니다.
Important
API 키를 사용하는 경우 Azure Key Vault와 같은 다른 위치에 안전하게 저장합니다. API 키를 코드에 직접 포함하지 말고, 공개적으로 게시하지 마세요.
AI 서비스 보안에 대한 자세한 내용은 Azure AI 서비스에 대한 요청 인증을 참조하세요.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
참고 항목
현재 실행 중인 콘솔에서만 환경 변수에 액세스해야 하는 경우 환경 변수를 setx
대신 set
으로 설정할 수 있습니다.
환경 변수가 추가되면 콘솔 창을 포함하여 환경 변수를 읽어야 하는 실행 중인 프로그램을 다시 시작해야 할 수 있습니다. 예를 들어 편집기로 Visual Studio를 사용하는 경우 Visual Studio를 다시 시작한 후 예제를 실행합니다.
새 Node.js 애플리케이션 만들기
콘솔 창(예: cmd, PowerShell 또는 Bash)에서 앱에 대한 새 디렉터리를 만들고 이 디렉터리로 이동합니다.
mkdir myapp
cd myapp
package.json
파일을 사용하여 노드 애플리케이션을 만들려면 npm init
명령을 실행합니다.
npm init
클라이언트 라이브러리 설치
npm 패키지를 설치합니다.
npm install @azure/ai-text-analytics
코드 예
파일을 열고 아래 코드를 복사합니다. 그런 다음 코드를 실행합니다.
"use strict";
const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
const key = process.env.LANGUAGE_KEY;
const endpoint = process.env.LANGUAGE_ENDPOINT;
//an example document for pii recognition
const documents = [ "The employee's phone number is (555) 555-5555." ];
async function main() {
console.log(`PII recognition sample`);
const client = new TextAnalyticsClient(endpoint, new AzureKeyCredential(key));
const documents = ["My phone number is 555-555-5555"];
const [result] = await client.analyze("PiiEntityRecognition", documents, "en");
if (!result.error) {
console.log(`Redacted text: "${result.redactedText}"`);
console.log("Pii Entities: ");
for (const entity of result.entities) {
console.log(`\t- "${entity.text}" of type ${entity.category}`);
}
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
출력
PII recognition sample
Redacted text: "My phone number is ************"
Pii Entities:
- "555-555-5555" of type PhoneNumber
참조 문서 | 추가 샘플 | 패키지(PyPi) | 라이브러리 소스 코드
이 빠른 시작을 사용하여 Python용 클라이언트 라이브러리를 사용하여 PII(개인 식별 정보) 검색 애플리케이션을 만듭니다. 다음 예제에서는 텍스트에서 인식된 중요한 정보를 식별할 수 있는 Python 애플리케이션을 만듭니다.
필수 조건
- Azure 구독 - 체험 구독 만들기
- Azure 구독 이 있으면 AI 서비스 리소스를 만듭니다.
- Python 3.8 이상
설치
환경 변수 만들기
API 요청을 보내려면 애플리케이션을 인증해야 합니다. 프로덕션의 경우 자격 증명을 안전하게 저장하고 액세스하는 방법을 사용합니다. 이 예제에서는 애플리케이션을 실행하는 로컬 컴퓨터의 환경 변수에 자격 증명을 작성합니다.
Language 리소스 키에 대한 환경 변수를 설정하려면 콘솔 창을 열고 운영 체제 및 개발 환경에 대한 지침을 따릅니다.
LANGUAGE_KEY
환경 변수를 설정하려면your-key
를 리소스에 대한 키 중 하나로 바꿉니다.LANGUAGE_ENDPOINT
환경 변수를 설정하려면your-endpoint
를 리소스에 대한 엔드포인트로 바꿉니다.
Important
API 키를 사용하는 경우 Azure Key Vault와 같은 다른 위치에 안전하게 저장합니다. API 키를 코드에 직접 포함하지 말고, 공개적으로 게시하지 마세요.
AI 서비스 보안에 대한 자세한 내용은 Azure AI 서비스에 대한 요청 인증을 참조하세요.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
참고 항목
현재 실행 중인 콘솔에서만 환경 변수에 액세스해야 하는 경우 환경 변수를 setx
대신 set
으로 설정할 수 있습니다.
환경 변수가 추가되면 콘솔 창을 포함하여 환경 변수를 읽어야 하는 실행 중인 프로그램을 다시 시작해야 할 수 있습니다. 예를 들어 편집기로 Visual Studio를 사용하는 경우 Visual Studio를 다시 시작한 후 예제를 실행합니다.
클라이언트 라이브러리 설치
Python을 설치한 후, 다음을 사용하여 클라이언트 라이브러리를 설치할 수 있습니다.
pip install azure-ai-textanalytics==5.2.0
코드 예
새 Python 파일을 만들고 아래 코드를 복사합니다. 그런 다음 코드를 실행합니다.
# This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
language_key = os.environ.get('LANGUAGE_KEY')
language_endpoint = os.environ.get('LANGUAGE_ENDPOINT')
from azure.ai.textanalytics import TextAnalyticsClient
from azure.core.credentials import AzureKeyCredential
# Authenticate the client using your key and endpoint
def authenticate_client():
ta_credential = AzureKeyCredential(language_key)
text_analytics_client = TextAnalyticsClient(
endpoint=language_endpoint,
credential=ta_credential)
return text_analytics_client
client = authenticate_client()
# Example method for detecting sensitive information (PII) from text
def pii_recognition_example(client):
documents = [
"The employee's SSN is 859-98-0987.",
"The employee's phone number is 555-555-5555."
]
response = client.recognize_pii_entities(documents, language="en")
result = [doc for doc in response if not doc.is_error]
for doc in result:
print("Redacted Text: {}".format(doc.redacted_text))
for entity in doc.entities:
print("Entity: {}".format(entity.text))
print("\tCategory: {}".format(entity.category))
print("\tConfidence Score: {}".format(entity.confidence_score))
print("\tOffset: {}".format(entity.offset))
print("\tLength: {}".format(entity.length))
pii_recognition_example(client)
출력
Redacted Text: The ********'s SSN is ***********.
Entity: employee
Category: PersonType
Confidence Score: 0.97
Offset: 4
Length: 8
Entity: 859-98-0987
Category: USSocialSecurityNumber
Confidence Score: 0.65
Offset: 22
Length: 11
Redacted Text: The ********'s phone number is ************.
Entity: employee
Category: PersonType
Confidence Score: 0.96
Offset: 4
Length: 8
Entity: 555-555-5555
Category: PhoneNumber
Confidence Score: 0.8
Offset: 31
Length: 12
이 빠른 시작을 사용하여 REST API를 통해 PII(개인 식별 정보) 검색 요청을 보냅니다. 다음 예제에서는 cURL을 사용하여 텍스트에서 인식된 중요한 정보를 식별합니다.
필수 조건
- Azure 구독 - 체험 구독 만들기
- Azure 구독 이 있으면 AI 서비스 리소스를 만듭니다.
설치
환경 변수 만들기
API 요청을 보내려면 애플리케이션을 인증해야 합니다. 프로덕션의 경우 자격 증명을 안전하게 저장하고 액세스하는 방법을 사용합니다. 이 예제에서는 애플리케이션을 실행하는 로컬 컴퓨터의 환경 변수에 자격 증명을 작성합니다.
Language 리소스 키에 대한 환경 변수를 설정하려면 콘솔 창을 열고 운영 체제 및 개발 환경에 대한 지침을 따릅니다.
LANGUAGE_KEY
환경 변수를 설정하려면your-key
를 리소스에 대한 키 중 하나로 바꿉니다.LANGUAGE_ENDPOINT
환경 변수를 설정하려면your-endpoint
를 리소스에 대한 엔드포인트로 바꿉니다.
Important
API 키를 사용하는 경우 Azure Key Vault와 같은 다른 위치에 안전하게 저장합니다. API 키를 코드에 직접 포함하지 말고, 공개적으로 게시하지 마세요.
AI 서비스 보안에 대한 자세한 내용은 Azure AI 서비스에 대한 요청 인증을 참조하세요.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
참고 항목
현재 실행 중인 콘솔에서만 환경 변수에 액세스해야 하는 경우 환경 변수를 setx
대신 set
으로 설정할 수 있습니다.
환경 변수가 추가되면 콘솔 창을 포함하여 환경 변수를 읽어야 하는 실행 중인 프로그램을 다시 시작해야 할 수 있습니다. 예를 들어 편집기로 Visual Studio를 사용하는 경우 Visual Studio를 다시 시작한 후 예제를 실행합니다.
예제 요청 본문을 사용하여 JSON 파일 만들기
코드 편집기에서 test_pii_payload.json
이라는 새 파일을 만들고 다음 JSON 예제를 복사합니다. 이 예제 요청은 다음 단계에서 API로 보냅니다.
{
"kind": "PiiEntityRecognition",
"parameters": {
"modelVersion": "latest"
},
"analysisInput":{
"documents":[
{
"id":"1",
"language": "en",
"text": "Call our office at 312-555-1234, or send an email to support@contoso.com"
}
]
}
}
'
test_pii_payload.json
을 컴퓨터의 어딘가에 저장합니다. 예를 들어 데스크톱입니다.
PII(개인 식별 정보) 검색 API 요청 보내기
다음 명령을 사용하여 사용하고 있는 프로그램을 사용하여 API 요청을 보냅니다. 명령을 터미널에 복사하고 실행합니다.
parameter | 설명 |
---|---|
-X POST <endpoint> |
API에 액세스하기 위한 엔드포인트를 지정합니다. |
-H Content-Type: application/json |
JSON 데이터를 보내기 위한 콘텐츠 형식. |
-H "Ocp-Apim-Subscription-Key:<key> |
API에 액세스하기 위한 키를 지정합니다. |
-d <documents> |
보내려는 문서가 포함된 JSON. |
C:\Users\<myaccount>\Desktop\test_pii_payload.json
을 이전 단계에서 만든 예제 JSON 요청 파일의 위치로 바꿉니다.
명령 프롬프트
curl -X POST "%LANGUAGE_ENDPOINT%/language/:analyze-text?api-version=2022-05-01" ^
-H "Content-Type: application/json" ^
-H "Ocp-Apim-Subscription-Key: %LANGUAGE_KEY%" ^
-d "@C:\Users\<myaccount>\Desktop\test_pii_payload.json"
PowerShell
curl.exe -X POST $env:LANGUAGE_ENDPOINT/language/:analyze-text?api-version=2022-05-01 `
-H "Content-Type: application/json" `
-H "Ocp-Apim-Subscription-Key: $env:LANGUAGE_KEY" `
-d "@C:\Users\<myaccount>\Desktop\test_pii_payload.json"
JSON 응답
{
"kind": "PiiEntityRecognitionResults",
"results": {
"documents": [{
"redactedText": "Call our office at ************, or send an email to *******************",
"id": "1",
"entities": [{
"text": "312-555-1234",
"category": "PhoneNumber",
"offset": 19,
"length": 12,
"confidenceScore": 0.8
}, {
"text": "support@contoso.com",
"category": "Email",
"offset": 53,
"length": 19,
"confidenceScore": 0.8
}],
"warnings": []
}],
"errors": [],
"modelVersion": "2021-01-15"
}
}
리소스 정리
Azure AI 서비스 구독을 정리하고 제거하려면 리소스 또는 리소스 그룹을 삭제할 수 있습니다. 리소스 그룹을 삭제하면 해당 리소스 그룹에 연결된 다른 모든 리소스가 함께 삭제됩니다.