为批量推理创建自定义服务角色 - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为批量推理创建自定义服务角色

要为代理使用自定义服务角色而不是 Amazon Bedrock 在中自动为您创建的IAM角色 AWS Management Console,请按照创建角色向 AWS 服务委派权限中的步骤创建一个角色并附加以下权限

信任关系

以下信任策略允许 Amazon Bedrock 担任此角色并提交和管理批量推理作业。根据需要values更换。该策略在 Condition 字段中包含了可选的条件键(参阅 Amazon Bedrock 的条件键AWS 全局条件上下文键),建议您将其作为最佳安全实践使用。

注意

出于安全考虑,最佳做法是在创建完特定的批量推理作业IDs后,将其替换为特定的批量推理作业。*

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "${AccountId}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:bedrock:region:account-id:model-invocation-job/*" } } } ] }

批量推理服务角色的基于身份的权限。

以下主题描述并提供了权限策略示例,根据您的用例,您可能需要将这些策略附加到自定义批量推理服务角色。

(必需)访问 Amazon S3 中输入和输出数据的权限

要允许服务角色访问包含您的输入数据的 Amazon S3 存储桶以及要向其写入输出数据的存储桶,请将以下策略附加到该服务角色。必要values时更换。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3Access", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${InputBucket}", "arn:aws:s3:::${InputBucket}/*", "arn:aws:s3:::${OutputBucket}", "arn:aws:s3:::${OutputBucket}/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": [ "${AccountId}" ] } } } ] }

(可选)使用推理配置文件运行批量推理的权限

要使用推理配置文件运行批量推理,除了推理配置文件中每个区域的模型外 AWS 区域,服务角色还必须有权在中调用推理配置文件。

要获得使用跨区域(系统定义的)推理配置文件进行调用的权限,请使用以下策略作为要附加到您的服务角色的权限策略的模板:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CrossRegionInference", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${Region}:${AccountId}:inference-profile/${InferenceProfileId}", "arn:aws:bedrock:${Region1}::foundation-model/${ModelId}", "arn:aws:bedrock:${Region2}::foundation-model/${ModelId}", ... ] } ] }

要使用应用程序推理配置文件调用的权限,请使用以下策略作为权限策略的模板,以附加到您的服务角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ApplicationInferenceProfile", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${Region}:${AccountId}:application-inference-profile/${InferenceProfileId}", "arn:aws:bedrock:${Region1}::foundation-model/${ModelId}", "arn:aws:bedrock:${Region2}::foundation-model/${ModelId}", ... ] } ] }