本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立人工檢閱工作流程 (API)
您可以建立人工檢工作流程或流程定義,使用 Amazon A2ICreateFlowDefinitionoperation.
對於此示例,您可以在 Amazon 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" )