DeepSeek 开源 DeepInfer:放出了什么,谁真能跑起来
2026 年 10 月 20 日 DeepSeek 开源了支撑 V4.1-Flash-1017 线上服务的推理框架 DeepInfer。它包含什么、缺什么、要什么硬件,以及为什么它不是一台能放在家里的推理服务器。

10 月 20 日 DeepSeek 发 DeepInfer 的那条推文,不到一天浏览量就过了 380 万。这条消息很容易被理解成:DeepSeek 把线上那套推理栈送出来了,以后自己也能跑出官方的价格。这个理解只对一半。DeepInfer 确实是线上服务 DeepSeek-V4.1-Flash-1017 的推理引擎,代码也确实以 Apache 2.0 开源了;但仓库自己写得很清楚:这次只放出离线推理,只支持两类加速卡,而真正撑起一个线上服务的 KV cache 系统和负载均衡,没有放。
这篇写给正在评估”要不要用 DeepInfer 自建 V4.1-Flash-1017 服务”的基础设施工程师:仓库里有什么、没有什么、DeepSeek 自己给出的硬件门槛,以及它披露的线上数字。所有信息来自 2026 年 10 月 21 日的 DeepInfer 仓库和其中的部署 Q&A。我没有 SM100 或昇腾 950 硬件,没有亲手编译或压测过 DeepInfer。
先说结论
- DeepInfer 是 DeepSeek 自研的推理框架,2026 年 10 月 20 日以 Apache 2.0 开源。目前只支持 DeepSeek-V4.1-Flash,默认权重是
deepseek-ai/DeepSeek-V4.1-Flash-1017。- 支持硬件只有 NVIDIA SM100 GPU 和华为昇腾 950 NPU,环境要求 Linux、Python 3.12、GCC 13+,以及 CUDA 13 或 CANN 9.2。
- 这次放出的是离线推理。KV cache 系统、Prefill/Decode 分离编排、数据并行负载均衡,README 明确写着”不包含”。
- 官方 Q&A 说,高效生产部署的最小单元是 64 张卡做 prefill 加 64 张卡做 decode;单个集群每天服务 155 万亿 token。
- 单机试用:examples README 给出的 8 卡节点离线推理命令是
--ep 8。X 上刷屏的 Mac、DGX Spark 本地跑 V4.1 Flash,用的都不是 DeepInfer。
这次到底开源了什么
README 第一段就把范围定死了:DeepInfer 支撑 DeepSeek 的大规模线上服务,而”本次开源版本提供离线推理,以及大规模服务所需的核心功能”。关键词是”离线”。你拿到的是一个能在 Python 里喂一批 prompt 的引擎,不是前面挂好了路由、缓存和弹性扩缩的 HTTP 服务。
README 一屏讲清范围:一个模型、两类硬件,外加三项”本次未包含”的服务组件(2026-10-21 截取)。
功能清单本身很扎实,就算你不打算跑,也值得读一遍:
| 功能 | 仓库里的说明 |
|---|---|
| 优化算子 | FlashMLA、DeepGEMM、DeepEP、TileKernels、DeepSelect 和自定义 TileLang 算子 |
| 并行 | Attention 数据并行或均衡的上下文并行;MoE 专家并行加 EPLB |
| DSpark 投机解码 | 草稿 token 加置信度调度验证,默认最大草稿长度 5 |
| SWA bounded replay | 只重放有限长度的后缀,减少 decoder 的 prefill 计算 |
| 异步调度 | CPU 排批和 GPU 执行重叠,默认开启 |
| Batch-invariant 推理 | 不管同批里还有谁,结果一致(仅 NVIDIA) |
| 确定性采样 | 相同输入 token 和种子得到相同输出(仅 NVIDIA) |
| 结构化输出 | 支持正则、JSON Schema、EBNF 约束 |
做过评测的人会注意到 batch-invariant 和确定性采样这两项。打开 DEEPINFER_BATCH_INVARIANT=1,再配合 DEEPINFER_ENABLE_MTP_VARLEN=0 和固定的 seq_seed,同一个 prompt 不管和谁拼在一个 batch 里,都吐出同样的 token。回归测试要分清”模型变了”还是”调度抖了”,靠的就是这个。不过两者都只支持 NVIDIA,而且有代价:确定性模式要关掉 DSpark 的变长验证,等于拿一部分 decode 速度换可复现。
README 也交代了来历:DeepInfer 最初主要基于 vLLM 构建,并借鉴了 SGLang 和 TensorRT-LLM。所以更准确的理解是 DeepSeek 在熟悉思路上打磨出的生产分支,而不是从零写起的新引擎。
缺的那几块,恰恰最值钱
README 列出了”完整推理服务需要、但本次未包含”的三样东西:
- KV cache 系统:跨请求的持久化前缀缓存。
- VE/Prefill/Decode 分离:README 说”引擎所需的大部分功能已经实现”,但外围编排没有放。
- 数据并行副本间的负载均衡:prefill 和 decode 都没有。
部署 Q&A 给了原因:KV cache 管理和负载均衡组件”与内部基础设施耦合较深,代码暂未完全开源”,设计思路请看他们的知乎文章。
这个缺口不小。DeepSeek 便宜的缓存命中价,靠的就是 KV cache。官方价格页上 deepseek-flash 高峰期缓存命中输入是每百万 token 0.006 美元,未命中是 0.30 美元。Q&A 描述了背后的家底:专用 3FS 存储集群,约 100 PiB SSD 存 KV cache;Agent 流量 TTL 3 天、聊天流量 7 天;按逻辑容量算,每张在线 GPU 约配 14.4 TB 缓存。这些一样都不在仓库里。只用 DeepInfer 自建,你拿不到这套价格结构,缓存层得自己造或者自己带。
DeepSeek 自己披露的线上数字
doc/ 目录下那份部署 Q&A,是这次发布里信息量最大的部分。开头两个数字,就是它被疯转的原因:
官方部署 Q&A:单集群日均 155 万亿 token,谷期定价下每 GPU 小时收入 38 美元,并说明 KV cache 与负载均衡代码仍留在内部(2026-10-21 截取)。
- 单个 V4.1 Flash 集群每天 155 万亿 token。
- 谷期(非高峰)定价下,每 GPU 小时整体收入 38 美元。
这两个都是 DeepSeek 的自述,不是审计数据;而且 38 美元是收入,不是成本。它告诉你非高峰时段每张卡每小时能挣多少,但没说硬件折旧、电费和人力,所以单凭它下不了”DeepSeek 是不是在亏本卖”的结论。它能说明的是:只要利用率和缓存命中率够高,很低的单 token 价格和不错的单卡收入可以同时成立。
Q&A 里的生产架构写得足够细,思路可以直接借:
- E/P/D 分离:视觉编码、prefill、decode 各自成池。prefill 用普通 8 卡机,EP2–8;decode 在超节点上用 EP64–128 的 Wide-EP。生产上不用 TP 和 CP。
- 四个负载均衡器:prefill、decode、视觉编码和专家并行。prefill 按上下文长度分四档(<16K、16–64K、64–256K、≥256K)。官方说整体能达到理想均衡离线基准的约 80%。
- 低精度:主 KV 用 per-16 的 e4m3,类似去掉全局 scale 的 NVFP4;路由专家权重和 indexer KV 用 MXFP4。
- DSpark 的收益并不夸张:动态长度验证让每步验证的草稿 token 少了约 30%,在生产工作点(每 rank 约 60 条并发)带来 4%–7% 的吞吐提升。工程上很扎实,但提升幅度不大。
最后一点值得多说一句。很容易把 DeepInfer 当成 V4.1 Flash”又快又便宜”的秘密武器。可官方自己的表格显示,投机解码调优在工作点上只有个位数百分比。Q&A 没有给各项贡献排序,我的理解是,更大的杠杆在模型本身的 KV cache 压缩、Wide-EP decode,以及一个能省掉重复 prefill 的缓存层。引擎重要,但只是其中一层。
硬件门槛
下面这句话,基本可以结束大多数”家里搭一台”的计划:
Q&A 写明 1P+1D 能部署,但 decode 推荐 EP64 以上,所以最小高效单元是 64+64 张卡(2026-10-21 截取)。
原话是:“1P + 1D 可以部署……由于推荐的 decode 配置是 EP64 及以上,最小的高效部署单元是 64 卡 prefill 加 64 卡 decode。“注意这是生产服务的效率门槛,不是加载权重的硬下限。
只做评测的话,门槛低得多。examples 的 README 给了单机离线推理:
# 单台 8 卡节点,8 张卡做专家并行
export DEEPINFER_ACCELERATOR=nvidia # 昇腾改成 "ascend"
./build.sh
export WORLD_SIZE=1 RANK=0
export CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7
python examples/offline_inference.py --ep 8
第一次运行会把 deepseek-ai/DeepSeek-V4.1-Flash-1017 下载到 Hugging Face 缓存;设置 DEEPINFER_HF_MODEL_DIR 可以改用本地副本。示例里还有 --ep 2 --dp 8、--ep 2 --cp 8 两种布局,以及一个能输出 prefill 吞吐、decode 每秒步数和单卡 decode 吞吐的 benchmark.py。
另一道硬杠是硬件列表。SM100 是 NVIDIA 数据中心 Blackwell 一代;README 没列 Hopper、消费级显卡、Apple 芯片或 AMD。这一点要说清楚,因为这周 X 上两个本地跑 V4.1 Flash 的帖子都不是用 DeepInfer:一条浏览量超过 22 万,展示”两台 DGX Spark 跑得这么快”,它发于 10 月 20 日 UTC 03:48,比 DeepInfer 公布早了将近六小时,不可能用的是它;另一条在 Mac Studio M5 Ultra 上用 LSQ3 量化加 oMLX 引擎,报告 decode 63.8 tok/s。它们证明 MIT 许可的开源权重很好移植,但和 DeepInfer 在目标硬件上的表现没有关系。
谁该用 DeepInfer
| 你的情况 | DeepInfer 现在合适吗 | 替代或配套方案 |
|---|---|---|
| 手里有 SM100 或昇腾 950 集群,要服务 V4.1 Flash | 引擎层的有力候选 | 自建或自带 KV cache 层和请求路由 |
| 单台 8 卡节点上评测 V4.1-Flash-1017 | 可用于离线批量推理和可复现评测 | 回归测试打开 batch-invariant 模式 |
| 用 Hopper、AMD 或消费级显卡 | README 未支持 | 继续用现有引擎加开源权重 |
| 用 Mac 或 DGX Spark | 未支持 | 社区引擎和量化版本,比如这周的那些演示 |
| 需要 OpenAI/Anthropic 兼容接口 | DeepInfer 不提供 | 看 deepseek-recipe 做协议编解码,或直接用托管 API |
一起放出的 deepseek-recipe 补上了最后一行的一部分:它把 Chat Completions、Responses、Messages 三种请求转成 DeepSeek 的 token 格式,再把输出解析回去,用 Rust 实现,带 Python 绑定。官方说它的处理逻辑和 DeepSeek 官方 API 完全对齐。它还防了特殊 token 注入:用户输入里出现 <|User|> 这类字符串,会按普通文本编码,不会变成控制 token。如果你要在自己的 API 后面挂开源权重,不管用哪个引擎,这个组件都值得先接上。
不过对大多数开发者来说,用上 V4.1-Flash-1017 最现实的路还是 API。在 SandBase 上它的 id 是 deepseek/deepseek-v4.1-flash,标价每百万 token 输入 0.30 美元、输出 1.20 美元,和 DeepSeek 高峰价一致。这是通往提供方模型的网关,不是 SandBase 自己部署的 DeepInfer。Python 教程演示了这个 id 的工具调用和 JSON 输出,Claude Code 实测则把它当编程 Agent 跑了一遍。
接下来盯什么
官方说,后续 DeepSeek 模型的推理代码和性能优化”会继续在 DeepInfer 中开源”。我 10 月 21 日查看时,公开历史只有四个提交:初始提交、两次 Q&A 文档更新,以及一次 DeepEP 依赖升级。值得盯的是三件事:第二个模型的支持(V4.1 Pro 会是最直接的信号)、KV cache 或负载均衡代码有没有放出、硬件有没有扩到 SM100 和昇腾 950 之外。任何一件,都比再多一张速度图更能改变自建的账。
常见问题
DeepSeek DeepInfer 是什么?
DeepInfer 是 DeepSeek 线上服务 DeepSeek-V4.1-Flash 所用的推理框架,2026 年 10 月 20 日以 Apache 2.0 开源。公开版本提供离线推理,包含优化算子、专家并行、DSpark 投机解码、结构化输出和确定性模式。
消费级显卡或 Mac 能跑 DeepInfer 吗?
按 README 不能,支持列表只有 NVIDIA SM100 GPU 和华为昇腾 950 NPU。网上 DGX Spark、Mac Studio 跑 V4.1 Flash 的演示,用的是别的引擎和量化权重。
DeepInfer 能直接替换 vLLM 或 SGLang 吗?
暂时不能。它大量基于 vLLM,但这次只放出离线推理,没有 KV cache 系统、Prefill/Decode 分离编排和数据并行负载均衡,而这些是线上服务必需的。
DeepInfer 需要多少张卡?
离线推理的示例在单台 8 卡节点上用 --ep 8 就能跑。要做高效的生产服务,官方 Q&A 给出的最小单元是 64 张 prefill 卡加 64 张 decode 卡。
DeepInfer 能解释 DeepSeek API 为什么这么便宜吗?
能解释一部分。Q&A 介绍了 KV cache 压缩、Wide-EP decode,以及放在约 100 PiB SSD 上的长时 KV cache,但没有给它们排序。低价缓存命中靠的正是缓存层,而它不在这次开源范围里。
结论
DeepInfer 是一次货真价实的开源,部署 Q&A 也是目前公开资料里对超大规模推理系统讲得最细的一份。但它不是”照着跑就能拿到 DeepSeek 价格”的开箱方案:你拿到了引擎,没拿到缓存层、负载均衡,也没拿到 SM100 和昇腾 950 之外的硬件支持。有对应硬件,就从单机离线示例和 batch-invariant 模式开始;没有,就把 Q&A 当设计参考读,模型先通过 API 用起来,比如 SandBase 上的 deepseek/deepseek-v4.1-flash,等开源栈慢慢补齐。