View a markdown version of this page

全球跨区域推理 - Amazon Bedrock

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

全球跨区域推理

全球跨区域推理将跨区域推理扩展到地理边界之外,允许将推理请求路由到全球受支持的商业推理。 AWS 区域

全球跨区域推理的好处

借助 Anthropic Claude Sonnet 4.5 模型的全球跨区域推理,与地理跨区域推理配置文件相比,您可以获得以下优势:

  • Cost-efficiency—与跨区域地域推断相比,您在输入和输出代币定价上节省了约10%。Amazon Bedrock 根据您提出请求的 AWS 区域 来源(来源 AWS 区域)来计算价格。

  • 简化监控 — 使用全球跨区域推理时, CloudTrail 继续在源代码中记录日志条目 AWS 区域,从而简化可观察 CloudWatch 性和管理。尽管您的请求是在 AWS 区域 全球不同地区处理的,但您可以通过熟悉的 AWS 监控工具集中查看应用程序的性能和使用模式。

  • 全球请求路由 — 借助全球跨区域推理,您的请求可以在 AWS 区域 全球支持的商业平台上通过计算进行处理,而不是在单个地理区域内处理。

全球跨区域推理注意事项

请注意以下有关全球跨区域推理的信息:

  • 有关使用全球推理配置文件时的默认跨区域吞吐量配额,请参阅一般参考中 $ {Model} 的全球 Cross-region Cross-region 模型推理请求数和亚马逊基岩服务配额中 $ {Model} 值的每分钟全球模型推理令牌值。AWS

    您可以通过服务配额控制台或在源区域使用 AWS CLI 命令请求、查看和管理全球 Cross-Region推理配置文件的配额。

全球跨区域推理的 IAM 政策要求

要为您的用户启用全球跨区域推理,您必须对角色应用由三部分组成的 IAM 策略。以下是提供精细控制的 IAM 策略示例。您可以将示例<REQUESTING REGION>中的策略替换为 AWS 区域 正在运行的策略。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GrantGlobalCrisInferenceProfileRegionAccess", "Effect": "Allow", "Action": "bedrock:InvokeModel", "Resource": [ "arn:aws:bedrock:<REQUESTING REGION>:<ACCOUNT>:inference-profile/global.<MODEL NAME>" ], "Condition": { "StringEquals": { "aws:RequestedRegion": "<REQUESTING REGION>" } } }, { "Sid": "GrantGlobalCrisInferenceProfileInRegionModelAccess", "Effect": "Allow", "Action": "bedrock:InvokeModel", "Resource": [ "arn:aws:bedrock:<REQUESTING REGION>::foundation-model/<MODEL NAME>" ], "Condition": { "StringEquals": { "aws:RequestedRegion": "<REQUESTING REGION>", "bedrock:InferenceProfileArn": "arn:aws:bedrock:<REQUESTING REGION>:<ACCOUNT>:inference-profile/global.<MODEL NAME>" } } }, { "Sid": "GrantGlobalCrisInferenceProfileGlobalModelAccess", "Effect": "Allow", "Action": "bedrock:InvokeModel", "Resource": [ "arn:aws:bedrock:::foundation-model/<MODEL NAME>" ], "Condition": { "StringEquals": { "aws:RequestedRegion": "unspecified", "bedrock:InferenceProfileArn": "arn:aws:bedrock:<REQUESTING REGION>:<ACCOUNT>:inference-profile/global.<MODEL NAME>" } } } ] }

该政策的第一部分授予您访问请求 AWS 区域中的区域推断资料的权限。第二部分提供对区域FM资源的访问。第三部分授予对全球 FM 资源的访问权限,从而启用跨区域路由功能。

在实施这些政策时,请在您的 IAM 声明中包含所有三个资源的亚马逊资源名称 (ARN):

  • 区域推理概况 ARN 遵循该模式。arn:aws:bedrock:REGION:ACCOUNT:inference-profile/global.MODEL-NAME使用此 ARN 授予对源中全局推理配置文件的访问权限。 AWS 区域

  • 区域调频使用arn:aws:bedrock:REGION::foundation-model/MODEL-NAME. 使用此 ARN 授予对源 AWS 区域中的 FM 的访问权限。

  • 全球 FM 要求arn:aws:bedrock:::foundation-model/MODEL-NAME。使用此 ARN 授予对全球 AWS 区域不同地区的 FM 的访问权限。

