

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

# 建立人工檢閱工作流程 (API)
<a name="a2i-textract-create-flow-definition-api"></a>

您可以建立人工檢工作流程或*流程定義*，使用 Amazon A2I[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)operation.

對於此示例，您可以在 Amazon S3 中使用您自己的文檔，也可以下載[此範例文檔](https://d2908q01vomqb2.cloudfront.net/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59/2020/04/17/sample-document-final.png)並將其存放在 S3 儲存貯體中。

確保您的 Amazon S3 儲存貯體位於相同的AWS您計劃用於調用`AnalyzeDocument`。若要建立儲存貯體，請遵循[建立儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html)中的*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 身分型政策範例](security_iam_id-based-policy-examples.md)。如需 Amazon A2I，請參「」。[Amazon Augmented AI 中的許可和安全性](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-permissions-security.html)中的*Amazon SageMaker 開發人員指南*。
+ 創建一個私人工作小組並記錄工作組 ARN。如果您是 Amazon A2I 的新用户，請按照[步驟 1：建立工作團隊（主控台）](a2i-textract-create-flow-definition-console.md#a2i-textract-create-flow-definition-workteam)。
+ 建立工作者任務範本。請遵循[建立工作者任務範本](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-worker-template-console.html#a2i-create-worker-template-console)以使用亞馬遜 A2I 控制台創建模板。創建模板時，選擇**文本形式提取**為了**模板類型**。在模板中，將`s3_arn`與您的文檔的 Amazon S3 ARN 執行個體。添加其他工作人員説明`<full-instructions header="Instructions"></full-instructions>`。

  如果您想要預覽模板，請確保您的 IAM 角色具有[啟用工作者任務範本預覽](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-permissions-security.html#permissions-for-worker-task-templates-augmented-ai)。

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

您可以使用您在**先決條件**以配置您的`CreateFlowDefinition`請求。在此請求中，您還可以使用 JSON 格式指定啟用條件。若要了解如何設定啟用條件，請參[使用人工迴圈啟用條件 JSON 架構與 Amazon Textract](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-json-humantaskactivationconditions-textract-example.html)。

## 建立人工檢工作流程 (適用於 Python 的 AWS 開發套件 (Boto3))
<a name="a2i-textract-create-flow-definition-api-example"></a>

若要使用此範例，請將{{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) 調用[https://docs.aws.amazon.com/goto/boto3/sagemaker-2017-07-24/CreateFlowDefinition](https://docs.aws.amazon.com/goto/boto3/sagemaker-2017-07-24/CreateFlowDefinition)（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}}"
)
```