AWS官方博客详解在澳大利亚区域通过全球跨区域推理调用Bedrock上的OpenAI GPT-5.6等模型,含提示缓存、Codex OIDC认证及CloudWatch监控配置。
Australian 团队现在可以通过 Amazon Bedrock 访问最新的 OpenAI 模型。Amazon Bedrock 提供 OpenAI GPT-5.6 Sol、Terra 和 Luna,支持从亚太地区(悉尼)和亚太地区(墨尔本)两个澳大利亚 AWS 区域进行全局跨区域推理。你的应用调用亚太地区(悉尼)或亚太地区(墨尔本)的 Amazon Bedrock Runtime 端点,Amazon Bedrock 会将请求路由到支持的商业 AWS 区域进行处理。这提供了更广泛的容量池访问能力,无需应用管理目标区域路由。GPT-5.6 Sol 适用于高要求的推理、编码和 Agent 工作负载。Terra 在日常生产使用中平衡性能与成本。Luna 为高吞吐量和延迟敏感型应用提供快速、经济高效的推理。三款模型均接受文本和图像输入、生成文本,并支持最高 100 万 token 的上下文窗口。通过 Amazon Bedrock Runtime 端点,你可以从亚太地区(悉尼)和亚太地区(墨尔本)使用 Responses API、Chat Completions API 和 Converse API 调用这些模型。
在本文中,我们展示如何使用提示缓存来优化推理成本、使用基于 OpenID Connect(OIDC)的身份验证设置 Codex,以及使用 Amazon CloudWatch 和 Coding Agent Insights 监控使用情况。
GPT-5.6 全局推理配置文件
下表列出了本文涵盖的三个全局配置文件 ID 和澳大利亚源区域。
配置文件成员资格和模型可用性可能会发生变化。部署前请查看跨区域推理支持情况。
在继续本节之前,你可以按照 GPT-5.6 博文设置以下先决条件:
在下一节中,我们将展示如何使用 AWS 命令行界面(AWS CLI)和 Amazon Bedrock 控制台验证活动的全局推理配置文件。
使用 AWS CLI。以下命令列出活动的 GPT-5.6 配置文件并检查悉尼区域的 Terra 配置文件。你也可以通过更改推理配置文件 ID 来对 Sol 或 Luna 使用这些命令。要从墨尔本区域执行相同的检查,请将 ap-southeast-2 替换为 ap-southeast-4。
aws bedrock list-inference-profiles \
--region ap-southeast-2 \
--type-equals SYSTEM_DEFINED \
--query "inferenceProfileSummaries[?contains(inferenceProfileId, 'openai.gpt-5.6')].[inferenceProfileId,status]" \
--output table
aws bedrock get-inference-profile \
--region ap-southeast-2 \
--inference-profile-identifier global.openai.gpt-5.6-terra
使用 Amazon Bedrock 控制台。打开 Amazon Bedrock 控制台,选择悉尼或墨尔本作为你的区域,然后在 Infer 下选择 Inference profiles,并筛选 Global OpenAI GPT-5.6 Terra。以下截图显示了来自悉尼源区域的活动配置文件。
Figure 1: The active GPT-5.6 Terra global inference profile in Sydney
通过 Amazon Bedrock Runtime 调用 GPT-5.6
GPT-5.6 在 Amazon Bedrock Runtime 端点上支持三条访问路径:OpenAI Responses API、OpenAI Chat Completions API 和 Amazon Bedrock Converse API。OpenAI 兼容的 API 通过此端点的 /openai/v1 路径调用,而非通过 AWS SDK 调用。端点接受 AWS Signature Version 4(SigV4)或 Amazon Bedrock 模型推理 API 密钥。以下示例使用 AWS Bedrock Token Generator for Python 从当前 AWS 凭据创建短期 Amazon Bedrock 模型推理 API 密钥,这样应用无需存储静态密钥。然后你可以使用此短期 API 密钥创建 OpenAI 客户端,以使用支持的 API。
OpenAI Responses API。对于已使用 OpenAI SDK 与 Responses API 的应用,你可以将客户端指向区域性 Amazon Bedrock Runtime 端点。
from aws_bedrock_token_generator import provide_token
from openai import OpenAI
region = "ap-southeast-2" # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
"In three short bullet points, explain how Availability Zones "
"help make an AWS application highly available."
)
openai_client = OpenAI(
base_url=f"https://bedrock-runtime.{region}.amazonaws.com/openai/v1",
api_key=provide_token(region=region),
)
responses_result = openai_client.responses.create(
model=model_id,
input=prompt,
max_output_tokens=300,
)
print(responses_result.output_text)
对于流式输出,设置 stream=True 并迭代响应事件。以下示例在文本到达时打印:
response_stream = openai_client.responses.create(
model=model_id,
input=prompt,
max_output_tokens=300,
stream=True,
)
for event in response_stream:
if event.type == "response.output_text.delta":
print(event.delta, end="", flush=True)
OpenAI Chat Completions API。如果你的应用已经使用 Chat Completions API,你也可以使用它。
from aws_bedrock_token_generator import provide_token
from openai import OpenAI
region = "ap-southeast-2" # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
"In three short bullet points, explain how Availability Zones "
"help make an AWS application highly available."
)
openai_client = OpenAI(
base_url=f"https://bedrock-runtime.{region}.amazonaws.com/openai/v1",
api_key=provide_token(region=region),
)
chat_result = openai_client.chat.completions.create(
model=model_id,
messages=[{"role": "user", "content": prompt}],
max_completion_tokens=300,
reasoning_effort="low",
)
print(chat_result.choices[0].message.content)
Amazon Bedrock Converse API。当你的应用通过 AWS SDK 调用 Amazon Bedrock 时使用 Converse API。Boto3 通过标准 AWS 凭据链解析凭据。
import boto3
region = "ap-southeast-2" # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
"In three short bullet points, explain how Availability Zones "
"help make an AWS application highly available."
)
messages = [
{
"role": "user",
"content": [{"text": prompt}],
}
]
bedrock_client = boto3.client("bedrock-runtime", region_name=region)
converse_result = bedrock_client.converse(
modelId=model_id,
messages=messages,
inferenceConfig={"maxTokens": 300},
)
print(converse_result["output"]["message"]["content"][0]["text"])
对于流式输出,请使用 converse_stream,并使用相同的区域和配置文件 ID,然后迭代返回的事件流。
stream_result = bedrock_client.converse_stream(
modelId=model_id,
messages=messages,
inferenceConfig={"maxTokens": 300},
)
for event in stream_result["stream"]:
if "contentBlockDelta" in event:
delta = event["contentBlockDelta"]["delta"]
if "text" in delta:
print(delta["text"], end="", flush=True)
print()
前述示例在亚太地区(悉尼)调用 Amazon Bedrock。要对亚太地区(墨尔本)运行相同示例,请将区域设置为 ap-southeast-4 并运行代码。
使用提示缓存
GPT-5.6 提示缓存可通过支持的 API 获取。GPT-5.6 在 Amazon Bedrock 上支持两种缓存模式。隐式缓存默认启用,无需更改代码;而使用显式缓存,你可以定义可重用前缀、缓存边界和缓存密钥。GPT-5.6 博文提供了说明提示缓存功能的示例。
在 Amazon Bedrock 上使用 GPT-5.6 设置 Codex
Codex 可以通过 Amazon Bedrock Runtime 使用相同的全局推理配置文件。安装最新的 Codex CLI 以使用原生 Amazon Bedrock Runtime 模型提供商。在此,我们使用来自亚太地区(悉尼)的 GPT-5.6 Sol 验证了 codex-cli 0.149.1 的以下配置。
npm install -g @openai/codex@alpha
codex --version
对于其身份提供商为 Okta、Auth0、Microsoft Entra ID、Amazon Cognito 或 AWS IAM Identity Center 的组织,AWS OIDC Auth Helper 仓库提供了一个示例凭据助手。首先,按照指南配置你的身份提供商、相应的 AWS 联合资源以及携带前述 Amazon Bedrock 权限的 IAM 角色。然后在 ~/.aws/config 中添加命名配置文件,这样助手就不会替换默认配置文件解析的凭据。将占位符替换为已安装助手的路径和 ~/.aws/config 文件中定义的配置文件名。
[profile <AWS_OIDC_PROFILE>]
credential_process = <ABSOLUTE_PATH_TO_CREDENTIAL_PROCESS> --profile <OIDC_HELPER_PROFILE>
region = ap-southeast-2
output = json
此联合助手将 OIDC 令牌交换为临时 AWS 凭据,Codex 通过标准 AWS 凭据链读取,无需进一步配置。接下来,创建或更新 ~/.codex/config.toml 并引用 AWS 配置文件,详见 Codex 配置参考以了解其他支持的设置:
model = "global.openai.gpt-5.6-sol"
model_provider = "amazon-bedrock-runtime"
model_reasoning_effort = "high"
[model_providers.amazon-bedrock-runtime.aws]
profile = "<AWS_OIDC_PROFILE>"
region = "ap-southeast-2"
如果助手没有有效的缓存会话,它会在浏览器中打开配置的登录页面。身份验证后,助手通过 credential_process 返回临时 AWS 凭据。请求使用 AWS SigV4 签名,因此推理路径中不涉及 API 密钥。当配置文件由 AWS IAM Identity Center 支持时,凭据已是短期凭据,会随单点登录会话轮换。要配合亚太地区(墨尔本)区域使用,请在 AWS 配置和 Codex 配置中将区域设置为 ap-southeast-4。
GPT-5.6 按需配额以每分钟请求数(RPM)和每分钟令牌数(TPM)计量。令牌消耗决定每个请求如何消耗 TPM。令牌消耗根据输入令牌、缓存写入输入令牌和输出令牌乘以模型的消耗率计算。例如,GPT-5.6 的输入令牌和缓存写入输入令牌按 1:1 计数,而每个输出令牌消耗配额中的 10 个令牌。请从你的应用使用的源区域(亚太地区(悉尼)区域(ap-southeast-2)或亚太地区(墨尔本)区域(ap-southeast-4))的 Service Quotas 控制台查看 GPT-5.6 配额。在生产上线前,尽早申请增加配额、监控配额利用率,并测试代表性提示、输出长度、流式行为、并发和峰值流量。参见 Amazon Bedrock 配额以了解当前值和令牌消耗率。
监控与日志
由于 GPT-5.6 请求使用 Amazon Bedrock Runtime API,通过全局推理配置文件发出的请求会像其他按需请求一样出现在模型调用日志中。启用日志记录后,记录将包括用于调用的模型或推理配置文件 ID 以及调用元数据。Codex 使用 OpenTelemetry(OTel)并通过 OTLP/HTTP 导出指标,详见设置 OpenTelemetry for OpenAI Codex 以了解更多详情。
CloudWatch Coding Agent Insights 为 Codex 遥测数据提供了一个仪表板,包括令牌使用量、API 请求、活跃用户、对话活动以及可选的组织维度。有两条路径可以在 CloudWatch 中为 Codex 配置 Coding Agent Insights,即使用 Bearer 令牌或企业级推广。
以下示例展示如何使用 Bearer 方式为 Codex 配置 Coding Agent Insights。首先,获取 CloudWatch 指标 API 密钥,然后将以下部分添加到 ~/.codex/config.toml。
[otel]
environment = "production"
[otel.metrics_exporter]
otlp-http = { endpoint = "https://monitoring.ap-southeast-2.amazonaws.com/v1/metrics", protocol = "binary", headers = { "Authorization" = "Bearer YOUR_CLOUDWATCH_METRICS_API_KEY" } }
将 YOUR_CLOUDWATCH_METRICS_API_KEY 替换为在 CloudWatch 中创建的密钥,然后启动 Codex。此 CloudWatch 指标 API 密钥可以授权导出到区域性 CloudWatch 端点。遥测数据到达后,在亚太地区(悉尼)区域打开 CloudWatch 控制台,选择 GenAI Observability、Coding Agent Insights,然后选择 Codex 选项卡。你将看到 Coding Agent Insights 仪表板显示 Codex 令牌使用量、请求活动、缓存命中率等。
Figure 2: Codex token and request activity in CloudWatch Coding Agent Insights in Asia Pacific (Sydney)
要填充 Organization、Environment、Department、Cost Center、Location、Team 和 User 筛选器,请通过 OTEL_RESOURCE_ATTRIBUTES 提供相应的值。AWS 将 CloudWatch 指标 API 密钥归类为长期凭据,仅在其不可行的地方推荐使用短期 AWS 凭据。将 config.toml 视为机密并限制其文件权限。
对于通过企业单点登录联合开发者身份的组织,我们推荐使用企业级推广方式,本地收集器使用开发者的联合凭据通过 SigV4 签名导出,无需分发令牌。
在本文中,我们展示了如何从亚太地区(悉尼)和亚太地区(墨尔本)区域发现并调用 GPT-5.6 Sol、Terra 和 Luna 全局推理配置文件。我们还介绍了如何配置 Codex 使用 Amazon Bedrock Runtime 以及将 Codex 遥测数据导出到 CloudWatch Coding Agent Insights。
要开始使用,请按照本文中的示例在你的账户中测试 GPT-5.6 模型。如果你使用 Codex,可以配置 Amazon Bedrock Runtime 提供商并在 AWS Console 中启用 CloudWatch Coding Agent Insights 以监控你的 Codex 消耗量。定价详情请参阅 Amazon Bedrock pricing。