AWS Claude 报 400 怎么办:按报错原文逐条排查
400 只说明请求被拒,改法看报错原文:Extra inputs 多是网关丢了 Beta 请求头,thinking 报错要升级 Claude Code,数据保留报错要找管理员。
文章目录

在 AWS 上用 Claude 拿到 400,先别急着换密钥或换渠道。400 只表示请求被拒绝,真正决定怎么改的是后面那行报错原文:Extra inputs are not permitted 多半是网关或中转丢了 anthropic-beta 请求头;"thinking.type.enabled" is not supported 是 Claude Code 版本太旧;Input is too long for requested model. 是上下文超了;data retention mode 'default' 则是账户设置问题,代码怎么改都没用,要找 AWS 管理员。
排查前再分清一件事:发请求的是 Claude Code,还是你自己写的代码。Claude Code 在 Bedrock 上只走 Invoke API,不支持 Converse API,所以针对 Converse 请求体的改法对 Claude Code 用户不适用。
文中的版本号和默认模型截至 2026 年 9 月 24 日,来自 Claude Code 错误参考 与 AWS 官方文档;代码和命令按这些文档整理,没有在 AWS 账号上实际运行,模型 ID、Region 请换成你账户里可用的值。
按报错原文直接查
把终端或日志里的完整报错复制出来,找下表第一列的字样。同一条报错里出现多个关键字时,以最具体的那个为准。
| 报错里出现的字样 | 多半是什么问题 | 先做什么 |
|---|---|---|
Extra inputs are not permitted、Unexpected value(s) for the anthropic-beta header | Claude Code 和 API 之间的网关或中转丢掉了 anthropic-beta 请求头,Beta 字段却还留在请求体里 | 让网关转发该请求头;做不到再设 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 |
"thinking.type.enabled" is not supported for this model | Claude Code 版本低于所选模型要求的最低版本 | claude update 后重启 |
max_tokens must be greater than thinking.budget_tokens | MAX_THINKING_TOKENS 超过了输出上限 | 调低它,或调高 CLAUDE_CODE_MAX_OUTPUT_TOKENS |
Input is too long for requested model. | 输入 token 加上请求的输出额度超出模型上限 | /compact、/clear,Claude Code 升到 v2.1.217 以上 |
tool use concurrency issues、orphaned tool_result、duplicate tool_use ID | 对话历史里的工具调用和思考块顺序错乱 | /rewind 或连按两次 Esc |
on-demand throughput isn't supported | 用了不支持按需调用的模型 ID | 改用推理配置文件 ID |
The provided model identifier is invalid | 模型 ID 写错、当前 Region 没有这个模型,或经销商账户未加入 Anthropic 计划 | 核对 ID 与 Region,都没问题再问经销商 |
| 在 Mantle 上报 400 且点名了模型 ID | 这个模型不在 Mantle 上提供 | 换成 Mantle 格式 ID,或同时启用 Invoke API |
data retention mode 'default' is not available for this model | Fable 5 / Fable 5.1 要求账户数据保留模式至少为 aws_review | 交给 AWS 管理员决定 |
Access to Anthropic models is not allowed from unsupported countries, regions, or territories | 账户税务或账单地址、调用方位置不在 Anthropic 支持范围 | 换 Region 不管用,要改账户信息 |
Your AWS account is not authorized to invoke this API operation、NotAuthorized | IAM 策略或 SCP 没有放行 | 找管理员补权限 |
IncompleteSignature、RequestExpired | 请求签名不合规,或本机时钟偏差太大 | 升级 SDK、核对密钥、同步系统时间 |
Malformed input request: extraneous key [...] is not permitted | 请求体里有该模型或该接口不认的字段 | 按所用接口核对请求体 |
is not supported on this API. Please use the Messages API instead. | 还在用旧的文本补全格式 | 改成 messages 格式 |
ServiceQuotaExceededException | 超出账户的服务配额 | 可以稍后重发;长期要申请提高配额 |
如果状态码根本不是 400,就不属于这张表:Claude Code 把 403 显示为 AWS 认证失败,可能是令牌过期,也可能是缺 IAM 权限或模型没在账户和 Region 里开通;404 的 FTUFormNotFilled 表示还没提交 Anthropic 用例表单;429 的 ThrottlingException 是限流,处理思路见 Claude Rate Exceeded 错误:先确认限制归属再重试;529 的 overloaded_error 是服务端过载。
Claude Code 连 AWS 报 400
Claude Code 用户大致有三种接法:设 CLAUDE_CODE_USE_BEDROCK=1 直连 Bedrock,设 CLAUDE_CODE_USE_MANTLE=1 走 Mantle 端点,或者把 ANTHROPIC_BASE_URL 指向某个第三方的“AWS Claude”通道。中文语境里说的“AWS Claude”经常指最后这种中转,它背后接的是 Bedrock,但请求要先经过对方的网关,两者的出错位置不一样。
不确定自己走的是哪条,在 Claude Code 里运行 /status:直连会显示 Bedrock 与解析出的 Region,Mantle 会显示 Amazon Bedrock (Mantle)。设置方法可以参考 Claude Code API 配置:先选路由,再设置 Key、模型和网关。
Extra inputs are not permitted:先看有没有经过网关
这条报错的典型形态是:
API Error: 400 ... Extra inputs are not permitted ... context_management
API Error: 400 ... Unexpected value(s) for the `anthropic-beta` headerClaude Code 会同时发出 context_management、effort 这类 Beta 字段和一个启用它们的 anthropic-beta 请求头。网关转发了请求体却丢掉了请求头,上游就会把这些字段当成多余的输入拒掉。
官方给的修法有先后顺序:
- 能改网关配置的,让它原样转发
anthropic-beta请求头。这是根治办法,Claude Code 的功能也不受影响。 - 改不了网关(例如用的是别人的中转),在启动 Claude Code 之前设置
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1。
临时排查可以在同一个终端里执行:
export CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1
claude长期使用就写进 ~/.claude/settings.json 的 env,和已有的地址、密钥配置合并在一起,不要覆盖原来的内容:
{
"env": {
"ANTHROPIC_BASE_URL": "你的网关地址",
"ANTHROPIC_AUTH_TOKEN": "你的密钥",
"CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1"
}
}变量必须在进程启动前就存在,已经在运行的 Claude Code 要退出重开才会生效。
这个开关的作用范围很窄。它会去掉 Anthropic 专用的 anthropic-beta 请求头,以及 defer_loading、eager_input_streaming 这类 Beta 工具字段,保留 name、description、input_schema、cache_control 等标准字段。代价是 MCP 工具搜索被关闭,所有 MCP 工具定义在一开始就全部载入,你在 ENABLE_TOOL_SEARCH 里设的值也会被忽略(v2.1.227 起可以通过托管设置保留工具搜索)。连接的 MCP 服务器多时,上下文会被工具定义挤占,更容易撞上后面的 Input is too long,可以参考 Claude Code MCP 上下文爆掉:为什么服务器太多会吃窗口,怎么筛选和压缩 精简服务器。
它修不了模型 ID、IAM 权限、配额、数据保留这些问题。设了开关还是 400,就回到上面的表,看报错原文换成了哪一条。
直连 Bedrock、中间没有任何网关时,也有人遇到过 output_config.effort: Extra inputs are not permitted:GitHub 上 claude-code-action 的一个 issue(2026 年 3 月提交,至今未关闭)报告,Bedrock 加 Sonnet 4.5 的应用推理配置文件时出现这条报错,评论里有人换成 Sonnet 4.6 或 Opus 4.6 后恢复。这只是用户报告,但说明同一个字段也可能是模型或端点本身不接受,不一定每次都是请求头被丢。
如果你用的是老张 API 的 AWS Claude 通道,它的帮助文档给出的就是上面第 2 种做法,只适用于该通道;同一页面也写明 Claude 模型目前因资源不足暂时下线,恢复时间以其公告为准。
说明:laozhang.ai 是我们自己的服务,其价格是平台报价,不是独立比较的结论。
thinking 相关的两种 400
第一种:
API Error: 400 ... "thinking.type.enabled" is not supported for this model. Use "thinking.type.adaptive" and "output_config.effort" to control thinking behavior.这表示 Claude Code 版本低于所选模型的最低要求,旧版本发出的思考参数新模型已经不接受。运行 claude update 后重启即可。各模型要求的最低版本如下(截至 2026 年 9 月 24 日):
| 模型 | Claude Code 最低版本 |
|---|---|
| Opus 4.7 | v2.1.111 |
| Opus 4.8 | v2.1.154 |
| Sonnet 5 | v2.1.197 |
| Opus 5 | v2.1.219 |
| Opus 5.5 | v2.1.280 |
暂时没法升级,就用 /model 切到 Opus 4.6 或 Sonnet 4.6。用 Agent SDK 时升级的是 SDK 包本身,比如 Opus 5.5 需要 TypeScript SDK v0.3.280 以上。
AWS 这边的规则与之对应:Claude Fable 5.1、Mythos 5.1、Mythos 5 和 Fable 5 不支持延伸思考,请求里带 thinking.type: "enabled" 或 "disabled" 都会返回 400,要改成 {"type": "adaptive"} 配合 output_config.effort,或者干脆不传 thinking。
第二种:
API Error: 400 ... max_tokens must be greater than thinking.budget_tokensClaude Code 在 Anthropic 官方 API 上会自动调整这两个值,这条报错主要出现在 Amazon Bedrock 和 Google Cloud 上,原因是 MAX_THINKING_TOKENS 设得比平台的输出上限还高,或者计划模式把思考预算调高了。改法二选一:调低 MAX_THINKING_TOKENS,或者把 CLAUDE_CODE_MAX_OUTPUT_TOKENS 调到高于思考预算。
在 Bedrock 这类第三方平台上,MAX_THINKING_TOKENS=0 的效果是不发送 thinking 参数;Opus 5.5 和 Fable 系列本身无法关闭思考,设 0 也关不掉。
Input is too long for requested model.
这是 Bedrock 对上下文超限的说法,属于 ValidationException。AWS 计算上限时把输入 token 和请求的输出额度加在一起,所以输入还没到窗口上限、但 max_tokens 设得很大时也会触发。
Claude Code 从 v2.1.217 起把这句话和 Prompt is too long 同样处理。更早的版本不认识 Bedrock 的这个说法,自动压缩不会触发,手动 /compact 也会报同样的错,所以先确认版本。之后按顺序处理:
/compact压缩当前对话,或/clear开新对话;/context看窗口被什么占满;- 用
/mcp disable <name>关掉暂时用不到的 MCP 服务器; - 精简过大的
CLAUDE.md。
前面提到的 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 会让 MCP 工具全部预载,两者同时出现时,先精简 MCP 服务器。
工具调用或思考块错乱
下面这些报错说的是同一件事:历史里的 tool_use、tool_result 和 thinking 块顺序对不上了,通常发生在工具调用被中断或某一轮在流式输出中途被改动之后。
API Error: 400 due to tool use concurrency issues. Run /rewind to recover the conversation.
API Error: 400 orphaned tool_result in conversation history. Run /rewind to recover the conversation.
API Error: 400 duplicate tool_use ID in conversation history. Run /rewind to recover the conversation.
API Error: 400 ... unexpected `tool_use_id` found in `tool_result` blocks
API Error: 400 ... thinking blocks ... cannot be modified运行 /rewind 或连按两次 Esc,退回出错那一轮之前的检查点再继续。用 Opus 4.7 或 Opus 4.8 时先运行 claude update:v2.1.156 之前的版本在正常调用工具时也可能触发这个错误,而且 /rewind 清不掉。这类错误跟 Bedrock 无关,换任何平台都一样。
模型 ID、前缀与 Mantle
Claude Code 在 Bedrock 的 Invoke API 上会把内置默认模型解析成跨区域推理配置文件 ID,前缀按 Region 选:
| AWS Region | 优先使用的前缀 |
|---|---|
us-gov-* | us-gov. |
us-* | us. |
eu-* | eu. |
ap-* | apac. |
| 其他 | global. |
想换前缀可以设 ANTHROPIC_BEDROCK_REGION_PREFIX(需 v2.1.224 以上,可选值 us、eu、apac、jp、au、global),但它只是偏好,不保证可用。关键在于 Claude Code 能不能列出你账户里的推理配置文件:能列出时,它会找有对应前缀的配置文件,找不到再退而求其次;列不出时,它直接套用前缀、不做检查,账户里没开通这组前缀的配置文件,请求就会 400。所以不要看到教程写 us. 或 global. 就照抄,先查自己的 Region 实际有什么:
aws bedrock list-inference-profiles --region us-east-1给 IAM 策略加上 bedrock:GetInferenceProfile,Claude Code 才能解析应用推理配置文件的 ARN。你自己配置的推理配置文件 ID 和 ARN,Claude Code 不会改写。
另外几种与模型 ID 有关的 400:
on-demand throughput isn't supported:把模型写成推理配置文件 ID,而不是裸的基础模型 ID。- 默认模型没开通:不固定版本时,截至 2026 年 9 月 24 日,Claude Code 在 Bedrock 上的主模型默认是 Opus 5.5(
us-*下为us.anthropic.claude-opus-5-5),小模型默认是 Sonnet 4.5;v2.1.280 之前主模型默认是 Opus 5。默认值可能指向账户里还没开通的模型,Claude Code 启动时会为本次会话回退到别的模型,但团队部署建议用ANTHROPIC_DEFAULT_OPUS_MODEL、ANTHROPIC_DEFAULT_SONNET_MODEL、ANTHROPIC_DEFAULT_HAIKU_MODEL或ANTHROPIC_MODEL固定版本,例如us.anthropic.claude-sonnet-4-6。 - Mantle:模型 ID 用
anthropic.开头、不带版本后缀的写法,比如anthropic.claude-sonnet-5。报 400 且点名了模型 ID,说明这个模型不在 Mantle 上提供,us.anthropic.claude-sonnet-4-6这类推理配置文件 ID 在 Mantle 上用不了。可以换成 Mantle 格式的 ID,或者同时设置CLAUDE_CODE_USE_BEDROCK和CLAUDE_CODE_USE_MANTLE,让 Claude Code 按 ID 格式把请求分到两个端点。凭证有效却收到 403,则是账户没有获得该模型的访问权限,要联系 AWS 客户团队。
自己写代码调 Bedrock 报 400
自己写代码时,最常见的 400 来源是把一种接口的请求体套到了另一种接口上。Bedrock 上调用 Claude 有三种形状,字段名看着像,位置和取值都不同。

