在 Amazon Bedrock 中进行重排的权限 - Amazon Bedrock

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

在 Amazon Bedrock 中进行重排的权限

用户需要以下权限才能使用重排:

  • 对他们计划使用的重排模型的访问权限。有关更多信息,请参阅 访问 Amazon Bedrock 基础模型

  • 用于其角色的权限,如果用户计划在 Retrieve 工作流中使用重排,还包括针对与其角色有信任关系的 Amazon Bedrock 知识库服务角色的权限。

    提示

    要快速配置所需的权限,您可以执行以下操作:

    • AmazonBedrockFullAccessAWS托管策略附加到用户角色。有关将策略附加到 IAM 角色的更多信息,请参阅添加和删除 IAM 身份权限

    • 创建知识库时,使用 Amazon Bedrock 控制台创建 Amazon Bedrock 知识库服务角色。如果您已经拥有控制台为您创建的 Amazon Bedrock 知识库服务角色,那么在控制台中检索源时,可通过控制台更新该角色。

    重要

    当您通过 Amazon Bedrock 知识库服务角色在 Retrieve 工作流中使用重排时,请注意以下几点:

    • 如果您手动编辑 Amazon Bedrock 为您的知识库服务角色创建的 AWS Identity and Access Management (IAM) 策略,则在尝试更新中的权限时可能会遇到错误。AWS 管理控制台要解决此问题,请在 IAM 控制台中删除您手动创建的策略版本。然后,在 Amazon Bedrock 控制台中刷新重排器页面并重试。

    • 如果您使用自定义角色,Amazon Bedrock 将无法代表您更新知识库服务角色。请验证是否为服务角色正确配置了权限。

    有关使用案例及其所需权限的摘要,请参阅下表:

    使用案例 需要的用户权限 需要的 Amazon Bedrock 知识库服务角色权限
    独立使用重排
    • bedrock:Rerank

    • bedrock:InvokeModel,可选范围限于重新排名的模型

    不适用
    Retrieve 工作流中使用重排
    • bedrock:Retrieve

    • bedrock:Rerank

    • bedrock:InvokeModel,可选范围限于重新排名的模型

    RetrieveAndGenerate 工作流中使用重排
    • 基岩:RetrieveAndGenerate

    • bedrock:Rerank

    • bedrock:InvokeModel,可以选择将范围限定为重新排序的模型和用于生成响应的模型。

    不适用

有关可附加到 IAM 角色的权限策略示例,请展开与您的使用案例对应的部分:

要直接将重排与资源列表一起使用,用户角色需要使用 bedrock:Rerankbedrock:InvokeModel 操作的权限。同样,为了阻止使用重排模型,您必须拒绝这两个操作的权限。要允许用户角色独立使用重排模型,您可以将以下策略附加到该角色:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RerankSid", "Effect": "Allow", "Action": [ "bedrock:Rerank" ], "Resource": "*" }, { "Sid": "InvokeModelSid", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-1::foundation-model/model-id" ] } ] }

在上述策略中,对于 bedrock:InvokeModel 操作,您需要将权限范围限定为您希望允许该角色用来重排的模型。要允许访问所有模型,请在Resource字段中使用通配符 (*)。

要在从知识库中检索数据时使用重排,您必须设置以下权限:

对于用户角色

用户角色需要使用 bedrock:Retrieve 操作的权限。要允许用户角色从知识库中检索数据,您可以将以下策略附加到角色:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RetrieveSid", "Effect": "Allow", "Action": [ "bedrock:Retrieve" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/KnowledgeBaseId" ] } ] }

在上述策略中,对于 bedrock:Retrieve 操作,您可以将权限范围限定为要允许该角色从中检索信息的知识库。要允许访问所有知识库,可以在Resource字段中使用通配符 (*)。

对于服务角色

用户使用的 Amazon Bedrock 知识库服务角色需要使用 bedrock:Rerankbedrock:InvokeModel 操作的权限。如果您在配置知识库检索时选择了重排模型,则可以使用 Amazon Bedrock 控制台自动为您的服务角色配置权限。否则,要允许该服务角色在检索期间对源进行重排,您可以附加以下策略:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RerankSid", "Effect": "Allow", "Action": [ "bedrock:Rerank" ], "Resource": "*" }, { "Sid": "InvokeModelSid", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": "arn:aws:bedrock:us-east-1::foundation-model/RerankModelId" } ] }

在上述策略中,对于 bedrock:InvokeModel 操作,您需要将权限范围限定为您希望允许该角色用来重排的模型。要允许访问所有模型,您可以在 Resource 字段中使用通配符(*)。

要在从知识库检索数据然后根据检索到的结果生成响应时使用重排器模型,用户角色需要使用 bedrock:RetrieveAndGeneratebedrock:Rerankbedrock:InvokeModel 操作的权限。要允许在检索期间对源进行重排并允许根据结果生成响应,您可以将以下策略附加到用户角色:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RerankRetrieveAndGenerateSid", "Effect": "Allow", "Action": [ "bedrock:Rerank", "bedrock:RetrieveAndGenerate" ], "Resource": "*" }, { "Sid": "InvokeModelSid", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-1::foundation-model/RerankModelId}", "arn:aws:bedrock:us-east-1::foundation-model/GenerationModelId}" ] } ] }

在上述策略中,对于 bedrock:InvokeModel 操作,您可以将权限范围限定为您希望允许该角色用来重排的模型,以及您希望允许该角色用来生成响应的模型。要允许访问所有模型,可以在Resource字段中使用通配符 (*)。

要进一步限制权限,您可以忽略操作,或者指定用于筛选权限的资源和条件键。有关操作、资源和条件键的更多信息,请参阅《服务授权参考》中的以下主题: