继昨天开源Flash MLA后,DeepSeek今日向公众开源了DeepEP——第一个用于MoE模型训练和推理的开源EP通信库。
据介绍,DeepEP是一个用于MoE(混合专家)模型训练和推理的EP(Expert Parallelism)通信库,它为所有GPU内核提供高吞吐量和低延迟,也称为MoE调度和组合。该库还支持低精度操作,包括FP8。
同时,DeepEP针对NVLink(NVLink是英伟达开发的高速互联技术,主要用于GPU之间的通信,提升带宽和降低延迟)到RDMA(远程直接内存访问,一种网络数据传输技术?,用于跨节点高效通信)的非对称带宽转发场景进行了深度优化,不仅提供了高吞吐量,还支持SM(Streaming Multiprocessors)数量控制,兼顾训练和推理任务的高吞吐量表现。
对于对延迟敏感的推理解码,DeepEP包含一组低延迟内核和纯RDMA,以最大限度地减少延迟。该库还引入了一种基于钩子的通信计算重叠方法,该方法不占用任何SM资源。
关于DeepEP开源对行业的有何作用,小编询问了DeepSeek,DeepSeek给出了回答:
提升MoE模型训练效率:DeepEP通过优化专家并行通信,显著提升MoE模型的训练速度和资源利用率。
简化开发流程:提供高效的通信接口,开发者无需从头实现复杂的并行逻辑,降低开发难度。
支持大规模分布式训练:DeepEP支持大规模分布式训练,便于处理超大规模MoE模型。
分析称,MoE是一种特殊的模型架构,它将神经网络分成多个“专家”子网络,但在每个计算步骤中,模型只会激活其中的几个专家。这样可以提高模型的效率,因为它避免了每个专家都参与每次计算。
假设你有一个MoE模型,在每次训练过程中,你的模型需要激活其中的4个专家,每个专家位于不同的GPU上。你要通过DeepEP来协调数据的调度和合并。当你有一批输入数据时,DeepEP会决定将这些数据分配到哪些专家上。如果数据量大,DeepEP通过NVLink在本地GPU之间传输数据,或者通过RDMA在不同的机器之间传输数据。一旦每个专家完成计算,DeepEP会合并来自不同专家的结果。如果你的模型有多个计算节点,DeepEP会确保它们之间的合并过程是高效的,并且不会引发带宽瓶颈。在推理时,DeepEP会使用专门优化的低延迟内核进行数据传输,确保你在运行预测时可以尽可能快地获取结果。
另外,DeepSeek已重新开放API充值。DeepSeek-Chat模型优惠期结束,调用价格已变更为每百万输入tokens2元,每百万输出tokens8元。此前因资源紧张,DeepSeek曾一度停止充值。