unsupported parameter / unknown field 是什么意思
把 OpenAI-compatible 网关配置给 Claude Code 后,如果请求失败并出现 unsupported parameter、unknown field、unknown field in request body 或参数不支持,先确认网关是否真的支持 Anthropic Messages 请求。
Claude Code 发出的不是普通 OpenAI Chat Completions 请求。网关如果只支持 OpenAI 格式,就可能无法理解 Anthropic Messages 里的字段。
error: unsupported parameter
message: unknown field in request body网关到底支持哪种 API 格式
文档里写 OpenAI-compatible,只能说明它大概率支持 /chat/completions。Claude Code 需要网关公开 Anthropic Messages、Bedrock InvokeModel 或 Vertex rawPredict 等受支持格式之一。
如果网关同时支持 OpenAI 和 Anthropic 两种格式,通常会给出两个不同入口。ANTHROPIC_BASE_URL 要填 Anthropic-compatible 入口,不要填 OpenAI Chat Completions 入口。
| 字段 | 值 |
|---|---|
| OpenAI Chat Completions | /chat/completions |
| Anthropic Messages | /v1/messages |
| DeepSeek Anthropic 入口 | https://api.deepseek.com/anthropic |
ANTHROPIC_BASE_URL 会不会填错
先检查当前 PowerShell 里的 ANTHROPIC_BASE_URL。这个变量决定 Claude Code 请求打到哪个网关入口。
如果 ANTHROPIC_BASE_URL 填的是 OpenAI-compatible 地址,网关可能会按 OpenAI 请求解析 Claude Code 发出的 Anthropic Messages 字段,于是返回 unsupported parameter。
$env:ANTHROPIC_BASE_URL应该填哪个 Anthropic 入口
如果你的目标只是使用 DeepSeek,优先使用 DeepSeek 官方 Anthropic 入口,把官方链路跑通后再接入第三方代理。
这一步只放入口和 Key,不混入启动命令。真实 API Key 不要写进仓库、截图或文章。
$env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN="<你的 API Key>"怎么确认入口和模型能用
当前窗口能读到入口和 Key 后,再用明确模型启动 Claude Code。启动命令单独放,避免误复制到 settings 或环境变量配置里。
如果官方 DeepSeek 链路能返回,说明 Claude Code 和 Key 基本可用;再接回代理时继续报 unsupported parameter,问题就在代理格式或字段转发。
claude --model deepseek-v4-flash常见配置错法有哪些
unsupported parameter 往往不是删一个字段就能稳定解决。先排除入口、格式和鉴权这几类基础配置。
每次只改一项,再单独启动验证。否则临时跑通以后也很难知道是哪一项起作用。
把 OpenAI-compatible 地址填进 ANTHROPIC_BASE_URL
换成网关明确提供的 Anthropic-compatible 入口。只支持 OpenAI Chat Completions 的网关不能直接接 Claude Code。
网关没有保留 Anthropic 请求字段或 headers
检查代理是否按 Anthropic Messages 格式转发请求,并保留 Claude Code 需要的 anthropic-beta、anthropic-version 等字段或 headers。
鉴权变量和网关要求不一致
确认网关要求 Bearer token 还是 x-api-key。Claude Code 可用 ANTHROPIC_AUTH_TOKEN 或 ANTHROPIC_API_KEY,但两者发送方式不同。
模型名和网关映射怎么查
网关支持 Anthropic Messages 后,还要确认模型名能被网关接受。OpenAI 模型名、供应商原始模型名和 Claude Code 默认模型名不一定能直接互换。
如果错误从 unsupported parameter 变成 model not found,说明请求格式已经更接近正确链路,下一步检查模型映射。
$env:ANTHROPIC_MODEL
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL
$env:CLAUDE_CODE_SUBAGENT_MODEL仍然报错时先转到哪条路径
如果改成 Anthropic-compatible 入口后错误消失,就不要继续保留旧 OpenAI-compatible 地址。
如果错误变成 404、401 或 model not found,说明问题已经从 unsupported parameter 转到新的配置层。按下面的错误继续排查。
变成 404 endpoint not found
入口路径或代理转发仍然不对。检查是否填错根入口,或代理是否正确公开 /v1/messages。
变成 401 unauthorized
请求已经打到服务端,继续检查 Token 长度、Key 所属供应商和鉴权变量。
变成 model not found
继续检查 ANTHROPIC_MODEL、DEFAULT 模型变量和网关模型别名。