📦 GitHub: https://github.com/geekchow/deepseek-v41-flash-inference-guide
你在哪里 :痛点已经讲清,现在给出定义。
读完本文你将知道 :三件发布物各自的一句话定义、它们不是什么、开源到了哪一步,以及它们在推理生态中的位置。
1. 一句话定义
V4.1 Flash 推理系统(技术报告描述的对象)
是一套面向海量在线流量的集群级 LLM 推理服务 ,它通过视觉编码 / 预填充 / 解码三段分离(EPD,Encoder / Prefill / Decode)+ 宽专家并行(Wide-EP)+ 独立的 3FS 共享 KV 缓存池 + 多级负载均衡,在满足时延的前提下把长上下文、多轮重复的请求以最低单位成本服务出去。
DeepInfer
是这套系统中每个 prefill / decode 实例内部运行的推理引擎,它通过高性能算子(FlashMLA、DeepGEMM、DeepEP、TileLang 等)、异步零开销调度、DSpark 投机解码和 SWA(Sliding Window Attention,滑动窗口注意力)Bounded Replay,把单个 EP 组的吞吐推到极限,并同时支持英伟达与华为昇腾。
deepseek-recipe
是系统入口和出口处的协议 ↔ token 编解码库,它通过把 Chat Completions、Responses、Messages 三种 API 请求统一为一个 Conversation 结构、再用与官方完全一致的模板渲染和分词,解决"第三方部署的 API 行为和官方不一致、且可能被注入控制 token"的问题。
2. 边界:它们不是什么
| 发布物 | 不是 / 不做 |
|---|---|
| 技术报告 | 不是模型论文(模型结构见 arXiv 2609.19969);不讲训练 |
| DeepInfer(开源版) | 不是完整的在线服务 :开源版只提供离线推理 ;不包含 KV 缓存系统、不包含 VE/Prefill/Decode 分离部署(但引擎侧所需功能大多已实现)、不包含 DP 副本之间的负载均衡。目前只支持 DeepSeek-V4.1-Flash 一个模型;只支持英伟达 SM100(Blackwell)和华为昇腾 950,不支持消费级显卡 |
| deepseek-recipe | 不做推理、不做 HTTP、不执行工具------这三样都由调用方提供;不计算 logprobs(只透传后端给的值);结构化输出只负责校验 schema 并产出约束对象,真正的约束解码要后端支持 |
一句话:DeepSeek 开源了"发动机"(DeepInfer)和"变速箱接口"(deepseek-recipe),但"整车的调度与油箱"(负载均衡与 KV 缓存)只给了设计图(报告)。
3. 开源范围总表
下图回答:架构图中哪些部分开源了代码、哪些只公开了设计。
#mermaid-svg-kFTGMlgeqwO8NhTI{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-kFTGMlgeqwO8NhTI .error-icon{fill:#552222;}#mermaid-svg-kFTGMlgeqwO8NhTI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-kFTGMlgeqwO8NhTI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-kFTGMlgeqwO8NhTI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-kFTGMlgeqwO8NhTI .marker.cross{stroke:#333333;}#mermaid-svg-kFTGMlgeqwO8NhTI svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-kFTGMlgeqwO8NhTI p{margin:0;}#mermaid-svg-kFTGMlgeqwO8NhTI .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster-label text{fill:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster-label span{color:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster-label span p{background-color:transparent;}#mermaid-svg-kFTGMlgeqwO8NhTI .label text,#mermaid-svg-kFTGMlgeqwO8NhTI span{fill:#333;color:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI .node rect,#mermaid-svg-kFTGMlgeqwO8NhTI .node circle,#mermaid-svg-kFTGMlgeqwO8NhTI .node ellipse,#mermaid-svg-kFTGMlgeqwO8NhTI .node polygon,#mermaid-svg-kFTGMlgeqwO8NhTI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-kFTGMlgeqwO8NhTI .rough-node .label text,#mermaid-svg-kFTGMlgeqwO8NhTI .node .label text,#mermaid-svg-kFTGMlgeqwO8NhTI .image-shape .label,#mermaid-svg-kFTGMlgeqwO8NhTI .icon-shape .label{text-anchor:middle;}#mermaid-svg-kFTGMlgeqwO8NhTI .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-kFTGMlgeqwO8NhTI .rough-node .label,#mermaid-svg-kFTGMlgeqwO8NhTI .node .label,#mermaid-svg-kFTGMlgeqwO8NhTI .image-shape .label,#mermaid-svg-kFTGMlgeqwO8NhTI .icon-shape .label{text-align:center;}#mermaid-svg-kFTGMlgeqwO8NhTI .node.clickable{cursor:pointer;}#mermaid-svg-kFTGMlgeqwO8NhTI .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-kFTGMlgeqwO8NhTI .arrowheadPath{fill:#333333;}#mermaid-svg-kFTGMlgeqwO8NhTI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-kFTGMlgeqwO8NhTI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-kFTGMlgeqwO8NhTI .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-kFTGMlgeqwO8NhTI .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-kFTGMlgeqwO8NhTI .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-kFTGMlgeqwO8NhTI .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster text{fill:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI .cluster span{color:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-kFTGMlgeqwO8NhTI .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-kFTGMlgeqwO8NhTI rect.text{fill:none;stroke-width:0;}#mermaid-svg-kFTGMlgeqwO8NhTI .icon-shape,#mermaid-svg-kFTGMlgeqwO8NhTI .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-kFTGMlgeqwO8NhTI .icon-shape p,#mermaid-svg-kFTGMlgeqwO8NhTI .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-kFTGMlgeqwO8NhTI .icon-shape .label rect,#mermaid-svg-kFTGMlgeqwO8NhTI .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-kFTGMlgeqwO8NhTI .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-kFTGMlgeqwO8NhTI .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-kFTGMlgeqwO8NhTI :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 仅公开设计
已开源代码
deepseek-recipe
协议 ↔ token
DeepInfer 引擎
离线推理
算子库
FlashMLA DeepGEMM
DeepEP TileLang
3FS 文件系统
此前已开源
Entrypoint
前缀匹配 / 路由
Prefill / Decode / VE
负载均衡器
kvcache-store
KV 缓存管理
EPD 分离部署编排
4. 在生态中的位置
下图回答:DeepInfer 和 deepseek-recipe 站在什么之上、被什么使用、和谁是近邻。
#mermaid-svg-ZPCBJEltwB5nStXz{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-ZPCBJEltwB5nStXz .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-ZPCBJEltwB5nStXz .error-icon{fill:#552222;}#mermaid-svg-ZPCBJEltwB5nStXz .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ZPCBJEltwB5nStXz .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ZPCBJEltwB5nStXz .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ZPCBJEltwB5nStXz .marker.cross{stroke:#333333;}#mermaid-svg-ZPCBJEltwB5nStXz svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ZPCBJEltwB5nStXz p{margin:0;}#mermaid-svg-ZPCBJEltwB5nStXz .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-ZPCBJEltwB5nStXz .cluster-label text{fill:#333;}#mermaid-svg-ZPCBJEltwB5nStXz .cluster-label span{color:#333;}#mermaid-svg-ZPCBJEltwB5nStXz .cluster-label span p{background-color:transparent;}#mermaid-svg-ZPCBJEltwB5nStXz .label text,#mermaid-svg-ZPCBJEltwB5nStXz span{fill:#333;color:#333;}#mermaid-svg-ZPCBJEltwB5nStXz .node rect,#mermaid-svg-ZPCBJEltwB5nStXz .node circle,#mermaid-svg-ZPCBJEltwB5nStXz .node ellipse,#mermaid-svg-ZPCBJEltwB5nStXz .node polygon,#mermaid-svg-ZPCBJEltwB5nStXz .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ZPCBJEltwB5nStXz .rough-node .label text,#mermaid-svg-ZPCBJEltwB5nStXz .node .label text,#mermaid-svg-ZPCBJEltwB5nStXz .image-shape .label,#mermaid-svg-ZPCBJEltwB5nStXz .icon-shape .label{text-anchor:middle;}#mermaid-svg-ZPCBJEltwB5nStXz .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-ZPCBJEltwB5nStXz .rough-node .label,#mermaid-svg-ZPCBJEltwB5nStXz .node .label,#mermaid-svg-ZPCBJEltwB5nStXz .image-shape .label,#mermaid-svg-ZPCBJEltwB5nStXz .icon-shape .label{text-align:center;}#mermaid-svg-ZPCBJEltwB5nStXz .node.clickable{cursor:pointer;}#mermaid-svg-ZPCBJEltwB5nStXz .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-ZPCBJEltwB5nStXz .arrowheadPath{fill:#333333;}#mermaid-svg-ZPCBJEltwB5nStXz .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ZPCBJEltwB5nStXz .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ZPCBJEltwB5nStXz .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZPCBJEltwB5nStXz .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-ZPCBJEltwB5nStXz .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZPCBJEltwB5nStXz .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-ZPCBJEltwB5nStXz .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ZPCBJEltwB5nStXz .cluster text{fill:#333;}#mermaid-svg-ZPCBJEltwB5nStXz .cluster span{color:#333;}#mermaid-svg-ZPCBJEltwB5nStXz div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ZPCBJEltwB5nStXz .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-ZPCBJEltwB5nStXz rect.text{fill:none;stroke-width:0;}#mermaid-svg-ZPCBJEltwB5nStXz .icon-shape,#mermaid-svg-ZPCBJEltwB5nStXz .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZPCBJEltwB5nStXz .icon-shape p,#mermaid-svg-ZPCBJEltwB5nStXz .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-ZPCBJEltwB5nStXz .icon-shape .label rect,#mermaid-svg-ZPCBJEltwB5nStXz .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZPCBJEltwB5nStXz .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-ZPCBJEltwB5nStXz .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-ZPCBJEltwB5nStXz :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 源自
借鉴
应用 / Agent
OpenAI 或 Anthropic SDK
deepseek-recipe
你的 API 服务
负载均衡 + KV 缓存
DeepInfer
FlashMLA / DeepGEMM
DeepEP / TileKernels
DeepSelect / TileLang
英伟达 SM100
华为昇腾 950
vLLM
SGLang / TensorRT-LLM
| 近邻 | 与 DeepInfer 的区别 |
|---|---|
| vLLM | DeepInfer 最初主要基于 vLLM 构建,之后深度分叉;DeepInfer 只为 DeepSeek 模型极致优化,vLLM 追求广泛模型覆盖 |
| SGLang | DeepInfer 的异步调度借鉴了 SGLang 与 NanoFlow;SGLang 是通用引擎 |
| TensorRT-LLM | 英伟达官方闭源核心 + 开源外壳;DeepInfer 同时支持昇腾 |
| 近邻 | 与 deepseek-recipe 的区别 |
|---|---|
Hugging Face apply_chat_template + tokenizer |
Jinja 模板只管渲染,不管协议转换和流式解析;且直接对整段文本分词,用户输入里的 <|User|> 可能被当成控制 token |
| vLLM / SGLang 内置的 OpenAI 兼容层 | 通常只覆盖 Chat Completions;recipe 同时覆盖 Responses 与 Anthropic Messages,并与官方 API 行为逐字节对齐 |
5. 关键数字一览
| 指标 | 数值 | 来源 |
|---|---|---|
| 单集群日吞吐 | 155 万亿 token / 天 | 官方 Q&A |
| 单卡时收入 | 38 美元 / GPU·小时(谷时价) | 官方 Q&A |
| 模型规模 | 552B 参数 MoE;decode 每 token 激活 16B,prefill 只激活 8B | arXiv 摘要 |
| 常驻显存的全局 KV | 890 字节 / token,约为 V4-Flash 的 1/4 | arXiv 摘要 |
| 持久化 KV(SSD / 内存) | 约为 V4-Flash 的 1/8(得益于 SWA Bounded Replay) | arXiv 摘要 |
| 上下文长度 | 最长 100 万 token | arXiv 摘要 |
| Prefill 吞吐 | 约 87,000 未命中 token/秒/卡(EP4DP4,每 rank 批 32,768 token,单步约 380 ms) | 官方基准图 |
| Decode 吞吐 | 每 rank 64 并发时约 15,700 token/秒/卡、每用户约 246 token/秒(EP64,128K 上下文) | 官方基准图 |
| KV 缓存池 | 3FS 约 100 PiB SSD;Agent 流量 TTL 3 天、对话流量 7 天 | 官方 Q&A |
| 平均首 token / 生成速度 | 约 0.4 秒 / 约 230 token/秒 | 媒体转述(投资界),未见于 Q&A |
下一篇:03-concept-map.md --- 概念地图 | 返回:00 总览
📚 返回专栏目录