确认 404 错误类型

Claude Code 启动后请求 DeepSeek,返回 404、endpoint not found、not found 或类似路径不存在的提示,先按这篇排查。

如果同一个 Key 用 OpenAI SDK 可以调用 DeepSeek,也不能证明 Claude Code 配置正确。OpenAI 格式和 Anthropic 格式是两套入口,Claude Code 需要能接 Anthropic Messages 的入口。

Text
error: 404
message: endpoint not found

核对 DeepSeek Anthropic 入口

DeepSeek OpenAI 格式入口是 https://api.deepseek.com,Anthropic 格式入口是 https://api.deepseek.com/anthropic。Claude Code 接 DeepSeek 时,ANTHROPIC_BASE_URL 应该使用后者。

不要在这个地址后面手动追加 /v1/messages。Claude Code 会按自己的 Anthropic 请求格式拼接路径;多写一段,服务端可能收到不存在的 URL。

Anthropic 入口https://api.deepseek.com/anthropic
OpenAI 入口https://api.deepseek.com
不要手动追加/v1/messages

设置最小入口和 Key

先在当前 PowerShell 只放入口和 Key。不要同时写启动命令、持久变量或 settings JSON。

如果你通过公司网关或本地代理访问 DeepSeek,先绕开代理直连官方入口。直连成功以后,再把代理加回来。

PowerShell
$env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN="<你的 DeepSeek API Key>"

指定模型启动验证

当前窗口能读到入口和 Key 后,再用一个明确模型启动 Claude Code。这样 404 还在的话,排查对象就从“变量没设置”转向“入口路径或网关路由不对”。

DeepSeek Anthropic API 文档里的示例模型包括 deepseek-v4-pro;用于最小验证时可以先用 deepseek-v4-flash,减少子任务或默认模型切换带来的干扰。

PowerShell
claude --model deepseek-v4-flash

排除常见路径错误

404 最常见的原因是请求没有落到 DeepSeek 的 Anthropic 格式入口。先排除下面几种写法。

只改一项后就启动验证。不要同时改入口、Key、模型名和代理地址。

把 OpenAI 入口填进 ANTHROPIC_BASE_URL

https://api.deepseek.com 是 OpenAI-compatible 入口,不是 Claude Code 需要的 Anthropic-compatible 入口。

在 Anthropic 入口后追加 /v1/messages

ANTHROPIC_BASE_URL 只填根入口。Claude Code 会自行拼接请求路径,手动追加容易得到重复路径。

把第三方代理的 OpenAI 路径当作 Anthropic 路径

代理文档必须明确支持 Anthropic Messages,或者给出专门的 Anthropic-compatible 入口。

核对代理转发规则

如果你中间加了 LiteLLM、Nginx、Cloudflare Worker 或公司网关,404 可能来自代理层。代理层没有把 Claude Code 的 Anthropic Messages 请求转发到正确后端时,DeepSeek 官方地址写对也没用。

Claude Code 网关文档要求网关至少公开 Anthropic Messages、Bedrock InvokeModel 或 Vertex rawPredict 等受支持格式之一。DeepSeek 这条链路使用 Anthropic Messages。

  • 代理入口是否公开 Anthropic Messages,而不是只公开 OpenAI Chat Completions。
  • 代理是否保留 Claude Code 请求需要的 Anthropic headers。
  • 代理是否把 /v1/messages 转发到正确后端,而不是吞掉供应商前缀。
  • 代理鉴权是否使用当前入口要求的 Bearer token 或 x-api-key。

检查模型发现和模型名

Claude Code 指向 Anthropic Messages 网关时,可能在启动时查询 /v1/models 做模型发现。网关没有实现这个端点、缓存了旧模型列表,或模型名不在网关允许范围内,都可能让启动阶段先失败。

如果 404 出现在模型发现或启动阶段,先指定一个明确模型启动;仍然失败时,再检查网关的 /v1/models、模型别名和缓存。

PowerShell
claude --model deepseek-v4-flash

常见错误问题

修正入口后,如果 404 消失但出现 401,问题已经从路径转到鉴权。继续检查 Key、Token 长度和供应商账号权限。

如果 404 消失但出现 model not found,问题已经从入口路径转到模型配置。继续检查 ANTHROPIC_MODEL、DEFAULT 模型变量和网关映射。

直连官方入口成功,接回代理后 404

问题在代理路由或路径改写。检查代理是否公开 Anthropic Messages,以及是否正确转发 /v1/messages。

入口改对后变成 401

路径已经打到服务端。继续检查 ANTHROPIC_AUTH_TOKEN、ANTHROPIC_API_KEY 和 Key 所属供应商。

入口改对后变成 model not found

继续检查模型名、DEFAULT 模型变量和网关模型映射,不要回头反复修改 base URL。

记录可用配置

404 修好后,把能复现成功的入口、模型名、启动方式和是否经过代理记录下来。不要记录真实 Key。

下次再遇到 404,先对比当前入口和这份记录。路径类错误通常一眼就能看出差异。

Text
日期:2026-06-05
入口:https://api.deepseek.com/anthropic
模型:deepseek-v4-flash
启动方式:同一个 PowerShell / VS Code 终端 / 代理
是否经过代理:否 / LiteLLM / Nginx / 公司网关
结果:首轮请求成功 / 仍失败的错误片段

参考来源

DeepSeek Anthropic API 文档官方文档Claude Code LLM gateway 文档官方文档

相关文章

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