几处最容易写错的地方:
- InvokeModel 请求体里的
anthropic_version固定写bedrock-2023-05-31。2023-06-01只用在 Messages API 的anthropic-version请求头里,写进 InvokeModel 请求体就是错的。 - 模型不写在 InvokeModel 的请求体里,而是放在调用参数
modelId中;Messages API 则相反,model写在请求体里。 - Converse 的
messages[].content是[{"text": "..."}]这样的数组,最大输出写在inferenceConfig.maxTokens,Claude 专属参数放进additionalModelRequestFields。用 Prompt management 的 ARN 调用时,不能再传additionalModelRequestFields、inferenceConfig、system、toolConfig。 - system 提示在 InvokeModel 里是单独的
system字段,不放进messages;在 Converse 里是顶层的system数组。
下面是三种接口的最小请求,模型 ID 和 Region 都用环境变量占位。
InvokeModel(boto3):
import json
import os
import boto3
client = boto3.client("bedrock-runtime", region_name=os.environ["AWS_REGION"])
resp = client.invoke_model(
modelId=os.environ["BEDROCK_MODEL_ID"], # 例如推理配置文件 ID
body=json.dumps({
"anthropic_version": "bedrock-2023-05-31",
"max_tokens": 256,
"messages": [{"role": "user", "content": "只回复 OK"}],
}),
)
print(json.loads(resp["body"].read())["content"][0]["text"])Converse(boto3):
resp = client.converse(
modelId=os.environ["BEDROCK_MODEL_ID"],
messages=[{"role": "user", "content": [{"text": "只回复 OK"}]}],
inferenceConfig={"maxTokens": 256},
)
print(resp["output"]["message"]["content"][0]["text"])Bedrock 上的 Anthropic Messages API 有两个端点:bedrock-runtime 的 https://bedrock-runtime.{region}.amazonaws.com/anthropic(AWS 推荐新应用用这个,Anthropic SDK 指向它时会自动加版本请求头),以及 bedrock-mantle 的 https://bedrock-mantle.{region}.api.aws/anthropic/v1/messages。直接用 curl 调 Mantle 时要自己带上 anthropic-version: 2023-06-01:
curl -X POST "https://bedrock-mantle.${AWS_REGION}.api.aws/anthropic/v1/messages" \
-H "x-api-key: ${BEDROCK_API_KEY}" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic.claude-sonnet-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "只回复 OK"}]
}'ValidationException 各报错原文的含义
AWS 知识中心列出的 ValidationException 报错,在自己写代码时最常见的是这几条:
Malformed input request: extraneous key [...] is not permitted:方括号里的字段该模型不认。常见于把别家模型的参数、Converse 的字段或 Beta 参数塞进了 InvokeModel 请求体。The provided model identifier is invalid:ID 拼错,或该 Region 没有这个模型。ID 和 Region 都对还报这条,而你的 AWS 账户是通过 Marketplace 合作伙伴或经销商开的,就可能是经销商没有加入 Anthropic 合作计划或 Amazon Bedrock 授权经销商计划。这是账户层面的前提条件,改代码、改 IAM 或申请模型访问都解决不了,只能由经销商完成加入。is not supported on this API. Please use the Messages API instead.:还在用旧的prompt文本补全格式,改成messages数组。Guardrail was enabled but input is in incorrect format:guardrailIdentifier要填一个有效的护栏 ID,guardrailVersion只填版本号。Input is too long for requested model.:输入 token 加max_tokens超过模型上限,缩短输入或调小max_tokens。- 用延伸思考时,
budget_tokens必须小于max_tokens,最小 1,024(带工具的交错思考 Beta 除外);Fable 和 Mythos 系列只能用{"type": "adaptive"}或不传thinking。
同样是 HTTP 400,还可能是签名和权限问题,与请求体无关:IncompleteSignature 表示签名不符合 AWS 规范,检查 SDK 版本和访问密钥;RequestExpired 表示请求时间戳过期,同步系统时钟;NotAuthorized 和 Your AWS account is not authorized to invoke this API operation 表示 IAM 策略或组织的 SCP 没放行。
其他模型上常见的 400 也可能出现在 Bedrock 上,比如 Opus 4.7 起拒收 top_p、assistant 预填充被拒、消息角色不被接受,分别见 Claude Code 报 top_p deprecated?别先换渠道,先按 Opus 4.7 的新请求规则排、Claude 预填充(prefill)400 报错:4.6 起模型全拒收,按用途替换 和 修复 API 400 角色不受支持错误。
400 能不能重试
大多数 400 原样重发只会得到同样的结果,请求体、模型 ID、账户设置不改,重试多少次都一样。例外是 ServiceQuotaExceededException:AWS 把它定为 400,并注明可以稍后重新提交,适合退避后重试;长期超额就去服务配额页面申请提高。限流是 429 的 ThrottlingException,ModelNotReadyException 由 SDK 自动重试最多 5 次。什么情况该重试、什么情况该换备用模型或直接停下,可以参考 大模型 API 该重试还是切备用模型?先过这五道门。
账户层面的 400:改代码没用,要找管理员
有几类 400 与客户端、请求体都无关,开发者自己能做的只有确认原因,然后交给 AWS 管理员或合规负责人。
数据保留模式不满足模型要求
在 Claude Code 里选了 Fable 5 后每条消息都报:
API Error: 400 data retention mode 'default' is not available for this model这条报错在 GitHub 上有公开报告(模型 global.anthropic.claude-fable-5,Claude Code 2.1.170)。按 AWS 的数据保留文档,Claude Fable 5 和 Fable 5.1 要求账户的数据保留模式至少为 aws_review;有效模式是 none 或 default 时,这两个模型在 bedrock-runtime 上返回 ValidationException,在 bedrock-mantle 上显示为不可用,原因写作 This model is not available under data retention mode 'default'.。Fable 5 之前发布的 Claude 模型不受这项规则影响。
修改前需要知道这几件事:
- 模式从低到高是
none < default < aws_review < provider_data_share。aws_review表示 AWS 在自己的边界内保留提示和输出最多 30 天,并可能做人工审查,内容不会共享给模型提供方。provider_data_share是旧模式,目前行为与aws_review相同,新配置应该用aws_review。 - 在 bedrock-runtime 上,这是按 Region 生效的账户级设置,没有项目级范围。发布时没有控制台界面,要通过控制面 API 修改,对应的 IAM 操作是
bedrock:PutAccountDataRetention。 - 组织可能用 SCP 禁止把模式设成
none以外的值。 - 设成
aws_review不会让所有模型都开始保留数据。每个模型自己声明允许的模式,Opus 4.8 这类允许none的模型仍然不保留数据。
先查当前设置(控制面 API,需要 bedrock:GetAccountDataRetention 权限):
curl "https://bedrock.${AWS_REGION}.amazonaws.com/data-retention" \
-H "Authorization: Bearer ${AWS_BEARER_TOKEN_BEDROCK}"改成 aws_review 用同一路径的 PUT,请求体为 {"mode": "aws_review"}。这会影响该 Region 整个账户的调用,是否修改应由管理员和合规负责人决定。如果不能改,就在 Claude Code 里用 /model 换一个不要求人工审查的模型。GitHub 评论里有人说设成 provider_data_share 后别的模型开始返回 500,这是单个未经证实的报告,与 AWS 当前文档的描述也对不上。
地区、经销商与权限
Access to Anthropic models is not allowed from unsupported countries, regions, or territories:AWS 判断时看的不只是调用方所在位置,还包括账户的税务地址和账单地址。换一个 AWS Region 解决不了,要改的是账户信息,或者换一个符合条件的账户。- 通过经销商开的账户报
The provided model identifier is invalid,而 ID 和 Region 都对:见上一节,只能由经销商完成 Anthropic 计划的加入。 NotAuthorized或Your AWS account is not authorized to invoke this API operation:让管理员检查 IAM 用户或角色的策略、信任关系,以及组织层面的 SCP。
用最小请求确认问题出在哪
报错原文看不出头绪,或者改完仍然报错,就把请求缩到最小再逐项加回来。

