本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为批量推理设置权限
注意
批量推理目前为预览版,可能会发生变化。批量推理目前只能通过 API 使用。通过以下 SDK 访问批处理 API。
-
AWS 适用于 Java 的 SDK
。
我们建议您创建一个虚拟环境来使用 SDK。由于最新的软件开发工具包中没有批量推理 API,因此我们建议您在安装带有批量推理 API 的版本之前,先从虚拟环境中卸载最新版本的 SDK。有关指导性示例,请参阅代码示例。
要为批量推理设置角色,请按照创建角色向 AWS 服务委派权限中的步骤创建 IAM 角色。附加以下策略到角色:
-
信任策略
-
对包含批量推理作业输入数据以及向其写入输出数据的 Amazon S3 存储桶的访问权限。
-
以下策略允许 Amazon Bedrock 担任此角色并执行批量推理作业。下面所示为您可以使用的示例策略。您可以使用一个或多个全局条件上下文键来限制权限的范围。有关更多信息,请参阅 AWS 全局条件上下文键。将
aws:SourceAccount
值设置为您的账户 ID。使用ArnEquals
或ArnLike
条件限制范围。注意
出于安全考虑,最佳做法是在创建完特定的批量推理作业 ID 后将
*
替换为该 ID。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
account-id
" }, "ArnEquals": { "aws:SourceArn": "arn:aws:bedrock:region
:account-id
:model-invocation-job/*
" } } } ] } -
附上以下策略,以允许 Amazon Bedrock 访问包含批量推理作业输入数据的 S3 存储桶(替换
my_input_bucket
)以及向其写入输出数据的 S3 存储桶(替换my_output_bucket
)。将account-id
替换为向其提供 S3 存储桶访问权限的用户的账户 ID。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
my_input_bucket
", "arn:aws:s3:::my_input_bucket/*
", "arn:aws:s3:::my_output_bucket
", "arn:aws:s3:::my_output_bucket/*
" ], "Condition": { "StringEquals": { "aws:ResourceAccount": [ "account-id
" ] } } } ] }