全球 FM ARN 未指定 AWS 区域 或账户,这是有意为跨区域功能所必需的。

禁用全局跨区域推理

您可以从两种主要方法中选择针对特定 IAM 角色的全球 CRIS 实施拒绝策略,每种方法都有不同的用例和影响:

  • 删除 IAM 策略 — 第一种方法涉及从用户权限中删除三个必需的 IAM 策略中的一个或多个。由于全球 CRIS 需要所有三个策略才能运行,因此删除策略将导致访问被拒绝。

  • 实施拒绝策略 — 第二种方法是实施专门针对全球 CRIS 推理概况的明确拒绝策略。此方法可为您的安全意图提供清晰的文档,并确保即使有人在以后不小心添加了所需的允许策略,也将优先使用显式拒绝。拒绝策略应使用与模式匹配的StringEquals条件"aws:RequestedRegion": "unspecified"。该模式的目标是 Region-agnostic 全球跨区域推理所需的全球基础模型资源评估。

在实施拒绝策略时,了解全球CRIS会改变该aws:RequestedRegion领域的行为方式至关重要。 AWS 区域基于传统的拒绝策略,这些策略使用具有特定 AWS 区域 名称的StringEquals条件,例如"aws:RequestedRegion": "us-west-2"不针对 Region-agnostic 全球基金会模型资源评估。在此评估中,服务设置aws:RequestedRegion为实际目的地,unspecified而不是实际目的地 AWS 区域。因此,匹配的条件"aws:RequestedRegion": "unspecified"可能会拒绝全局CRIS。

全球跨区域推理的服务控制策略要求

对于全球跨区域推理,如果贵组织的安全策略使用 SCP 封锁未使用的区域,则您可以更新 Region-specific SCP 条件以允许访问,"aws:RequestedRegion": "unspecified"也可以添加推理配置文件例外情况,如以下说明所述。允许unspecified确保请求可以路由到所有支持的 AWS 商业区域。

注意

当请求使用全球跨区域推理配置文件时,Amazon Bedrock 会评估推理配置文件资源的授权、源区域的基础模型和 Region-agnostic 全球基础模型 ARN(即 AR arn:aws:bedrock:::foundation-model/... N)的授权。aws:RequestedRegion unspecifiedbedrock:InferenceProfileArn条件密钥是为基础模型资源评估填充的,但不是为推理配置文件资源评估填充的。

由于资源评估采用全球基础模型unspecified,因此您可以在 Region-deny SCP bedrock:InferenceProfileArn 中使用来豁免跨区域路由,而无需将其他服务和操作unspecified添加到区域许可列表中。此豁免无法绕过对始发呼叫的区域限制。推理配置文件资源评估以源区域为准,不包括bedrock:InferenceProfileArn。

以下示例显示了第一种方法。SCP 会阻止经批准的区域之外的所有 AWS API 调用,同时允许使用 Amazon Bedrock 全球跨区域推理调用"unspecified"作为全球路由的区域:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOutsideApprovedRegions", "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "StringNotEquals": { "aws:RequestedRegion": [ "us-east-1", "us-east-2", "us-west-2", "unspecified" ] } } } ] }

禁用全局跨区域推理

有数据驻留或合规要求的组织应评估全球跨区域推理是否符合其合规框架,因为请求可能会在其他支持的 AWS 商业区域处理。要明确禁用全球跨区域推理,请实施以下 SCP 策略:

{ "Effect": "Deny", "Action": "bedrock:*", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "unspecified" }, "ArnLike": { "bedrock:InferenceProfileArn": "arn:aws:bedrock:*:*:inference-profile/global.*" } } }

此 SCP 明确拒绝全球跨区域推理,因为 "aws:RequestedRegion" is "unspecified" 和"ArnLike"条件是针对 ARN 中带有global前缀的推理配置文件。

