使用非同步工作編輯PII實體 () API - Amazon Comprehend

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用非同步工作編輯PII實體 () API

若要編輯文字中的PII實體,請啟動非同步批次工作。若要執行任務,請將您的文件上傳到 Amazon S3,然後提交StartPiiEntitiesDetectionJob請求。

開始之前

在開始之前,請確保您擁有:

  • 輸入和輸出值區 — 識別要用於輸入檔案和輸出檔案的 Amazon S3 儲存貯體。值區必須與您呼叫的區域位於相同的區域中。API

  • IAM服務角色 — 您必須擁有具有存取輸入和輸出值區之權限的IAM服務角色。如需詳細資訊,請參閱非同步作業所需的角色型權限

輸入參數

在您的請求中,包括以下必要參數:

  • InputDataConfig— 提供請求的InputDataConfig定義,其中包括工作的輸入內容。對於S3Uri參數,請指定輸入文件的 Amazon S3 位置。

  • OutputDataConfig— 提供請求的OutputDataConfig定義,其中包括工作的輸出內容。對於S3Uri參數,請指定 Amazon S3 位置寫入其分析結果的位置。

  • DataAccessRoleArn— 提供 Amazon 資源名稱 (ARN) AWS Identity and Access Management 角色。此角色必須授與 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實體「Doe」會取代為「[NAME]」。

    • 若要以您選擇的字元取代每個PII實體中的字元,請將MaskMode參數設定為MASK,然後將MaskCharacter參數設定為取代字元。僅提供單一字元。有效字元為! 、#、$、%、&、* 和 @。例如,使用此設定時,PII實體「Doe Jane」可以取代為「**** ***」

  • LanguageCode— 將此參數設定為enes。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-name job 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-id job 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) } }