DeepInfer 开源笔记:生产级推理引擎到底开了什么、没开什么
2026-10-20,DeepSeek 把服务自家模型的推理框架 DeepInfer 以 Apache-2.0 开源。权重开源已经很常见,真正影响单 token 成本和尾延迟的,往往是调度、并行切分和算子栈。对在华为云上做大模型推理、AI Agent 或私有化部署的工程师来说,这次更值得读 README,而不是只看标题。
它解决什么问题
开权重不等于好跑。同一套 DeepSeek-V4.1-Flash,用通用引擎和用厂商自己的 serving 栈,吞吐与算力账单可以差一截。DeepInfer 公开的是 DeepSeek 线上用的那套「怎么把请求拆到多卡、怎么加速 decode、怎么保证输出形态」的核心能力,目标模型目前是 DeepSeek-V4.1-Flash(默认 checkpoint 为 DeepSeek-V4.1-Flash-1017)。
硬件侧:官方并列支持 NVIDIA SM100 与 华为昇腾 Ascend 950 NPU。昇腾路径依赖 CANN 9.2,构建时设置 DEEPINFER_ACCELERATOR=ascend。这对 Ascend 生态是一条可复现的参考实现,而不是口头兼容。
技术要点:机制 / 怎么用 / 注意点
1. 开的是引擎内核,不是完整在线服务
README 写得很直白:当前开源侧重 offline inference,以及「规模化 serving 所需的核心能力」。完整在线服务还缺三块,需要自行补齐:
- KV cache 管理系统
- Prefill / Decode(以及文档提到的 VE)拆分与协同
- 跨 DP 副本的负载均衡
换句话说:算子、并行与采样调度大体齐了;缓存、PD 分离编排、LB 仍要接现有平台或自研。评估成本时,别把「开源引擎」直接等同于「可替换公有 API 的一键集群」。
2. 并行与算子:冲的是 MoE + 长链路吞吐
公开能力里,和工程落地最相关的包括:
- 并行:Attention DP / balanced CP,MoE Expert Parallel(EP)+ EPLB
- 算子与通信:FlashMLA、DeepGEMM、DeepEP,以及 TileKernels / DeepSelect 等
- 投机解码(DSpark)+ 置信度调度校验:用 draft token 加速 decode,并用置信度决定何时校验;相关环境变量如
DEEPINFER_ENABLE_MTP_VARLEN、DEEPINFER_USE_NEXTN_DECODE(默认最大 draft 长度 5) - 异步调度:CPU 组 batch 与设备执行重叠,默认开启
- Structured outputs:按 regex / JSON Schema / EBNF 约束输出,适合 Agent 工具调用与结构化接口
若你在华为云上已经用 MindIE、vLLM 或自研网关,DeepInfer 更适合当作「MoE 推理与投机解码怎么切」的对照实现,而不是立刻推倒重来。
3. 上手路径(离线验证)
环境要求:Linux、GCC ≥ 13、Python 3.12;NVIDIA 需 CUDA 13,昇腾需 CANN 9.2。空环境激活后:
export DEEPINFER_ACCELERATOR=ascend # NVIDIA 则写 nvidia
./build.sh
python examples/offline_inference.py
首次运行会拉 deepseek-ai/DeepSeek-V4.1-Flash-1017;本地权重可设 DEEPINFER_HF_MODEL_DIR。配套还有 deepseek-recipe(协议/分词侧),用于更接近官方 API 的请求与响应形态。
4. 必须先知道的限制
- 功能不对等:batch-invariant inference、deterministic sampling 目前标明仅 NVIDIA;公开性能表也是在 4 卡 SM100 prefill + 64 卡 decode 上测的,不能直接当 Ascend 数字用。
- 架构门槛:SM100 / Ascend 950,不是「任意 GPU/NPU 都能编译过」。
- 谱系:项目致谢写明早期主要基于 vLLM,并参考 SGLang、TensorRT-LLM;社区后续很可能把思路回馈到通用引擎,而不是只存在于 DeepInfer 一条线。
- 合规与供应链:引擎是 Apache-2.0,权重与 recipe 另有许可证;商用前按依赖树和模型卡审计,别只看主仓 LICENSE。
对华为云场景的一点落地思考
若你在做 大模型私有化推理 或 Agent 高并发工具调用:优先用 DeepInfer 做 Ascend 950 上的离线吞吐与结构化输出基线,再决定是否把 KV / PD 分离接到现有集群(含 CodeArts 流水线里的压测与发布门禁)。价值在于:生产级 MoE 推理的「可抄作业」变多了,同时边界也写清楚了——缺的三块仍然要工程补齐。
小结
DeepInfer 的实质贡献,是把「开权重之后怎么便宜、稳、快地跑」这件事,从黑盒 API 推到了可审计的引擎代码,并且把昇腾与 NVIDIA 写在同一行支持列表里。适合今天就读的,是并行切分、投机解码与「引擎 ≠ 完整服务」这三件事;不适合的是:拿官方 SM100 数字直接承诺 Ascend SLA,或以为 clone 下来就能顶替整套在线 serving。
参考来源
- DeepSeek DeepInfer 仓库与 README:
https://github.com/deepseek-ai/DeepInfer - The New Stack 报道(范围、硬件并列、历史开源计划):
https://thenewstack.io/deepseek-deepinfer-huawei-nvidia/ - DeepInfer 发布范围说明页:
https://deepinfer.net/release/ - PyTorch 官方 TorchTPU 介绍(同日另一条「加速器原生 PyTorch」脉络,可对照阅读):
https://pytorch.org/blog/introducing-torchtpu/
- 点赞
- 收藏
- 关注作者
评论(0)