10 月 20 日下午,DeepSeek 在官方公众号放出开源推理框架 DeepInfer 的公告,同日把两个仓库推上 GitHub:推理框架本体 DeepInfer(github.com/deepseek-ai/DeepInfer
仓库地址:https://github.com/deepseek-ai/DeepInfer),以及负责 API 协议与 Token 编解码的 deepseek-recipe(github.com/deepseek-ai/deepseek-recipe)。这是继大模型、TileLang 编译工具与一批推理算子库之后,DeepSeek 把「模型怎么跑得又快又省」这一层也摊开了。结论先放前面:这次放出的是引擎,不是整座工厂。
一、两个仓库,一个管算,一个管接口
DeepInfer 是推理框架本体。仓库 description 写的是 "DeepInfer: High-performance, large-scale inference framework for DeepSeek models",README 首句说它是驱动 DeepSeek 大规模生产服务的高性能推理框架,本次开源版本提供离线推理能力与大规模服务所需的核心特性。
deepseek-recipe 干的是另一件事:Rust 库加 Python 绑定,把 Chat Completions、Responses、Messages 三种主流 API 请求统一成同一种会话表示,按模型版本渲染 prompt、编码成 token ID,再把模型输出解析回原协议的响应。官方明确说它的处理逻辑与 DeepSeek 官方 API 完整对齐。
两个仓库是并列发布,不是绑在一起。DeepInfer 的 requirements.txt 里没有 recipe 依赖,342 个文件里路径含 recipe 的为 0 个,DeepInfer 的 prompt 渲染走 checkpoint 自带的 encoding/encoding.py 而非 recipe。想把 DeepSeek 模型接进自己产品的团队,按需取用。
许可证必须分开写。DeepInfer 是 Apache-2.0,LICENSE 是未经修改的原始模板,README 原话 "DeepInfer is released under the Apache License 2.0.";deepseek-recipe 是 MIT,LICENSE 写 "Copyright (c) 2026 DeepSeek"。两者都宽松,但署名与声明义务不同,闭源商业分发时各按各的条款走。
二、仓库一手数据
下表为 2026-10-22 经 GitHub API 实测,star 数随时间变动:
| 仓库 | 许可证 | stars | forks | 创建 | 最后推送 |
|---|---|---|---|---|---|
| deepseek-ai/DeepInfer | Apache-2.0 | 17,902 | 1,836 | 2026-10-16 | 2026-10-21 |
| deepseek-ai/deepseek-recipe | MIT | 1,947 | 244 | 2026-09-10 | 2026-10-19 |
open issues 的具体清单尚未逐条核实(GitHub API 对取证用 IP 返回 403 限流),本篇不写具体 issue 数。
时间线里有个细节:DeepInfer 10 月 16 日建仓、10 月 20 日宣布全面开源,四个工作日积累 1.8 万星;deepseek-recipe 早在 9 月 10 日就建了仓,10 月 19 日最后推送。编解码这一层是提前备好的,引擎是压轴放出的。DeepInfer 开仓到发布只有四条提交:10 月 20 日 initial commit、当天两笔问答文档更新、10 月 21 日一笔依赖升级。
发布物目前也偏「刚开源」:GitHub Release 与 Tag 都是 0 个,PyPI 上只有 sdist 包 deepinfer 0.1.0(2026-10-20),仓库里没有 Dockerfile,也没有任何 docker 引用,官方给的安装路径就是源码构建加 pip 安装。
README 列出的算子来源是 FlashMLA、DeepGEMM、DeepEP、TileKernels、DeepSelect 以及自研的 TileLang 算子,其中多数此前已单独开源,本次是把推理框架这层拼图补上。
三、官方自报的性能数字:全部是官方口径
下面三组数字来自 DeepSeek 官方发布材料(公众号 2026-10-20 的线上统计表、官方知乎技术博客、仓库内的官方部署问答文档),目前没有第三方复现。
规模与收入:单集群服务吞吐 155 万亿 Token/天,按谷价折算整体收入每卡每小时 38 美元。官方还给出平均输入长度 77K tokens,说明这套系统的画像是长文档与 Agent 场景。
延迟与生成:平均首字时延 400 毫秒、P99 为 1000 毫秒,生成速度 230 tokens/s,代码场景更高;Decode 侧每卡每秒生成 14K Token。
缓存与 Prefill:平均输入缓存命中率 96%,Prefill 每卡吞吐在不计缓存命中时是 6 万 tokens/s,计入命中后达到 150 万 tokens/s,相差约 25 倍。
这里有一句必须写明的限定:上面这些数字全部是英伟达 SM100 集群口径。README 的性能图标注为 "Measured on 4 SM100 GPUs for prefill and 64 for decode",昇腾侧官方没有公布任何实测吞吐或延迟数字,不能把 155 万亿 Token/天、400 毫秒、230 tokens/s、14K tokens/s 直接搬到昇腾 950 上。线上与离线也不是一个口径:官方公众号公布的离线数据是 Prefill 单卡最高约 8.6 万 tokens/s,Decode 在单用户生成速度约 100 tokens/s 时单卡总吞吐约 2.6 万 tokens/s。
按官方 PNG 图读出的值另算(读图值,非官方文字口径):Prefill 在 EP4DP4 下最高约 89,700 tokens/s/GPU(batch 65,536,图上标注约 753 毫秒),Decode 在 EP64DP64 下最高约 26,300 tokens/s/GPU(256 路请求,约 103 tokens/s/用户)。
还有几项官方未公布:集群总 GPU 数、逐请求的 TTFT/TBT 延迟分布、最低卡数与显存需求、DeepInfer 自带评测跑分,以及独立技术报告。
四、SWA Bounded Replay 与 DSpark:省算力的两个设计
第一个是 SWA Bounded Replay。V4.1 Flash 部分层用滑动窗口注意力,注意力只在最近 128 个 Token 的窗口内计算。缓存缺失时官方不再在完整上下文上重算,而是只重算最后 128 个 Token,并把注意力窗口截断在重算段内,结果作为一份近似的 SWA KVCache 使用。收益是重算代价从「随上下文长度和层数增长」变成一个常数,官方原话是与上下文长度和层数无关;同一套办法也用在另外 20 个 decoder 层上,精确重建要跑最后 2560 个 Token,改成只重算末尾 128 个 Token 后,总 Prefill 计算量近乎减半。官方给的窗口工程细节是 134(128 的窗口加 6 个 Token 的投机回退),按 YOCO 截断要求,输入长度 L 的最大命中长度因此是 L 减 134。
第二个是 DSpark 推测解码,配置信度调度验证:先预测接下来可能出现的多个 Token,用 Confidence Head 估计每个候选被接受的概率,把有限的验证算力优先给边际收益最高的候选。线上 draft 一次生成 5 个 Token,由 DEEPINFER_USE_NEXTN_DECODE 控制,默认 5。
相对「固定验证 5 个 Token」的方案,线上吞吐提升 6% 是官方公众号口径;官方部署问答文档按并发度展开的表更细:验证 Token 数从 5.00 降到 3.2 至 4.4,平均接受长度基本不变,增益在正 4% 到正 7% 之间浮动(60 并发是正 5.4%,72 并发是正 6.7%)。6% 是概括,表格是细化,引用时带上口径。
把 DSpark、置信度调度与异步调度叠起来,官方结果是线上 Decode 每卡每秒 14K Token。异步调用的思路是让 CPU 与 GPU 同时开工:GPU 跑第 N 步时,CPU 已在排第 N+1 步、并处理第 N-1 步的后处理。
五、MoE 专家副本重排与 80% 均衡度
V4.1 Flash 是 MoE 模型,光路由专家就有 384 个。Decode 阶段官方把这些专家摊到 64 张卡上,每卡 6 个,再加 1 个热门专家副本,合计 7 个。每卡专家数越少,每步从显存读的参数就越少。
热门专家副本还会动:每 1000 步统计一次负载,每 10000 步重新分配一次,线上最忙的卡只比平均水平高 9%(官方 moe_lb 指标 1.090)。Prefill 侧策略不同,每卡 4 个冗余专家起步、统计窗 100 步、每 1000 步重排。
这里有一处官方自相矛盾,并列不裁决:prefill 的 moe_lb,GitHub 部署问答文档写 1.074(EP4/DP4)与 1.045(EP2/DP2),官方知乎技术博客写 1.0618 与 1.0320。Decode 侧两处一致,都是 1.090。
请求分配也在调度:Prefill 按输入总长分 4 档(小于 16K、16 至 64K、64 至 256K、大于等于 256K),每档分到的引擎台数按上一轮需求占比动态重分;Decode 同时看每卡请求数与缓存总长度,短请求发给请求少但缓存长的卡,长请求发给缓存短的卡。整体上,系统达到离线测试里完全均衡状态的 80% 左右。
Decode 引擎的上下线也不是即开即关:收到下线通知后有 1 分钟宽限期,配额占用率高于 0.8 时禁止缩容,重启时间在分钟量级。
六、没开源的三块:拿到的是引擎,不是整座工厂
这是本篇最需要写清楚的部分。README 自己列了「完整推理服务所需但本次不包含」的三项:KV cache 系统、VE/Prefill/Decode 分离部署、Prefill 与 Decode 两侧数据并行副本之间的负载均衡。官方部署问答文档的表述更直接:KV cache 管理层与负载均衡组件和内部基础设施紧耦合,代码尚未完全开源。也就是说,本次开源提供的是离线推理,加上把请求变成结果的那段计算路径与调度原语(算子、模型与采样运行时、注意力数据并行与均衡上下文并行、MoE 专家并行与专家负载均衡、DSpark 与置信度调度验证、SWA bounded replay、异步调度、结构化输出、batch-invariant 推理与确定性采样),而多机组缓存存储层、跨副本路由与跨数据中心调度这套运维层还在 DeepSeek 手里。
另一个边界也要写清:官方没有提供与 vLLM、SGLang、TensorRT-LLM 的横向基准。仓库 eval 目录是模型能力评测(AIME 2026、HLE、GPQA Diamond,Pass@1 口径),不是框架之间的吞吐对比,「DeepInfer 比 vLLM 快多少」目前没有官方答案。
官方还交代了 KVCache 的分层,这部分能看出自建难度。Block KVCache 落在独立的 3FS 分布式文件系统上,官方口径是约 100 PiB 的 SSD 存储,agent 流量缓存留 3 天、chatbot 流量留 7 天,官方经验是 chatbot 只留 3 天会让命中率掉 0.5% 到 1%,底层用的是 10+2 纠删码。SWA KVCache 不进持久化存储,留在本机内存,线上 TTL 约 180 秒、命中率在 98% 以上,入库的只有 20 层 × 134 个 Token × 528 B,约 1.4 MB 一条序列。缓存怎么分层是公开的,跨机组怎么存、怎么路由则不在代码里,这正是上面那三项未开源的东西。
七、硬件与部署:双栈,门槛不低
官方支持列表把两个平台并列写在同一级:英伟达 SM100 GPU 与华为昇腾 950 NPU。不是「计划支持」,是同一套代码在两套生态上分别编译运行。昇腾侧的支撑也在仓库里:配套 CANN 9.2 与 torch-npu==2.13.0rc1,vendor 目录含 DeepEP-Ascend 与 DeepGEMM-Ascend,算子层 tilelang_ops 下 asc 目录 30 个文件与 cuda 目录 30 个文件对等,CI 有 ci_npu 标记专门跑 NPU 流水线;官方微信《DeepSeek 开源昇腾基础组件》(2026-09-30)提到与昇腾共同研发「基于昇腾 950 的 128 卡超节点方案」。
功能缺口也要说清:batch-invariant inference 与 deterministic sampling 在官方特性清单里标注「(NVIDIA only)」,昇腾不支持,前者需设置 DEEPINFER_BATCH_INVARIANT=1,后者还要配 DEEPINFER_ENABLE_MTP_VARLEN=0 并固定 seq_seed。
构建前置条件:Linux、GCC 13.0 及以上、Python 3.12、CUDA 13(英伟达)或 CANN 9.2(昇腾)。步骤是新建并激活干净的 Python 3.12 虚拟环境,export DEEPINFER_ACCELERATOR=nvidia(昇腾用 ascend)后执行 ./build.sh,这个变量要在后续运行环境一直保持生效。权重默认首次运行自动从 Hugging Face 下载 deepseek-ai/DeepSeek-V4.1-Flash-1017,想用本地副本就设 DEEPINFER_HF_MODEL_DIR 指向解压后的路径,第一个例子是 python examples/offline_inference.py。
系统形态是理解这套设计的关键:Prefill 放在常见的 8 卡服务器上,Decode 放在 64 至 128 卡的超节点上,两阶段按各自负载特征分别设计计算、通信与调度;KVCache 的目标是保留 72 小时以上。官方给的最小效率部署单元是 64 卡 Prefill 加 64 卡 Decode,实际部署中 P 与 D 的卡数比接近 1 比 1,VE 侧一个实例一张卡就够。
顺带一句官方问答里那个很有画面感的细节:跨机房部署技术上可行,每 8 张卡配约 400 Gbps 互联带宽就够,但可靠性要打折扣,理由是「跨机房的光纤容易被挖断」。
八、哪些是二手口径,哪些要自己验
第一,vLLM 血统。官方 README 致谢段原文写 DeepInfer was originally built primarily on vLLM, with additional inspiration from SGLang and TensorRT-LLM,setup.py 的注释也写着 "Derived from vLLM; modified by DeepSeek"。所以「主要基于 vLLM 起步」有官方依据,「vLLM 深度魔改」属于社区与媒体口径。
第二,是否只服务 DeepSeek 模型族。社区说法在当前版本成立:官方 README 的 supported models 只列 DeepSeek-V4.1-Flash,description 也写的是 for DeepSeek models。官方表示未来新模型的推理代码与性能优化会继续在 DeepInfer 开源。
第三,Hacker News 上的分数。不同统计时点有两个口径,引用时必须标时点,本篇不写具体分。
第四,第三方复现。上面所有性能数字都只有官方一个信源。第三方基准缺席不代表数字有问题,但代表「这些数字在别人的机器上能不能复现」还没有答案。
第五,官方自己的几处未公布项也得记下来:集群总 GPU 数、逐请求的 TTFT/TBT 延迟分布、最低卡数与显存需求、DeepInfer 自带评测的跑分,以及独立技术报告,都还没公开。
九、适合谁,以及和站内那篇的分工
DeepInfer 适合两类人:手上有 SM100 或昇腾 950 集群、需要自建大规模推理服务的团队;以及愿意自己补上缓存与负载均衡那几层的工程团队。它不适合个人开发者尝鲜,也不是开箱即用的服务框架,因为开源版本给的是离线推理。
本站此前有《DeepSeek 又上新:权重免费下,任务账单砍六成》一文,讲的是 DeepSeek-V4.1-Flash-1017 这个模型本体本身,参数口径、基准成绩与 API 定价在那篇里。本篇只讲推理引擎这一层:两个仓库的关系与许可证、官方自报的服务端数字与硬件口径、SWA Bounded Replay 与 DSpark、MoE 负载均衡、没开源的部分,以及构建部署路径。两篇不重叠,按需取用。
FAQ
Q1:DeepInfer 和 vLLM 到底是什么关系?
A:官方 README 致谢段原文写的是 originally built primarily on vLLM, with additional inspiration from SGLang and TensorRT-LLM,setup.py 注释也写 Derived from vLLM,所以「主要基于 vLLM 起步」有官方依据,「深度魔改」属于社区与媒体口径。更关键的是官方没有提供与 vLLM、SGLang、TensorRT-LLM 的横向基准,仓库 eval 目录评的是模型能力而非框架吞吐,谁快谁慢目前只有官方自报数字可看,需要自己实测。
Q2:这次开源了什么,官方说哪些还没开源?
A:开出来的是引擎本体,含优化算子与运行时、注意力数据并行与均衡上下文并行、MoE 专家并行与专家负载均衡、DSpark 与置信度调度验证、SWA bounded replay、异步调度、结构化输出,以及离线推理。官方明确写明完整推理服务还需要但未包含三样:KV cache 系统、VE/Prefill/Decode 分离部署、Prefill 与 Decode 两侧数据并行副本间的负载均衡,原因是这些组件与内部基础设施紧耦合,代码尚未完全开源。
Q3:昇腾能用吗?那些性能数字算昇腾的吗?
A:昇腾是官方并列声明的支持平台,README 的支持列表里 NVIDIA SM100 GPUs 与 Huawei Ascend 950 NPUs 同级,配套 CANN 9.2、torch-npu、Ascend 版算子与 ci_npu 流水线。但所有性能数字都是 SM100 集群实测口径,README 明确标注 4 张 SM100 测 Prefill、64 张测 Decode,昇腾侧官方未公布任何实测数字。此外 batch-invariant inference 与 deterministic sampling 官方标注 (NVIDIA only),昇腾不支持。
Q4:硬件门槛高吗?普通团队能跑起来吗?
A:官方支持英伟达 SM100 GPU 与华为昇腾 950 NPU 双栈,未承诺支持更低一代卡。构建需要 Linux、GCC 13 以上、Python 3.12、CUDA 13 或 CANN 9.2。路径是建干净的 Python 3.12 虚拟环境、export DEEPINFER_ACCELERATOR=nvidia 后跑 ./build.sh,权重默认拉取 DeepSeek-V4.1-Flash-1017,可用 DEEPINFER_HF_MODEL_DIR 指向本地副本,最后执行 python examples/offline_inference.py。
Q5:它支持别的模型吗?
A:官方 README 的 supported models 目前只列 DeepSeek-V4.1-Flash,仓库 description 也写的是 for DeepSeek models,社区所谓「只服务 DeepSeek 模型族」在当前版本成立。官方表示未来新模型的推理代码与性能优化会继续在 DeepInfer 开源,要接别的模型需要自己改造,官方没有提供这条路。
延伸阅读
- DeepSeek 又上新:权重免费下,任务账单砍六成:DeepSeek 又上新:权重免费下,任务账单砍六成
- 本地部署大模型五路实测:哪个方案真香:本地部署大模型五路实测:哪个方案真香
- 别自研 Agent 底座了:五大官方 Agent Runtime 横评:别自研 Agent 底座了:五大官方 Agent Runtime 横评