在AWS A2I与Textract分析文档Notebook中调用CreateFlowDefinition遇ClientError
问题排查:Amazon A2I CreateFlowDefinition ValidationException错误
代码片段
uniqueId = str(uuid.uuid4()) flowDefinitionName = f'fd-textract-{uniqueId}' flowDefinitionArn = create_flow_definition(flowDefinitionName)
错误信息
ClientError: 调用CreateFlowDefinition操作时发生(ValidationException)错误:检测到1个验证错误:'humanLoopConfig.workteamArn'处的值'arn:aws:sagemaker:ap-southeast-1:xxxxxxxxxxxx:flow-definition/a2idemotextract'未满足约束条件:成员必须符合正则表达式模式:arn:aws[a-z-]:sagemaker:[a-z0-9-]:[0-9]{12}:workteam/.*
错误原因
- 传入
humanLoopConfig.workteamArn的是流程定义(flow-definition)的ARN,而非要求的工作团队(workteam)的ARN。 - 正则规则明确要求ARN必须以
workteam/结尾,你传入的ARN结尾是flow-definition/a2idemotextract,完全不符合格式要求。
解决方法
- 获取正确的Workteam ARN:
- 若使用公开工作团队(如Amazon Mechanical Turk),ARN格式为
arn:aws:sagemaker:<你的区域>:<你的账号ID>:workteam/public-crowd/default - 若使用私有工作团队,登录SageMaker控制台,进入「Ground Truth」→「工作团队」,找到目标团队后复制其ARN
- 若使用公开工作团队(如Amazon Mechanical Turk),ARN格式为
- 修正
create_flow_definition函数:确保函数内部humanLoopConfig参数中配置的是正确的Workteam ARN,而非流程定义ARN - 验证格式:检查最终传入的ARN是否符合
arn:aws[a-z-]:sagemaker:[a-z0-9-]:[0-9]{12}:workteam/.*的规则,重点确认包含workteam/后缀,区域和账号ID无误
内容的提问来源于stack exchange,提问作者Jaden-Dz99
相关产品推荐
相关产品推荐