- 最小请求也失败:问题不在对话内容,重点查完整报错、模型 ID 与 Region、IAM 权限和账户条件。自己写代码的,用上一节的最小请求;用 Claude Code 的,新开一个会话、只发一句短消息。
- 最小请求成功:按历史消息、工具、思考参数的顺序一项一项加回去,每次只加一项,哪一步开始报错,就查新加的那部分。
改完之后这样确认是否真的修好:
- Claude Code:改了环境变量或
settings.json后,退出并重新启动,先用/status确认提供方、Region 和模型是你预期的值,再重复刚才出错的那个操作。上下文类问题再用/context看一眼占用。 - 自己写的代码:用同一个模型 ID、同一个 Region 先跑通最小请求,再恢复原来的完整请求。
- 账户设置类(数据保留、经销商、地区):管理员改完后,用同一个账户和 Region 重新调用;数据保留可以先用上面的
GET确认模式已经变成aws_review。
常见问题
设置了 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1,还是报 400?
先确认变量在启动前就已生效:Claude Code 要完全退出后重新打开,写在 settings.json 的要放进 env。生效后仍然 400,说明原因不是 Beta 字段,这个开关只处理请求头和 Beta 字段的兼容问题,管不到模型 ID、权限、配额或数据保留。看新的报错原文,回到开头的对照表。
bedrock-2023-05-31 应该写在哪里?
只写在 InvokeModel(以及 InvokeModelWithResponseStream)请求体的 anthropic_version 字段。Converse 不需要它;Mantle 上的 Messages API 用的是 anthropic-version: 2023-06-01 请求头;用 Anthropic SDK 调 bedrock-runtime 的 /anthropic 路径时,SDK 会自动加上。
模型 ID 要不要加 us. 或 global. 前缀?
看接口和账户。Invoke API 上用推理配置文件 ID,前缀要对应账户里实际开通的配置文件,用 aws bedrock list-inference-profiles --region <你的 Region> 查;Mantle 上不加前缀,写成 anthropic.claude-sonnet-5 这种形式。照抄别人的前缀是 400 的常见来源。
用 Claude Code 连 Bedrock,要不要按 Converse 的格式改请求?
不用。Claude Code 在 Bedrock 上只走 Invoke API,不支持 Converse,请求体也由 Claude Code 自己组装。你能改的是版本、环境变量、模型 ID 和会话本身,对应的做法都在上面 Claude Code 那一节。
参考来源1
本文引用的外部页面,按正文出现顺序排列。最后更新于 2026年9月25日。
参考来源1
本文引用的外部页面,按正文出现顺序排列。最后更新于 2026年9月25日。