AWS 控制塔的实施

强烈建议不要手动编辑 AWS 控制塔管理的 SCP,因为这可能会导致偏移。相反,使用控制塔提供的机制来管理这些异常。核心原则包括扩展现有的区域拒绝控制或启用区域,然后应用自定义的有条件封锁政策。

有关使用 Control Tower 实现跨区域推理的详细分步指南,请参阅博客文章 “在多账户环境中启用 Amazon Bedrock 跨区域推理”。这包括扩展现有的区域拒绝 SCP、使用自定义 SCP 启用被拒绝区域,以及使用 AWS 控制塔自定义 (CfCT) 将自定义 SCP 作为基础设施即代码进行部署。

提高了全球跨区域推理的请求上限

使用全局 CRIS 推理配置文件时,您可以使用来自 20 多个支持来源的全局 CRIS。 AWS 区域这是一个全球限制。要查看、管理或增加全球跨区域推理配置文件的配额,请在请求的源中使用服务配额控制台或 AWS CLI。 AWS 区域

完成以下步骤以申请提高限额:

  1. 使用您的 AWS 账户登录服务配额控制台。

  2. 在导航窗格中,选择 AWS 服务。

  3. 从服务列表中,找到并选择亚马逊基岩。

  4. 在亚马逊 Bedrock 配额列表中,使用搜索筛选器查找特定的全球 CRIS 配额。例如:

    • Anthropic Claude Sonnet 4.5 V1 的每分钟全球跨区域模型推理令牌

  5. 选择要增加的配额。

  6. 选择请求增加账户配额。

  7. 输入所需的新配额值。

  8. 选择请求,提交您的请求。

在计算所需的配额增加量时,请考虑耗尽率。烧毁率是将输入和输出令牌转换为节流系统的代币配额使用量的速率。以下模型的输出代币消耗率为 5 倍(1 个输出代币消耗配额中的 5 个代币):

  • 人类克劳德作品 4

  • 人类学克劳德十四行诗 4.5

  • 人类学克劳德十四行诗 4

  • Anthropic Claude 3.7 十四行诗

对于所有其他模型,消耗比率为 1:1(在配额中,1 个输出词元消耗 1 个词元)。对于输入代币,代币与配额的比例为 1:1。每个请求的令牌总数的计算方法如下:

Input token count + Cache write input tokens + (Output token count x Burndown rate)

使用全球跨区域推理

要在 Anthropic 的 Claude Sonnet 4.5 中使用全球跨区域推理,开发人员必须完成以下关键步骤:

  • 使用全球推理配置文件 ID — 向 Amazon Bedrock 进行 API 调用时,请指定全球 Anthropic 的 Claude Sonnet 4.5 推理配置文件 ID (global.anthropic.claude-sonnet-4-5-20250929-v1:0),而不是特定模型 ID。 AWS 区域

  • 配置 IAM 权限 — 授予适当的 IAM 权限以访问潜在目的地中的推理配置文件和 FM。 AWS 区域

支持以下方面的全球跨区域推理:

  • On-demand 模型推断

  • 批量推理

  • 座席

  • 模型评测

  • 提示管理器

  • 迅速流动

注意

模型推断、批量推理、代理、 On-demand 模型评估、提示管理和提示流支持全局推理配置文件。

实现全球跨区域推理

使用 Anthropic 的 Claude Sonnet 4.5 实现全球跨区域推理非常简单,只需要对现有应用程序代码进行少量更改即可。以下是如何在 Python 中更新代码的示例:

import boto3 import json bedrock = boto3.client('bedrock-runtime', region_name='us-east-1') model_id = "global.anthropic.claude-sonnet-4-5-20250929-v1:0" response = bedrock.converse( messages=[{"role": "user", "content": [{"text": "Explain cloud computing in 2 sentences."}]}], modelId=model_id, ) print("Response:", response['output']['message']['content'][0]['text']) print("Token usage:", response['usage']) print("Total tokens:", response['usage']['totalTokens'])