本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon 增強型 AI (Amazon A2I) 為您的 ML/AI 應用程式建立人工審核工作流程時,您可以在 Amazon SageMaker AI 中建立和設定資源,例如人工人力資源和工作者任務範本。若要設定和啟動人工迴圈,您可以將 Amazon A2I 與 Amazon Textract 或 Amazon Rekognition 等 AWS 其他服務整合,或使用 Amazon 增強版 AI 執行期 API。若要建立人工審核工作流程並啟動人工循環,您必須將特定政策連接至您的 AWS Identity and Access Management (IAM) 角色或使用者。具體而言:
-
當您在 2020 年 1 月 12 日或之後使用影像輸入資料啟動人工循環時,必須將 CORS 標題政策新增至包含輸入資料的 Amazon S3 儲存貯體。如需進一步了解,請參閱CORS 許可要求。
-
當您建立流程定義時,您必須提供授與 Amazon A2I 許可以存取 Amazon S3 的角色,以便讀取將在人工任務使用者介面中轉譯的物件,以及寫入人工審核結果的物件。
此角色也必須連接信任政策,才能授予 SageMaker AI 擔任角色的許可。這可讓 Amazon A2I 根據您連接到角色的許可來執行動作。
請參閱將許可新增至用於建立流程定義的 IAM 角色,以查看您可以修改並連接用來建立流程定義角色的範例政策。這些政策會連接到在 SageMaker AI 主控台 Amazon A2I 區域的人工審核工作流程區段中建立的 IAM 角色。
-
若要建立並啟動人工循環,您可以使用內建任務類型 (例如
DetectModerationLabel
或AnalyzeDocument
) 的 API 作業,或在自訂機器學習 (ML) 應用程式 中使用 Amazon A2I 執行期 API 作業StartHumanLoop
。您必須連接AmazonAugmentedAIFullAccess
受管政策到調用這些 API 作業的使用者,以授與這些服務許可,可以使用 Amazon A2I 作業。如要瞭解如何作業,請參閱建立可調用 Amazon A2I API 作業的使用者。此政策不會授予許可,以叫用與內建任務類型相關聯的 AWS 服務的 API 操作。例如,
AmazonAugmentedAIFullAccess
不會授權許可,呼叫 Amazon RekognitionDetectModerationLabel
API 作業或 Amazon TextractAnalyzeDocument
API 作業。您可以使用比較一般的政策,AmazonAugmentedAIIntegratedAPIAccess
,來授予這些許可。如需詳細資訊,請參閱使用調用 Amazon A2I、Amazon Textract 和 Amazon Rekognition API 作業的許可來建立使用者。當您想要授予使用者使用 Amazon A2I 和整合 AWS 服務的 API 操作的廣泛許可時,這是不錯的選擇。如果您想要設定更精密的許可,請參閱以 Amazon Rekognition 身分為基礎的政策範例和以 Amazon Textract 以身分為基礎的政策範例,以了解您可以用來授與使用這些個別服務的許可。
-
若要預覽您的自訂工作者任務使用者介面範本,您需要一個擁有許可的 IAM 角色,才能讀取在使用者介面上呈現的 Amazon S3 物件。請參閱啟用工作者任務範本預覽 中的政策範例。
主題
CORS 許可要求
在 2020 年早些時候,Chrome 和 Firefox 等廣泛使用的瀏覽器變更了其根據影像中繼資料旋轉影像的預設行為,稱為 EXIF 資料
從 Chrome 89 開始, AWS 無法再自動防止映像輪換,因為 Web 標準群組 W3C 已決定控制映像輪換的功能違反 Web 的同源政策。因此,若要確保人力工作者在提交要求以建立人工循環時,以可預測的方向註釋您的輸入影像,您必須將 CORS 標題政策新增至包含輸入影像的 S3 儲存貯體。
重要
如果您未將 CORS 組態新增至包含輸入資料的 S3 儲存貯體,則這些輸入資料物件的人工審核任務會失敗。
您可以在 Amazon S3 主控台中將 CORS 政策新增至包含輸入資料的 S3 儲存貯體。若要在 S3 主控台中包含輸入影像的 S3 儲存貯體上設定必要的 CORS 標題,請遵循在如何使用 CORS 新增跨網域資源共用中詳細說明的指示。對託管影像的儲存貯體,請使用以下 CORS 組態代碼。如果您使用 Amazon S3 主控台,將政策新增至儲存貯體,則必須使用 JSON 格式。
JSON
[{
"AllowedHeaders": [],
"AllowedMethods": ["GET"],
"AllowedOrigins": ["*"],
"ExposeHeaders": []
}]
XML
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
</CORSRule>
</CORSConfiguration>
若要使用 Amazon S3 主控台新增 CORS 標題政策,下列 GIF 會示範在 Amazon S3 文件中找到的指示。

