25,797
Stars
0
Forks
0
Watchers
0
Open Issues
未知
许可证
Python
语言
创建时间
最近更新
项目能做什么
DeepInfer 是面向 DeepSeek 模型的高性能推理框架,开源版本提供支持大规模服务所需的核心离线推理能力。
来源:AI 基于仓库事实生成
· 内容以仓库实际 README 为准
使用说明 查看原始 README 原仓库文档
{
"name": "DeepInfer",
"description": "DeepSeek 官方开源的高性能大规模模型推理框架,支撑其线上生产服务,提供离线推理及面向大规模服务优化的核心特性。",
"target_users": "拥有 NVIDIA SM100 或华为昇腾 950 等高端硬件环境,需要对 DeepSeek 系列模型(当前为 DeepSeek-V4.1-Flash)进行高性能大规模离线推理和算子调优的进阶开发者或企业团队。",
"features": [
"极致优化的底层算子:集成 FlashMLA、DeepGEMM、DeepEP、TileKernels、DeepSelect 以及定制的 TileLang 算子",
"丰富的并行策略:支持 Attention DP / balanced CP、MoE EP + EPLB",
"投机解码加速:支持 DSpark 与基于置信度调度的验证机制(confidence-scheduled verification)",
"SWA 有界回放(bounded replay):通过仅重放有界后缀减少解码预填充工作量",
"异步调度:零开销批处理调度器,CPU 批处理与硬件执行重叠运行(默认开启)",
"一致性与确定性推理:支持 Batch-invariant 推理(跨不同 batch 组合输出一致)与确定性采样(Deterministic sampling,仅限 NVIDIA)",
"结构化输出:支持通过正则表达式、JSON schema 或 EBNF 语法约束生成结果"
],
"installation": [
{
"step": 1,
"command": "# 需提前准备 Linux、GCC >= 13.0 以及纯净的 Python 3.12 虚拟环境\n# 若使用华为昇腾平台,请将 nvidia 替换为 ascend\nexport DEEPINFER_ACCELERATOR=nvidia",
"description": "配置目标加速硬件环境变量(运行 DeepInfer 时环境需保持该变量)"
},
{
"step": 2,
"command": "./build.sh",
"description": "执行源码编译脚本完成安装"
}
],
"configuration": [
{
"name": "DEEPINFER_ACCELERATOR",
"type": "string",
"default": "无",
"description": "指定底层硬件加速器类型,可选 'nvidia' 或 'ascend'。"
},
{
"name": "DEEPINFER_HF_MODEL_DIR",
"type": "string",
"default": "无(默认从 Hugging Face 自动下载 deepseek-ai/DeepSeek-V4.1-Flash-1017)",
"description": "本地模型权重目录路径,用于替代从 Hugging Face 线上下载。"
},
{
"name": "DEEPINFER_ENABLE_MTP_VARLEN",
"type": "integer",
"default": "无",
"description": "设为 1 时启用 DSpark 和基于置信度的投机解码验证。"
},
{
"name": "DEEPINFER_USE_NEXTN_DECODE",
"type": "integer",
"default": "5",
"description": "控制投机解码时的最大 draft token 长度。"
},
{
"name": "DEEPINFER_YOCO_PREFILL_TRUNCATION_MODE",
"type": "string",
"default": "无(V4.1 推荐设置为 'compact')",
"description": "设置解码器 SWA 有界回放截断模式。"
},
{
"name": "DEEPINFER_YOCO_PREFILL_KEEP_TOKENS",
"type": "integer",
"default": "无(V4.1 推荐设置为 140)",
"description": "设置有界回放保留的后缀 token 数量,必须覆盖 SWA 窗口加上最大回溯长度。"
},
{
"name": "DEEPINFER_BATCH_INVARIANT",
"type": "integer",
"default": "无",
"description": "设为 1 时启用 Batch-invariant 推理,确保不同 batch 组合输出一致(仅限 NVIDIA)。"
}
],
"faq": [
{
"question": "DeepInfer 支持哪些硬件和模型?",
"answer": "模型目前支持 DeepSeek-V4.1-Flash。硬件仅支持 NVIDIA SM100 GPU(需 CUDA 13)和华为昇腾 Ascend 950 NPU(需 CANN 9.2)。"
},
{
"question": "可以直接用它搭建完整的生产级线上 API 推理服务吗?",
"answer": "当前开源版本主要提供离线推理功能。搭建完整在线推理服务所需的部分组件(如独立的 KV cache 系统、Prefill/Decode 分离架构的完整服务串联、Prefill 和 Decode 副本间的数据并行负载均衡等)本版本暂未包含。"
},
{
"question": "如何进行结构化输出和确定性采样?",
"answer": "确定性采样需设置环境变量 DEEPINFER_BATCH_INVARIANT=1 DEEPINFER_ENABLE_MTP_VARLEN=0,并在 SamplingParams 中传入固定的 seq_seed(仅限 NVIDIA);结构化输出需在 SamplingParams 中配置 so_args={\"schema_type\": ..., \"schema\": ...}。"
},
{
"question": "如何运行离线推理示例?",
"answer": "配置好环境后执行命令:python examples/offline_inference.py 即可。若已下载模型,可先设置 DEEPINFER_HF_MODEL_DIR=/path/to/DeepSeek-V4.1-Flash-1017。"
}
],
"quick_start_markdown": "## 项目简介\n\nDeepInfer 是支撑 DeepSeek 大规模线上生产服务的高性能模型推理框架。当前开源版本提供了离线推理能力以及大规模服务所需的关键核心技术。\n\n**当前支持模型:**\n- DeepSeek-V4.1-Flash\n\n**支持硬件:**\n- NVIDIA SM100 GPUs (CUDA 13)\n- 华为昇腾 Huawei Ascend 950 NPUs (CANN 9.2)\n\n> **注意(完整服务说明):** 构建完整推理服务所需的组件(如 KV cache 系统、VE/Prefill/Decode 分离架构以及数据并行副本间的负载均衡)此版本尚未包含。\n\n## 核心功能\n\n- **算子与运行时深度优化:** 包含 FlashMLA、DeepGEMM、DeepEP、TileKernels、DeepSelect 以及专用 TileLang 算子。\n- **先进并行架构:** 支持 Attention DP / balanced CP、MoE EP + EPLB。\n- **DSpark 与置信度调度验证:** 借助草稿 token 加速解码,并利用置信度评估进行验证调度。\n- **Decoder SWA 有界回放:** 仅重放有界后缀,降低解码预填充阶段开销。\n- **异步调度机制:** CPU 批处理调度与计算设备执行并行重叠,默认开启且零开销。\n- **Batch-invariant 与确定性推理:** 消除批次组合对输出结果的影响(仅限 NVIDIA)。\n- **结构化输出约束:** 允许通过正则表达式、JSON Schema 或 EBNF 语法强制规范模型输出。\n\n## 适合谁用\n\n拥有 NVIDIA SM100 或华为昇腾 950 硬件,且需要对 DeepSeek 系列模型进行极高吞吐量离线推理、算子实验或架构探索的系统级开发人员。\n\n## 安装步骤\n\n### 环境要求\n- Linux 系统\n- GCC >= 13.0\n- Python 3.12 纯净环境\n- CUDA 13(NVIDIA 平台)或 CANN 9.2(Ascend 平台)\n\n### 源码编译安装\n\n在激活的 Python 3.12 环境中运行:\n\n```bash\n# 若在昇腾平台运行,请将 nvidia 改为 ascend;运行时也需维持该环境变量\nexport DEEPINFER_ACCELERATOR=nvidia\n./build.sh\n```\n\n### 离线推理测试\n\n首次运行会自动下载 Hugging Face 权重 `deepseek-ai/DeepSeek-V4.1-Flash-1017`;若已有本地文件,请配置本地路径后运行:\n\n```bash\n# 可选:指定本地权重路径\n# export DEEPINFER_HF_MODEL_DIR=/path/to/DeepSeek-V4.1-Flash-1017\n\npython examples/offline_inference.py\n```\n\n## 配置说明\n\n通过环境变量或参数传入控制框架行为:\n\n- `DEEPINFER_ACCELERATOR`:硬件后端,设为 `nvidia` 或 `ascend`。\n- `DEEPINFER_HF_MODEL_DIR`:模型权重本地目录路径。\n- `DEEPINFER_ENABLE_MTP_VARLEN=1`:开启 DSpark 和投机解码验证。\n- `DEEPINFER_USE_NEXTN_DECODE`:最大 draft 长度(默认值为 `5`)。\n- `DEEPINFER_YOCO_PREFILL_TRUNCATION_MODE=compact` 与 `DEEPINFER_YOCO_PREFILL_KEEP_TOKENS=140`:V4.1 默认设置下的 SWA 有界回放配置。\n- `DEEPINFER_BATCH_INVARIANT=1`:开启批次无关推理(仅 NVIDIA)。\n- 确定性采样设置:配置 `DEEPINFER_BATCH_INVARIANT=1 DEEPINFER_ENABLE_MTP_VARLEN=0` 并在调用 `SamplingParams` 时指定固定 `seq_seed`。\n- 结构化输出设置:在 `SamplingParams` 中传递 `so_args={\"schema_type\": ..., \"schema\": ...}`。\n\n## 常见问题\n\n- **问:支持消费级显卡(如 RTX 4090)或其他数据中心 GPU(如 H100/A100)吗?** \n 答:原文明确支持的硬件仅列出了 NVIDIA SM100 GPUs 与 Huawei Ascend 950 NPUs,其他硬件支持情况请查看原仓库动态。\n- **问:如何复现官方 Benchmark 性能数据?** \n 答:请参阅仓库提供的脚本 `examples/sweep/run_sweep.sh`,更多评测细节可参考 `eval/README.md`。"
}
原始 README 摘录(英文原文,节选前 3000 字符)
# DeepInfer
DeepInfer is the high-performance inference framework that powers DeepSeek's large-scale production services. This open-source release provides offline inference with the core features needed for serving at scale.
Supported models:
- DeepSeek-V4.1-Flash
Supported features:
- Optimized kernels, model and sampler runtime
- Parallelism: Attention DP / balanced CP, MoE EP + EPLB
- DSpark and confidence-scheduled verification
- SWA bounded replay
- Asynchronous scheduling (zero-overhead batch scheduler)
- Batch-invariant inference
- Deterministic sampling
- Structured outputs
<details>
<summary>Feature details and configuration</summary>
- **Optimized kernels:** [FlashMLA](https://github.com/deepseek-ai/FlashMLA), [DeepGEMM](https://github.com/deepseek-ai/DeepGEMM), [DeepEP](https://github.com/deepseek-ai/DeepEP), [TileKernels](https://github.com/deepseek-ai/TileKernels), [DeepSelect](https://github.com/deepseek-ai/DeepSelect), and custom [TileLang kernels](deepinfer/model_executor/layers/tilelang_ops).
- **DSpark and confidence-scheduled verification:** accelerate decoding with draft tokens and use confidence estimates to schedule verification. Set `DEEPINFER_ENABLE_MTP_VARLEN=1`; `DEEPINFER_USE_NEXTN_DECODE` controls the maximum draft length (default: 5).
- **Decoder SWA bounded replay:** reduce decoder prefill work by replaying only a bounded suffix. Set `DEEPINFER_YOCO_PREFILL_TRUNCATION_MODE=compact` and `DEEPINFER_YOCO_PREFILL_KEEP_TOKENS=140` for the default V4.1 settings; the retained suffix must cover the SWA window plus the maximum backtracking length.
- **Asynchronous scheduling:** overlap CPU batch scheduling with device execution. Enabled by default.
- **Batch-invariant inference:** keep model results identical across different batch compositions. Enable with `DEEPINFER_BATCH_INVARIANT=1` (NVIDIA only).
- **Deterministic sampling:** produce identical outputs for identical input tokens and sampling parameters. Set `DEEPINFER_BATCH_INVARIANT=1 DEEPINFER_ENABLE_MTP_VARLEN=0` and pass a fixed `seq_seed` to `SamplingParams` (NVIDIA only).
- **Structured outputs:** constrain generation to a regex, JSON schema, or EBNF grammar. Pass `so_args={"schema_type": ..., "schema": ...}` to `SamplingParams`; see [examples](examples/_structured_output.py).
</details>
Supported hardware:
- NVIDIA SM100 GPUs
- Huawei Ascend 950 NPUs
Required for a complete inference service (not included in this release):
- A KV cache system
- VE/Prefill/Decode disaggregation (most required engine functionality is already implemented)
- Load balancing across data-parallel replicas for both prefill and decode
## Getting started
### Prerequisites
- Linux
- GCC >= 13.0
- Python 3.12
- CUDA 13 (NVIDIA only)
- CANN 9.2 (Ascend only)
### Build from source
Before building DeepInfer, please create and activate an empty Python 3.12 environment.
``` bash
# Use `ascend` instead for the Ascend platform
# Keep it exported in the environment where you run Dee
阅读完整原文
商业机会分析 AI 生成
DeepInfer 生产级分布式服务调度与网关套件
| 产品构想 | 针对官方README中明确未提供的KV Cache系统、Prefill/Decode分离架构及数据并行负载均衡进行补充开发,封装成即插即用、提供OpenAI兼容接口的高可用在线推理服务系统。 |
| 核心功能 | 分布式KV Cache管理服务、Prefill/Decode解耦路由器与调度网关、跨副本动态负载均衡、OpenAI标准API兼容层。 |
| 目标用户 | 拥有SM100或昇腾950集群、希望将DeepInfer落地为高并发线上API的云厂商及企业Infra团队。 |
| 难度/周期 | 极高 · 3-6个月 · 成本:极高(需要对应昂贵硬件环境SM100/Ascend 950进行分布式联调与压测) |
| 收费模式 | 企业级商业授权费(按集群GPU/NPU节点数阶梯计费)+ 架构定制交付服务费。 |
| 竞争风险 | 官方后续版本可能直接开源这部分缺失的服务端组件,导致第三方套件失去技术壁垒。 |
| 依据 | 已验证事实 |
华为昇腾950平台 DeepInfer 落地与性能工程咨询服务
| 产品构想 | 依托项目对华为Ascend 950和CANN 9.2的原生支持,为国内信创及国资算力中心提供DeepSeek前沿架构在国产NPU上的编译部署、算子调优与压测交付。 |
| 核心功能 | CANN 9.2环境依赖配置与自动化部署脚本、针对Ascend 950的底层算子极致调优、多卡/集群吞吐量调优方案、稳定性压测报告。 |
| 目标用户 | 采购了华为昇腾950硬件的政府智算中心、国产化云服务商、央国企AI研发部门。 |
| 难度/周期 | 高 · 1-3个月 · 成本:高(依赖昇腾950开发机及测试集群访问权限) |
| 收费模式 | 项目制技术咨询费、驻场/远程实施交付费、年度维保服务费。 |
| 竞争风险 | 华为自研MindIE等官方框架可能存在直接竞争;Ascend 950硬件实际供货量及扩散速度受限(推测)。 |
| 依据 | 数据支持的判断 |
超高吞吐离线数据合成与结构化批处理平台
| 产品构想 | 利用现成的高性能离线推理能力、确定性采样(Deterministic sampling)以及结构化输出(Structured outputs)特性,打造针对大模型训练数据生成的极速批处理工具。 |
| 核心功能 | 海量离线Prompt切片调度引擎、EBNF/JSON Schema结构化输出校验流水线、确定性批处理结果重现工具包、多卡批处理吞吐监控面板。 |
| 目标用户 | 从事大模型合成数据生成、代码生成评测、海量数据离线清洗与标注的数据工程团队。 |
| 难度/周期 | 中等 · 1-2个月 · 成本:中等(离线开发难度相对在线服务调度较低,但仍需匹配对应硬件) |
| 收费模式 | 离线工具私有化授权费、按合成数据Token处理量收取软件服务费或技术支持费。 |
| 竞争风险 | 下游客户缺乏SM100/Ascend 950硬件导致无法使用;客户更倾向于直接租用第三方现成的API进行数据合成(推测)。 |
| 依据 | 已验证事实 |
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心
竞品与相似项目 GitHub Search 真实检索
| 项目 | 中文简介 | Stars | 语言 |
|---|---|---|---|
| HalfVulpes/Deepinfer-SM80 | 面向 SM80 Ampere 架构实现的 Deepinfer 推理项目。 | 199 | Python |
| ZiyuanDu/deepinfer-unpacked | 包含原理解析、文档与实践示例的 DeepInfer 学习社区项目。 | 148 | Python |
| justkyriecai/nanovllm2deepinfer | 从 nano-vllm 逐步演进构建 DeepInfer 的推理引擎学习项目。 | 46 | Python |
| AkiYangDev/mini-deepinfer | 支持在 CPU 及昇腾 910C 上运行 Qwen3.5 的轻量学习型推理引擎。 | 30 | Python |
| algebra-MCX/DeepInfer-Lab | 用于 DeepInfer 系统研究、正确性验证与端到端优化的开放实验项目。 | 29 | Python |
| DeepInfer/Slicer-DeepInfer | 用于连接模型库并调用模型进行图像分析的 3D Slicer 模块。 | 27 | Python |
以上为通过 GitHub 官方 Search API 检索的相似项目,功能差异与优劣势需进一步人工确认,配置 AI 后可生成对比分析。
项目优势与风险
| 技术成熟度 | 创建于 ,最近推送 |
| 社区活跃 | Star 25,797 / Fork 0 / Issue 0(数据支持,可自行核实) |
| 许可证 | 未检测到(需人工确认) |
| 主要风险 | 上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价 |
安装与使用
快速开始(以仓库 README 为准)
git clone https://github.com/deepseek-ai/DeepInfer.git cd DeepInfer # 请阅读仓库 README 获取确切安装步骤(依赖、配置、启动命令)
术语说明:Docker=应用容器(把程序和依赖打包运行);API Key=调用外部服务的密钥;Git Clone=把仓库代码下载到本地。常见错误:API Key 未配置 / 端口占用 / 数据库连接失败,多数项目在 README 的 Troubleshooting 章节有说明。