开源推理引擎演进史:DeepSeek Open Infra Index从内部工具到社区项目的蜕变

开源推理引擎演进史:DeepSeek Open Infra Index从内部工具到社区项目的蜕变

【免费下载链接】open-infra-index 【免费下载链接】open-infra-index 项目地址: https://gitcode.com/gh_mirrors/op/open-infra-index

你是否正在为大模型部署的高成本和低效率而困扰?是否在寻找既能提升吞吐量又能降低延迟的解决方案?本文将带你深入了解DeepSeek推理引擎从内部工具到开源社区项目的蜕变历程,揭示其如何通过创新的系统设计解决大规模模型推理的核心挑战。读完本文,你将掌握Expert Parallelism(专家并行)的优化策略、通信计算重叠技术的实现方式,以及开源项目协作的最佳实践。

项目背景与开源决策

DeepSeek推理引擎的开源之旅始于202502OpenSourceWeek期间,当时团队决定将内部开发的推理系统贡献给开源社区。这一决策源于社区对先前开源库的积极响应,包括富有成效的合作、讨论和错误修复。然而,直接开源完整的内部引擎面临三大挑战:

  • 代码库分歧:引擎基于一年前vLLM的早期分支开发,经过深度定制以适配DeepSeek模型,难以扩展到更广泛的使用场景
  • 基础设施依赖:与内部集群管理工具等基础设施紧密耦合,不经过重大修改无法公开部署
  • 维护资源有限:小型研究团队专注于模型开发,缺乏维护大型开源项目的带宽

最终,团队选择了更可持续的协作方式:通过模块化提取独立功能、分享优化设计和实现细节,与现有开源项目紧密合作。这一策略在OpenSourcing_DeepSeek_Inference_Engine/README.md中有详细阐述,确保社区能够从模型发布首日起获得最先进的支持。

推理系统设计原则

DeepSeek-V3/R1推理服务的优化目标是更高吞吐量和更低延迟。为实现这两个目标,系统采用了跨节点Expert Parallelism(专家并行),并解决了由此带来的通信开销和负载均衡挑战。

大规模跨节点专家并行

DeepSeek-V3/R1模型每层包含256个专家,但仅激活其中8个,这种高度稀疏性要求极大的整体批处理规模。系统通过大规模跨节点专家并行解决这一问题,并在预填充和解码阶段采用不同的并行度:

  • 预填充阶段:采用Routed Expert EP32和MLA/Shared Expert DP32,每个部署单元跨越4个节点,包含32个冗余路由专家,每个GPU处理9个路由专家和1个共享专家
  • 解码阶段:采用Routed Expert EP144和MLA/Shared Expert DP144,每个部署单元跨越18个节点,每个GPU管理2个路由专家和1个共享专家

这种架构既显著提升了GPU矩阵计算效率(提高吞吐量),又减少了内存访问需求(降低延迟)。

通信计算重叠技术

专家并行虽然解决了批处理规模问题,但引入了显著的跨节点通信开销。系统通过双批处理重叠策略将通信成本隐藏在计算过程中:

在预填充阶段,将一批请求拆分为两个微批交替执行,一个微批的通信与另一个微批的计算重叠进行:

预填充阶段通信计算重叠

在解码阶段,由于不同阶段的执行时间不平衡,系统将注意力层细分为两个步骤,并使用5阶段流水线实现无缝的通信计算重叠:

解码阶段通信计算重叠

这些优化使系统能够在处理大规模请求时保持高效的资源利用率。

负载均衡策略

大规模并行架构(包括Data Parallelism和Expert Parallelism)带来了负载均衡的挑战。系统通过三级负载均衡器确保所有GPU的计算和通信负载均匀分布:

Prefill Load Balancer

  • 核心问题:不同DP实例的请求数量和序列长度变化导致核心注意力计算和调度发送负载不平衡
  • 优化目标:平衡GPU间的核心注意力计算,均衡每个GPU的输入令牌数量

Decode Load Balancer

  • 核心问题:请求数量和序列长度差异导致KVCache使用和调度发送负载不均衡
  • 优化目标:平衡GPU间的KVCache使用,均衡每个GPU的请求数量

Expert-Parallel Load Balancer

  • 核心问题:MoE模型中存在固有的高负载专家,导致不同GPU间的专家计算工作量不平衡
  • 优化目标:平衡每个GPU上的专家计算,最小化所有GPU的最大调度接收负载

系统架构与性能指标

DeepSeek推理系统的整体架构如图所示,整合了上述所有优化策略:

DeepSeek在线推理系统架构

该系统部署在H800 GPU上,采用与训练一致的精度设置:矩阵乘法和调度传输采用FP8格式,核心MLA计算和组合传输使用BF16格式。根据24小时统计数据(UTC+8 02/27/2025 12:00 PM至02/28/2025 12:00 PM),系统表现出令人印象深刻的性能指标:

  • 峰值节点占用率达278个H800节点(每个节点含8个GPU)
  • 预填充阶段平均吞吐量约73.7k tokens/s输入,解码阶段约14.8k tokens/s输出
  • 平均输出速度为20-22 tokens/秒,每个输出令牌的平均KVCache长度为4,989 tokens

推理服务H800节点数量统计

从成本效益角度看,假设所有令牌均按DeepSeek-R1的定价计费,理论日收入可达$562,027,成本利润率为545%。实际收入虽因V3更低定价、部分服务免费和夜间折扣而降低,但仍展示了系统的高效性:

成本与理论收入对比

开源之路与社区协作

DeepSeek推理引擎的开源并非简单的代码发布,而是采用了可持续的协作策略。团队决定不直接开源完整的内部引擎,而是通过以下方式与现有开源项目合作:

  1. 提取独立功能:将可重用组件模块化并作为独立库贡献
  2. 分享优化技术:直接贡献设计改进和实现细节

这一策略既避免了维护大型独立项目的负担,又确保了社区能够从DeepSeek的创新中获益。项目文档OpenSourcing_DeepSeek_Inference_Engine/README.md详细阐述了这一 approach,并承诺在新模型发布前主动同步推理相关的工程工作,确保社区从发布首日起就能获得最先进的支持。

总结与展望

DeepSeek推理引擎从内部工具到开源项目的演进,展示了企业级技术如何通过社区协作实现价值最大化。其创新的Expert Parallelism设计、通信计算重叠技术和负载均衡策略,为解决大规模模型推理的效率问题提供了可行方案。随着开源生态的不断发展,我们期待看到更多创新的优化技术和更广泛的硬件平台支持,共同推动AGI能力在各种应用场景中的无缝部署。

官方文档:README.md 技术详解:DeepSeek-V3/R1推理系统概述 开源计划:OpenSourcing_DeepSeek_Inference_Engine

如果你对项目感兴趣,可以通过以下命令获取代码库:

git clone https://gitcode.com/gh_mirrors/op/open-infra-index

【免费下载链接】open-infra-index 【免费下载链接】open-infra-index 项目地址: https://gitcode.com/gh_mirrors/op/open-infra-index

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值