將許可新增至用於建立流程定義的 IAM 角色
若要建立流程定義,請將本節中的政策連接至您在 SageMaker AI 主控台中建立人工審核工作流程或使用 CreateFlowDefinition
API 操作時所使用的角色。
-
如果您使用主控台建立人工審核工作流程,在主控台中建立人工審核工作流程時,在 IAM 角色欄位輸入角色的 Amazon Resource Name (ARN)。
-
使用 API 建立流程定義時,請將這些政策連接傳遞到
CreateFlowDefinition
操作RoleArn
參數的角色。
在您建立人工審核工作流程 (流程定義) 時,Amazon A2I 會調用 Amazon S3 以完成您的任務。若要授與在儲存 Amazon S3 儲存貯體中擷取和存放檔案的 Amazon A2I 許可,請建立下列政策並將其連接至您的角色。例如,如果您要送交人工審核的影像、文件與其他檔案等存放在名為 my_input_bucket
的 S3 儲存貯體中,而且您希望將人工審核存放在名為 my_output_bucket
的儲存貯體中,並建立下列政策。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
my_input_bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::my_output_bucket
/*" ] } ] }
此外,IAM 角色必須具有下列信任政策,才能授予 SageMaker AI 擔任該角色的許可。要瞭解有關 IAM 信任策略的更多資訊,請參閱基於資源的策略部分的策略和權限在AWS Identity and Access Management文件。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowSageMakerToAssumeRole",
"Effect": "Allow",
"Principal": {
"Service": "sagemaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
如需有關建立和管理 IAM 角色和政策的詳細資訊,請參閱AWS Identity and Access Management 使用者指南中的下列主題:
-
若要建立 IAM 角色,請參閱建立角色以委派許可給 IAM 使用者。
-
若要了解如何建立 IAM 政策,請參閱建立 IAM 政策。
-
若要了解如何將 IAM 政策連接至角色,請參閱新增和移除 IAM 身分許可。
建立可調用 Amazon A2I API 作業的使用者
若要用 Amazon A2I 來建立和啟動 Amazon Rekognition、Amazon Textract,或 Amazon A2I 執行期 API 的人工循環,您必須使用具有調用 Amazon A2I 作業許可的使用者。若要執行此操作,請使用 IAM 主控台將 AmazonAugmentedAIFullAccess
此政策會授權使用者從 SageMaker API 調用 API 作業以進行流程定義的建立和管理,以及用於人工循環的建立和管理的 Amazon 增強版 AI 執行期 API。若要進一步了解這些 API 作業,請參閱在 Amazon 增強版 AI 中使用 API。
AmazonAugmentedAIFullAccess
不會授與使用 Amazon Rekognition 或 Amazon Textract API 作業的許可。
注意
您也可以將 AmazonAugmentedAIFullAccess
政策連接到用來建立和啟動人工循環的 IAM 角色。
若要提供存取權,請新增權限至您的使用者、群組或角色:
-
中的使用者和群組 AWS IAM Identity Center:
建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。
-
透過身分提供者在 IAM 中管理的使用者:
建立聯合身分的角色。遵循「IAM 使用者指南」的為第三方身分提供者 (聯合) 建立角色中的指示。
-
IAM 使用者:
-
建立您的使用者可擔任的角色。請按照「IAM 使用者指南」的為 IAM 使用者建立角色中的指示。
-
(不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循 IAM 使用者指南的新增許可到使用者 (主控台)中的指示。
-
如需詳細資訊,請參閱 AWS Identity and Access Management 使用者指南中的新增和移除 IAM 身分許可。
使用調用 Amazon A2I、Amazon Textract 和 Amazon Rekognition API 作業的許可來建立使用者
若要建立一個使用者:有權調用內建任務類型使用的 API 作業 (即,適用於 Amazon Rekognition 的 DetectModerationLables
,和適用於 AnalyzeDocument
的 Amazon Textract),並有權使用所有Amazon A2I API 作業,請連接 IAM 受管政策,AmazonAugmentedAIIntegratedAPIAccess
。當您想要授予廣泛許可至使用 Amazon A2I 搭配多種任務類型的使用者時,可能會想要使用此政策。若要進一步了解這些 API 作業,請參閱在 Amazon 增強版 AI 中使用 API。
注意
您也可以將 AmazonAugmentedAIIntegratedAPIAccess
政策連接到用來建立和啟動人工循環的 IAM 角色。
若要提供存取權,請新增權限至您的使用者、群組或角色:
-
中的使用者和群組 AWS IAM Identity Center:
建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。
-
透過身分提供者在 IAM 中管理的使用者:
建立聯合身分的角色。遵循「IAM 使用者指南」的為第三方身分提供者 (聯合) 建立角色中的指示。
-
IAM 使用者:
-
建立您的使用者可擔任的角色。請按照「IAM 使用者指南」的為 IAM 使用者建立角色中的指示。
-
(不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循 IAM 使用者指南的新增許可到使用者 (主控台)中的指示。
-
如需詳細資訊,請參閱 AWS Identity and Access Management 使用者指南中的新增和移除 IAM 身分許可。
啟用工作者任務範本預覽
若要自訂工作者在處理任務時看到的介面和指示,您可以建立工作者任務範本。您可以使用 CreateHumanTaskUi
操作或 SageMaker AI 主控台建立範本。
若要預覽範本,您需要具有下列許可的 IAM 角色,以讀取在使用者介面上呈現的 Amazon S3 物件。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
my_input_bucket
/*" ] } ] }
對於 Amazon Rekognition 和 Amazon Textract 任務類型,您可以使用 SageMaker AI 主控台的 Amazon 增強型 AI 區段預覽範本。對於自訂任務類型,您可以調用作 RenderUiTemplate
操作來預覽範本。若要預覽範本,請遵循任務類型的指示:
-
Amazon Rekognition 和 Amazon Textract 任務類型 – 在 SageMaker AI 主控台中,在 中記錄的程序中使用角色的 Amazon Resource Name (ARN)建立工作者任務範本。
-
在
RenderUiTemplate
操作的自訂任務類型中,使用在RoleArn
參數中角色的 ARN。
將 Amazon A2I 與 AWS KMS 加密儲存貯體搭配使用
如果您指定 AWS Key Management Service (AWS KMS) 客戶受管金鑰來加密 OutputConfig
中的輸出資料CreateFlowDefinition
,則必須將類似下列內容的 IAM 政策新增至該金鑰。本政策會提供您用來建立人工循環許可的 IAM 執行角色,以使用此金鑰來執行 "Action"
中列出的所有動作。若要進一步了解這些動作,請參閱《 AWS Key Management Service 開發人員指南》中的AWS KMS 許可。
要使用此政策,請將 "Principal"
中的 IAM 服務角色 ARN,取代為您建立人工審核工作流程 (流程定義) 時所使用的執行角色的 ARN。使用 CreateFlowDefinition
建立標籤工作時,這是您為 RoleArn
指定的 ARN。請注意,您無法在主控台中建立流程定義時提供 KmsKeyId
。
{
"Sid": "AllowUseOfKmsKey",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333
:role/service-role/example-role
"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
}