建立人工檢閱工作流程 (API) - Amazon Textract

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

建立人工檢閱工作流程 (API)

您可以建立人工檢工作流程或流程定義,使用 Amazon A2ICreateFlowDefinitionoperation.

對於此示例,您可以在 Amazon S3 中使用您自己的文檔,也可以下載此範例文檔並將其存放在 S3 儲存貯體中。

確保您的 Amazon S3 儲存貯體位於相同的AWS您計劃用於調用AnalyzeDocument。若要建立儲存貯體,請遵循建立儲存貯體中的Amazon Simple Storage Service 主控台用户指南

先決條件

要使用 Amazon A2I API 創建人工審核工作流程,您必須完成以下先決條件:

  • 配置具有調用亞馬遜 A2I 和 Amazon Textract API 操作權限的 IAM 角色。要開始使用,您可以將 AWS 政策、AmazonAugmentedAIFullAccess 和 AmazonTextractFullAccess 附加到 IAM 角色。記錄 IAM 角色 Amazon Resource Name (ARN),因為稍後需要使用。

    有關使用 Amazon Textract 時的更詳細的權限,請參閲Amazon Textract 身分型政策範例。如需 Amazon A2I,請參「」。Amazon Augmented AI 中的許可和安全性中的Amazon SageMaker 開發人員指南

  • 創建一個私人工作小組並記錄工作組 ARN。如果您是 Amazon A2I 的新用户,請按照步驟 1:建立工作團隊(主控台)

  • 建立工作者任務範本。請遵循建立工作者任務範本以使用亞馬遜 A2I 控制台創建模板。創建模板時,選擇文本形式提取為了模板類型。在模板中,將s3_arn與您的文檔的 Amazon S3 ARN 執行個體。添加其他工作人員説明<full-instructions header="Instructions"></full-instructions>

    如果您想要預覽模板,請確保您的 IAM 角色具有啟用工作者任務範本預覽

    創建模板後,記錄工作人員任務模板 ARN。

您可以使用您在先決條件以配置您的CreateFlowDefinition請求。在此請求中,您還可以使用 JSON 格式指定啟用條件。若要了解如何設定啟用條件,請參使用人工迴圈啟用條件 JSON 架構與 Amazon Textract

建立人工檢工作流程 (適用於 Python 的 AWS 開發套件 (Boto3))

若要使用此範例,請將red文本與您的規格和資源。

首先,使用以下代碼將激活條件編碼為 JSON 對象。如果 Amazon Textract 返回的置信度分數小於 99,則會觸發人工審查郵件地址及其值,或者返回文檔中檢測到的任何鍵值對的置信度小於 90。如果您使用本示例中提供的示例文檔,則這些激活條件會創建人工審核任務。

import json humanLoopActivationConditions = json.dumps("{ "Conditions": [ { "ConditionType": "ImportantFormKeyConfidenceCheck", "ConditionParameters": { "ImportantFormKey": "Mail Address", "KeyValueBlockConfidenceLessThan": 99, "WordBlockConfidenceLessThan": 99 } }, { "ConditionType": "ImportantFormKeyConfidenceCheck", "ConditionParameters": { "ImportantFormKey": "*", "KeyValueBlockConfidenceLessThan": 90, "WordBlockConfidenceLessThan": 90 } } ] }" )

使用humanLoopActivationConditions配置create_flow_definition請求。下面的示例使用 SDK for Python (Boto3) 調用create_flow_definition(us-west-2 AWS 區域)。它指定使用私有工作團隊。

response = client.create_flow_definition( FlowDefinitionName='string', HumanLoopRequestSource={ 'AwsManagedHumanLoopRequestSource': "AWS/Textract/AnalyzeDocument/Forms/V1" }, HumanLoopActivationConfig={ 'HumanLoopActivationConditionsConfig': { 'HumanLoopActivationConditions': humanLoopActivationConditions } }, HumanLoopConfig={ 'WorkteamArn': "arn:aws:sagemaker:us-west-2:111122223333:workteam/private-crowd/work-team-name", 'HumanTaskUiArn': "arn:aws:sagemaker:us-west-2:111122223333:human-task-ui/worker-task-template-name", 'TaskTitle': "Add a task title", 'TaskDescription': "Describe your task", 'TaskCount': 1, 'TaskAvailabilityLifetimeInSeconds': 3600, 'TaskTimeLimitInSeconds': 86400, 'TaskKeywords': ["Document Review", "Content Review"] } }, OutputConfig={ 'S3OutputPath': "s3://DOC-EXAMPLE-BUCKET/prefix/", }, RoleArn="arn:aws:iam::111122223333:role/role-name" )