为批量推理设置权限 - Amazon Bedrock

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

为批量推理设置权限

注意

批量推理目前为预览版,可能会发生变化。批量推理目前只能通过 API 使用。通过以下 SDK 访问批处理 API。

我们建议您创建一个虚拟环境来使用 SDK。由于最新的软件开发工具包中没有批量推理 API,因此我们建议您在安装带有批量推理 API 的版本之前,先从虚拟环境中卸载最新版本的 SDK。有关指导性示例,请参阅代码示例

要为批量推理设置角色,请按照创建角色向 AWS 服务委派权限中的步骤创建 IAM 角色。附加以下策略到角色:

  • 信任策略

  • 对包含批量推理作业输入数据以及向其写入输出数据的 Amazon S3 存储桶的访问权限。

  1. 以下策略允许 Amazon Bedrock 担任此角色并执行批量推理作业。下面所示为您可以使用的示例策略。您可以使用一个或多个全局条件上下文键来限制权限的范围。有关更多信息,请参阅 AWS 全局条件上下文键。将 aws:SourceAccount 值设置为您的账户 ID。使用 ArnEqualsArnLike 条件限制范围。

    注意

    出于安全考虑,最佳做法是在创建完特定的批量推理作业 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/*" } } } ] }
  2. 附上以下策略,以允许 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" ] } } } ] }