确认 unsupported parameter 错误

把 OpenAI-compatible 网关配置给 Claude Code 后,如果请求失败并出现 unsupported parameter、unknown field、unknown field in request body 或参数不支持,先按这篇排查。

Claude Code 发出的不是普通 OpenAI Chat Completions 请求。网关如果只支持 OpenAI 格式,就可能无法理解 Anthropic Messages 里的字段。

Text
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 请求打到哪个网关入口。

如果这里填的是 OpenAI-compatible 地址,网关可能会按 OpenAI 请求解析 Claude Code 发出的 Anthropic Messages 字段,于是返回 unsupported parameter。

PowerShell
$env:ANTHROPIC_BASE_URL

设置 Anthropic-compatible 入口

如果你的目标只是使用 DeepSeek,优先使用 DeepSeek 官方 Anthropic 入口,把官方链路跑通后再接入第三方代理。

这一步只放入口和 Key,不混入启动命令。真实 API Key 不要写进仓库、截图或文章。

PowerShell
$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,问题就在代理格式或字段转发。

PowerShell
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,说明请求格式已经更接近正确链路,下一步检查模型映射。

PowerShell
$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 模型变量和网关模型别名。

记录可用配置

修复后记录网关名称、入口格式、鉴权变量、模型名和错误变化。不要记录真实 Key。

下次看到 unsupported parameter,先对比当前入口是否又回到了 OpenAI-compatible 地址。

Text
日期:2026-06-05
网关:DeepSeek 官方 / LiteLLM / OpenRouter / 公司网关
入口格式:Anthropic Messages / OpenAI Chat Completions
ANTHROPIC_BASE_URL:填当前值
鉴权变量:ANTHROPIC_AUTH_TOKEN / ANTHROPIC_API_KEY
模型名:填当前 ANTHROPIC_MODEL
结果:首轮请求成功 / 仍失败的错误片段

参考来源

Claude Code 环境变量文档官方文档Claude Code LLM gateway 文档官方文档

相关文章

ANTHROPIC_BASE_URL 配置入口选择配置解释 / 约 10 分钟DeepSeek Anthropic API 404 错误排查步骤错误日志 / 约 12 分钟Claude Code 接入 DeepSeek API:配置方法和报错处理智能编程 / 约 20 分钟