本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要編輯文字中的 PII 實體,您可以啟動非同步批次任務。若要執行任務,請將您的文件上傳至 Amazon S3,然後提交 StartPiiEntitiesDetectionJob 請求。
開始之前
開始之前,請確定您已:
-
輸入和輸出儲存貯體 - 識別您要用於輸入檔案和輸出檔案的 Amazon S3 儲存貯體。儲存貯體必須與您呼叫的 API 位於相同的區域。
-
IAM 服務角色 - 您必須具有 IAM 服務角色,具有存取輸入和輸出儲存貯體的許可。如需詳細資訊,請參閱非同步操作所需的角色型許可。
輸入參數
在您的請求中,包含下列必要參數:
-
InputDataConfig
– 為您的請求提供 InputDataConfig 定義,其中包含任務的輸入屬性。針對S3Uri
參數,指定輸入文件的 Amazon S3 位置。 -
OutputDataConfig
– 為您的請求提供 OutputDataConfig 定義,其中包含任務的輸出屬性。針對S3Uri
參數,指定 Amazon Comprehend 寫入其分析結果的 Amazon S3 位置。 Amazon Comprehend -
DataAccessRoleArn
– 提供 AWS Identity and Access Management 角色的 Amazon Resource Name (ARN)。此角色必須授予 Amazon Comprehend 對輸入資料的讀取存取權,以及對 Amazon S3 中輸出位置的寫入存取權。如需詳細資訊,請參閱非同步操作所需的角色型許可。 -
Mode
– 將此參數設定為ONLY_REDACTION
。透過此設定,Amazon Comprehend 會將輸入文件的副本寫入 Amazon S3 中的輸出位置。在此副本中,每個 PII 實體都會經過修訂。 -
RedactionConfig
– 為您的請求提供 RedactionConfig 定義,其中包含編輯的組態參數。指定要修訂的 PII 類型,並指定要將每個 PII 實體取代為其類型的名稱或您選擇的字元:-
指定要在
PiiEntityTypes
陣列中修訂的 PII 實體類型。若要編輯所有實體類型,請將陣列值設定為["ALL"]
。 -
若要將每個 PII 實體取代為其類型,請將
MaskMode
參數設定為REPLACE_WITH_PII_ENTITY_TYPE
。例如,使用此設定,PII 實體 "Jane Doe" 會取代為 "【NAME】"。 -
若要以您選擇的字元取代每個 PII 實體中的字元,請將
MaskMode
參數設定為MASK
,並將MaskCharacter
參數設定為取代字元。僅提供單一字元。有效字元為 !、#、$、%、&、* 和 @。例如,使用此設定時,PII 實體 "Jane Doe" 可以取代為 "**** ***"
-
-
LanguageCode
– 將此參數設定為en
或es
。Amazon Comprehend 支援英文或西班牙文文字的 PII 偵測。
輸出檔案格式
下列範例顯示來自分析任務的輸入和輸出檔案,該任務會修訂 PII。輸入的格式是每行一個文件。
{ Managing Your Accounts Primary Branch Canton John Doe Phone Number 443-573-4800 123 Main StreetBaltimore, MD 21224 Online Banking HowardBank.com Telephone 1-877-527-2703 Bank 3301 Boston Street, Baltimore, MD 21224
編輯此輸入檔案的分析任務會產生下列輸出檔案。
{ Managing Your Accounts Primary Branch ****** ******** Phone Number ************ ********************************** Online Banking ************** Telephone ************** Bank *************************************** }
使用 進行 PII 修訂 AWS Command Line Interface
下列範例使用 StartPiiEntitiesDetectionJob
操作搭配 AWS CLI。
此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。
aws comprehend start-pii-entities-detection-job \ --region
region
\ --job-namejob name
\ --cli-input-json file://path to JSON input file
針對 參數,cli-input-json
您提供包含請求資料的 JSON 檔案路徑,如下列範例所示。
{ "InputDataConfig": { "S3Uri": "s3://
input bucket
/input path
", "InputFormat": "ONE_DOC_PER_LINE" }, "OutputDataConfig": { "S3Uri": "s3://output bucket
/output path
" }, "DataAccessRoleArn": "arn:aws:iam::account ID
:role/data access role
" "LanguageCode": "en", "Mode": "ONLY_REDACTION" "RedactionConfig": { "MaskCharacter": "*", "MaskMode": "MASK", "PiiEntityTypes": ["ALL"] } }
如果啟動事件偵測任務的請求成功,您將收到類似以下的回應:
{
"JobId": "7c4fbe6e...e5b"
"JobArn": "arn:aws:comprehend:us-west-2:123456789012:pii-entities-detection-job/7c4fbe6e...e5b"
"JobStatus": "SUBMITTED",
}
您可以使用 DescribeEventsDetectionJob 操作來取得現有任務的狀態。
aws comprehend describe-pii-entities-detection-job \ --region
region
\ --job-idjob ID
當任務成功完成時,您會收到類似以下的回應:
{
"PiiEntitiesDetectionJobProperties": {
"JobId": "7c4fbe6e...e5b"
"JobArn": "arn:aws:comprehend:us-west-2:123456789012:pii-entities-detection-job/7c4fbe6e...e5b"
"JobName": "piiCLIredtest1",
"JobStatus": "COMPLETED",
"SubmitTime": "2022-05-05T14:54:06.169000-07:00",
"EndTime": "2022-05-05T15:00:17.007000-07:00",
"InputDataConfig": {
(identical to the input data that you provided with the request)
}
}