Claude Code 接 DeepSeek V4.1-Flash-1017:配置、Opus 陷阱与真实成本
Claude Code 接 DeepSeek V4.1-Flash-1017 怎么配?为什么漏设 Opus 槽位会按 V4 Pro 计费?我们用 6 道 Python 仓库题、24 次运行、隐藏测试判分,实测 Flash-1017 和 V4 Pro 的通过率、耗时和 token 成本。

这周 X 上流传着一条配置提示,一句话就能说完:把 Claude Code 指向 DeepSeek 的 Anthropic 接口,每个模型名都设成 deepseek-flash,漏一个,“opus”就会悄悄跑到 V4 Pro 上。这条是对的,DeepSeek 文档里写的映射规则一模一样。可同一批帖子里还有一堆光看截图没法核对的成本数字:“一个人付 10 美元,另一个付 0.2 美元""每个任务便宜约 50 倍”,还有一次性生成演示里号称比 Opus 5.5”便宜 120 倍”。
所以我自己跑了一遍。2026 年 10 月 21 日,我让 Claude Code 在 DeepSeek-V4.1-Flash-1017 和 DeepSeek V4 Pro 上,分别做我们 10 月 3 日 Claude Code 换模型实测里那 6 道 Python 仓库题,每题两次,用隐藏测试判通过。下面讲配置、讲 Opus 映射陷阱,再看这 24 次运行到底花了多少。范围先说清:6 道小题、一个 harness、一天、经由 SandBase。这是一次核对,不是排行榜。
先说结论
- DeepSeek 的 Claude Code 指南把所有模型槽位都设成
deepseek-flash。在 DeepSeek 的 Anthropic 接口上,任何claude-opus*名字都会映射到deepseek-v4-pro,按 V4 Pro 计费:输入是 Flash 的 4.4 倍,输出是 3.3 倍。- 我们的运行里,Flash-1017 隐藏测试 12/12 全过;V4 Pro 10/12,同一道重构题两次都挂。
- Flash-1017 更快:每题耗时中位数 39.6 秒,V4 Pro 是 83.5 秒。
- 但在这条链路上它并没有更便宜。按 SandBase 标价,Flash 每题中位成本 0.054 美元,V4 Pro 0.050 美元,原因是 Claude Code 收到的 Flash 用量里,缓存读取是 0。
- Claude Code 自己显示的花费不是账单:Flash 这 12 次它报 12.40 美元,按标价算只有 0.73 美元。
DeepSeek 官方给的配置
DeepSeek 的 AI 工具接入指南把 Claude Code 配置写成一组环境变量:所有槽位都指向 Flash,推理强度拉到 max。
官方指南把主模型、Opus、Sonnet、Haiku 和子代理槽位全部指向 deepseek-flash,其中三个带 [1m] 后缀,表示使用 100 万 token 上下文(2026-10-21 截取)。
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN="$DEEPSEEK_API_KEY" # 不要把 key 写死在命令里
export ANTHROPIC_MODEL='deepseek-flash[1m]'
export ANTHROPIC_DEFAULT_OPUS_MODEL='deepseek-flash[1m]'
export ANTHROPIC_DEFAULT_SONNET_MODEL='deepseek-flash[1m]'
export ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-flash
export CLAUDE_CODE_SUBAGENT_MODEL=deepseek-flash
export CLAUDE_CODE_EFFORT_LEVEL=max
cd /path/to/project && claude
在 zsh 里,带 [1m] 的值要加引号,否则方括号会被当成通配符。按更新日志,10 月 17 日起 deepseek-flash 背后就是 DeepSeek-V4.1-Flash-1017,这段配置不用为新版本改动。1017 具体改了什么,见这篇更新解读。
Opus 映射陷阱
Claude Code 不只用你设的主模型。它会按任务类型选 Opus、Sonnet 或 Haiku,哪个槽位你没设,它就发一个 Claude 的默认模型名。这些名字到了 DeepSeek 会怎样,Anthropic API 指南写得很直接:
DeepSeek 的映射规则:claude-opus* 走 deepseek-v4-pro 并按 V4 Pro 计费,其他 claude* 走 deepseek-flash,其余名字返回 400(2026-10-21 截取)。
claude-opus开头的名字映射到deepseek-v4-pro,“按 V4 Pro 价格计费”。claude-haiku、claude-sonnet开头的映射到deepseek-flash。- 不以
claude开头的不支持名称,直接返回 400。
所以这个坑是无声的。只要 ANTHROPIC_DEFAULT_OPUS_MODEL 没设,Claude Code 派给 Opus 的活就全在 V4 Pro 上跑,不报错也不提醒。按 DeepSeek 价格页的高峰价,差价如下:
| 每百万 token(高峰) | deepseek-flash(V4.1-Flash-1017) | deepseek-v4-pro(V4-Pro-0813) | Pro ÷ Flash |
|---|---|---|---|
| 输入,缓存命中 | $0.006 | $0.044 | 7.3 倍 |
| 输入,缓存未命中 | $0.30 | $1.32 | 4.4 倍 |
| 输出 | $1.20 | $3.96 | 3.3 倍 |
非高峰时段半价。DeepSeek 的高峰定义是工作日 UTC 01:00–04:00 和 06:00–10:00(北京时间 9:00–12:00、14:00–18:00),其余时间(包括周末和中国法定节假日)都算非高峰。所以踩这个坑,单价贵的是几倍,不是 50 倍。引用”50 倍”的帖子说数字来自 DeepSeek 的一张图:Flash 对 Claude Opus 5,DeepSWE 77.0 对 74.0,每个任务约 0.2 美元对 10 美元。那是另一组对比,和 Flash 对 V4 Pro 无关,每任务成本我也没有核实。
我手上没有 DeepSeek 的 API key,没法直接验证映射,上面的规则以官方文档为准。“槽位没设就发 Claude 默认名”是 Claude Code 自身的行为,DeepSeek 文档并没有写这一点。我能验证的是:槽位全设好时,确实只用一个模型。Claude Code 的 JSON 输出里有个 modelUsage 字段,按模型名记用量。我的 24 次运行里,它每次都只列出一个模型,就是所有 ANTHROPIC_* 变量里设的那个。你自己的配置也可以这样查:
claude -p "say ok" --output-format json | python3 -c \
'import json,sys; print(list(json.load(sys.stdin)["modelUsage"]))'
返回不止一个名字,就说明有槽位掉回了默认值。
实测:24 次 Claude Code 运行,隐藏测试判分
没有 DeepSeek key,我就让 Claude Code 走 SandBase 的 Anthropic 兼容接口。两个模型是 deepseek/deepseek-v4.1-flash 和 deepseek/deepseek-v4-pro,10 月 21 日的标价和 DeepSeek 高峰价一致。两者都是经 SandBase 网关调用的第三方模型。版本号要说明一下:响应里没有版本字符串,把这批运行叫作”1017”,是按 DeepSeek 更新日志推断的,日志说 10 月 17 日起 deepseek-flash 就是 1017。
方法沿用 10 月 3 日那次,没有改动:
- 题目:6 个小 Python 仓库,分别是分页、日期区间、LRU 缓存、计数器、一道藏着舍入 bug 的重构,以及 CSV 解析。每个仓库有 README 需求说明和可见测试。
- 提示词:“Read README.md. Run the tests with
python3 -m pytest -q, change the code so it meets the spec in README.md and the tests pass, then rerun the tests. Do not edit files under tests/.” - 判分:跑完后在干净副本里恢复原始可见测试、加入隐藏测试,全部通过才算过。还检查了 Agent 有没有改可见测试,结果一次都没有。
- Harness:Claude Code 2.1.156 无头模式(
claude -p),每次独立的配置目录,上限 40 轮、600 秒,每题两次。所有ANTHROPIC_*模型变量都设成被测模型。推理强度、[1m]上下文后缀和子代理变量保持 Claude Code 默认,所以这并不完全是 DeepSeek 推荐的那套配置。 - 成本:SandBase 标价乘以 Claude Code 报告的 token 用量。
env -u ANTHROPIC_API_KEY \
CLAUDE_CONFIG_DIR="$CFG" \
ANTHROPIC_BASE_URL="https://api.sandbase.ai" \
ANTHROPIC_AUTH_TOKEN="$SANDBASE_API_KEY" \
ANTHROPIC_MODEL="$MODEL" ANTHROPIC_SMALL_FAST_MODEL="$MODEL" \
ANTHROPIC_DEFAULT_HAIKU_MODEL="$MODEL" ANTHROPIC_DEFAULT_SONNET_MODEL="$MODEL" \
ANTHROPIC_DEFAULT_OPUS_MODEL="$MODEL" \
claude -p "$PROMPT" --model "$MODEL" --output-format json --max-turns 40 \
--dangerously-skip-permissions
--dangerously-skip-permissions 会让 Agent 不经确认执行任意命令。我只在题目仓库的一次性副本里用它,key 也设了低额度。24 次运行集中在 10 月 21 日 UTC 01:46 到 01:55 这大约九分钟里。
由原始结果文件生成的 24 次运行汇总:通过数、轮数与耗时中位数、标价成本、token 用量,以及两次失败(2026-10-21 UTC 01:46–01:55)。
| 模型(经 SandBase) | 隐藏测试通过 | 轮数中位数 | 耗时中位数 | 每题成本中位数 | 12 次合计 |
|---|---|---|---|---|---|
deepseek/deepseek-v4.1-flash(1017) | 12/12 | 9.5 | 39.6 秒 | $0.054 | $0.73 |
deepseek/deepseek-v4-pro(0813) | 10/12 | 9.0 | 83.5 秒 | $0.050 | $0.62 |
质量:V4 Pro 一直过不去的那道题,Flash-1017 过了
V4 Pro 两次都挂在 t5_refactor,每次 22 个测试错 2 个。10 月 3 日那次测试里(当时 id 是 deepseek-v4-pro-0813),它也是在这道题上两次都挂。这道题的坑在于重构时不能把原来的舍入 bug 原样搬过去:负数金额的税额要四舍五入(half-up)。这次两次失败的隐藏测试都是 test_apply_tax_half_up[-200-25--1] 和 [-1000-25--3]。Flash-1017 两次都过,分别用了 17 轮和 14 轮,除了一次很长的计数器运行,这是它用轮数最多的题。
6 道题样本很小,一道题拉开差距只能算信号,不是排名。但它和 DeepSeek 说 1017 在 Agent 编程上有提升的说法一致;也说明在这组任务上,全程换成 V4 Pro 并没有换来更好的结果。只把 Opus 槽位交给 V4 Pro 的混合配置,我没有测。
速度:大约快一倍
Flash-1017 耗时中位数 39.6 秒,V4 Pro 83.5 秒,轮数差不多(9.5 对 9.0),也就是说 Flash 每一轮回得更快。它最慢的一次(t4_counter 第 2 次)用了 109.7 秒、19 轮,仍比 V4 Pro 最慢的 157.6 秒快。这和 DeepSeek 在 10 月 17 日发布推文里说的”任务完成更快”相符,只不过我们测的是经网关的端到端时间,而且只有九分钟左右的一个时间窗。
成本:出乎我意料的地方
我原本以为 Flash 的成本只有 V4 Pro 的零头,结果不是。每题中位成本 Flash 0.054 美元、V4 Pro 0.050 美元;只算通过的运行,每次通过 Flash 0.061 美元、V4 Pro 0.062 美元,基本打平。
看 token 用量就明白了。Claude Code 每一轮都会重发整段对话,所以输入占大头。V4 Pro 的 1,753,753 个输入 token 里,有 1,424,384 个(81%)是缓存读取,按输入价的约 3% 计费。Flash 这边,Claude Code 报告了 2,310,517 个输入 token,缓存读取是 0,每一轮都按 0.30 美元全价算。Flash 合计 0.73 美元里,光输入就约占 0.69 美元。
这是对当天这条链路的观察,依据的是 Claude Code 收到的用量字段。我没有核对 SandBase 账单流水是否一致,也没法测 DeepSeek 直连接口对同样的流量会不会返回缓存命中。为了说明缓存有多关键:如果 Flash 的输入也有 81% 命中、按 0.006 美元计,这 12 次合计会从 0.73 美元降到约 0.18 美元。这只是算术,不是实测。
实际的教训是:相信任何成本对比之前(包括我这篇),先看缓存字段。Claude Code usage 输出里的 cache_read_input_tokens,如果长会话里一直是 0,你就是在每一轮都付全价输入。
Claude Code 显示的花费不是你的账单
Claude Code 的 JSON 输出里有个 total_cost_usd。这批运行它报的是 Flash 12.40 美元、V4 Pro 3.15 美元,按标价估算分别只有 0.73 和 0.62 美元。Claude Code 不认识 DeepSeek 的价格。两个数字都能用同一组单价完全复现:每百万 token 输入 5 美元、缓存读取 0.5 美元、输出 25 美元,也就是 Claude 档位的价格。所以看到截图里 Claude Code 显示的美元数,先确认是不是 total_cost_usd。要看真实花费,请看提供方的用量后台,或者用 token 数乘公开单价自己算。
落地建议
| 情况 | 建议 |
|---|---|
| 新配 Claude Code 接 DeepSeek | 原样照抄官方那段配置,五个模型变量一个不少,然后跑一次 modelUsage 检查 |
已有配置只设了 ANTHROPIC_MODEL | 补上 Opus、Sonnet、Haiku 和子代理变量;Opus 槽位不设,就会在 V4 Pro 上按 V4 Pro 计费 |
| 想故意让 V4 Pro 做规划 | 显式设 ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro,再量一下有没有帮助;我们这组题上,全程用 V4 Pro 并没有赢过 Flash |
| 做成本对比 | 看 cache_read_input_tokens,别看 Claude Code 的美元数字 |
| 在 DeepSeek 直连上跑长批量任务 | 放到非高峰:周末,或工作日 UTC 01:00–04:00、06:00–10:00 之外,半价 |
常见问题
Claude Code 怎么接 DeepSeek V4.1-Flash-1017?
设 ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic,把 DeepSeek key 放进 ANTHROPIC_AUTH_TOKEN,再把 ANTHROPIC_MODEL、ANTHROPIC_DEFAULT_OPUS_MODEL、ANTHROPIC_DEFAULT_SONNET_MODEL、ANTHROPIC_DEFAULT_HAIKU_MODEL、CLAUDE_CODE_SUBAGENT_MODEL 全部设成 deepseek-flash。2026 年 10 月 17 日起,这个名字背后就是 V4.1-Flash-1017。
不设 ANTHROPIC_DEFAULT_OPUS_MODEL 会怎样?
Opus 级别的任务,Claude Code 会发一个 claude-opus 模型名。DeepSeek 的 Anthropic 接口会把所有 claude-opus* 映射到 deepseek-v4-pro,按 V4 Pro 计费:高峰期每百万 token 输入 1.32 美元、输出 3.96 美元,而 Flash 是 0.30 和 1.20 美元。
V4.1-Flash-1017 在 Claude Code 里够用吗?
在我们这 6 道 Python 小题上,它隐藏测试 12/12 全过,V4 Pro 是 10/12,耗时也只有一半左右。不过这是一天、小样本的结果,正式依赖它之前,请在自己的仓库上测一测。
Flash-1017 在 Claude Code 里真比 Opus 便宜 50 倍吗?
引用”50 倍”的帖子说它来自 DeepSeek 一张对比 Claude Opus 5 的图,不是 Claude Code 实测,每任务成本我也没有核实。在我们的运行里,Flash 和 V4 Pro 每题成本差不多,因为 Flash 的用量里没有缓存读取。实际差多少,很大程度取决于缓存。
为什么 Claude Code 显示的花费比实际账单高很多?
Claude Code 的 total_cost_usd 是按它自己的 Claude 档位默认价算的,不是 DeepSeek 的价格。我们的运行里,它对按标价只值 0.73 美元的任务报了 12.40 美元。
结论
那条刷屏的提示没错:Claude Code 的每个模型槽位都要设成 deepseek-flash,否则 Opus 级的活会悄悄跑在 V4 Pro 上,单价贵好几倍。在我们这 24 次运行里,这还是个质量问题:Flash-1017 隐藏测试全过,包括 V4 Pro 已经连挂四次的那道重构题,耗时也只有一半左右。成本这件事没那么干脆:这条链路上 Flash 没有缓存读取,每题成本和 V4 Pro 打平。所以相信任何”便宜多少倍”之前,包括我这篇,先查缓存字段。测试脚本和原始结果都很容易改成跑你自己的仓库,两个模型共用一个 SandBase key:deepseek/deepseek-v4.1-flash 和 deepseek/deepseek-v4-pro。想直接在代码里调 Flash,可以看 Python 教程。