DeepSeek开源周大汇总:解锁AI开发的6个宝藏项目及其应用场景

在人工智能领域,DeepSeek 凭借其卓越的技术实力和创新精神,已然成为备受瞩目的存在。其推出的大模型以高性价比、强大性能著称,在全球范围内收获了广泛关注与认可,更是在 140 多个国家的 App Store 下载排行榜中登顶 ,彰显出强大的市场吸引力。

而 DeepSeek 开源周的举办,无疑是 AI 领域的一次重磅事件,它为全球开发者搭建了一个交流与合作的优质平台,旨在毫无保留地分享技术成果,全力推动 AI 技术的广泛应用与创新发展。在这意义非凡的一周里,DeepSeek 接连开源多个极具价值的项目,涵盖了优化并行策略、数据处理工具等多个关键领域,为 AI 开发者提供了极为丰富且实用的资源。

一、FlashMLA:显卡潜力 “加速器”

在 2 月 24 日开源周首日,DeepSeek 率先开源的 FlashMLA,犹如一颗投入 AI 技术湖面的石子,激起千层浪。它是专门针对 Hopper GPU 精心优化的高效 MLA 解码内核,主要应用于大型语言模型(LLM)的推理任务,在自然语言处理(NLP)场景中表现出色。

在 AI 处理任务时,不同长度的文本就像是大小各异的包裹,传统处理方式如同用固定大小的筐子去装,遇到小包裹会浪费大量空间,处理大包裹又得分筐装,效率十分低下。而 FlashMLA 则像一套智能分拣系统,能依据文本长度动态分配算力,避免资源的白白浪费。 当 AI 进行文本翻译时,遇到简短的句子,它会合理调配较少的算力;若碰上长篇幅的文档,又能及时分配更多算力,实现资源的精准利用。

DeepSeek 通过实测表明,在 H800 SXM5 平台(CUDA12.6 )上,FlashMLA 在内存受限配置下最高可达 3000GB/s ,在计算受限配置下可达峰值 580TFLOPS,性能提升十分显著。凭借这样出色的表现,它能显著加速大语言模型的解码进程,进而提升模型的响应速度和吞吐量,这对聊天机器人、文本生成等实时生成任务而言至关重要。 从实际应用效果来看,采用 FlashMLA 后,聊天机器人的回复延迟大幅降低,与用户的交互更加流畅自然;文本生成任务中,生成速度明显加快,能够更快地满足用户的创作需求 。

二、DeepEP:大模型训练的 “通信管家”

2 月 25 日,DeepSeek 开源了 DeepEP,这是首个用于 MoE 模型训练和推理的开源 EP 通信库,一经推出便备受瞩目。在 MoE 模型中,不同的专家模型就像是一个个独立工作的小团队,它们各自擅长处理特定类型的任务 。而 DeepEP 就如同一位出色的通信管家,负责协调这些专家模型之间的通信,确保它们能够高效协作。

在以往的 MoE 模型训练和推理过程中,专家模型之间的通信效率较低,数据传输延迟大,这就好比团队成员之间沟通不畅,严重影响了工作效率。而 DeepEP 通过优化通信算法,实现了高效且优化的全对全通信,大大提高了数据传输的速度和效率,降低了延迟,让专家模型之间的协作更加顺畅。同时,它在节点内和节点间均支持 NVLink 和 RDMA,这两种技术就像是高速公路和高铁,分别为节点内和节点间的通信提供了高速通道,进一步提升了通信的速度和稳定性。

DeepEP 还原生支持 FP8 低精度运算调度,这使得它在处理数据时能够以更低的精度进行计算,从而节省大量的算力资源 。在训练和推理过程中,它拥有用于训练和推理预填充的高吞吐量内核,能够快速完成数据的准备工作;用于推理解码的低延迟内核,又能确保在推理时快速得出结果,为模型的高效运行提供了有力保障。

三、DeepGEMM:矩阵计算的 “省电小能手”

2 月 26 日,DeepSeek 开源的 DeepGEMM,同样在 AI 领域激起了层层浪花。它是一个专注于 FP8 高效通用矩阵乘法(GEMM)的库 ,主要应用于 AI 模型训练和推理中的矩阵计算任务。在 AI 模型的运行过程中,矩阵乘法是最为核心的运算之一,就如同人体的心脏,为整个模型的运行提供动力 。然而,传统的矩阵计算方式在效率和精度上存在一定的局限性,就像一辆动力不足且油耗高的汽车。

而 DeepGEMM 创新性地采用了 FP8 低精度计算方式,这种方式就像是给汽车换上了一台高效节能的发动机,在减少数据位数的同时,大幅提升了计算速度 。并且,针对英伟达 Hopper 架构 GPU 的张量核心在进行 FP8 计算时累加不够精确的问题,DeepGEMM 采用了 CUDA 核心的两级累加技术,就像给发动机配备了一个精准的调校系统,确保计算结果的准确性。 同时,它还支持普通矩阵计算以及混合专家(MoE)分组场景下的计算需求,通过动态优化资源分配,显著提升了算力效率。

在实际应用中,DeepGEMM 的优势尽显。它能让大模型在训练和推理时,以更低的能耗完成矩阵计算任务,大大降低了对硬件资源的需求,就像是让一台普通电脑也能拥有超级计算机的计算能力 。而且,DeepGEMM 基于 CUDA 开发,采用轻量级即时编译(JIT)模块,支持运行时动态编译内核,无需提前完成编译和安装,极大地简化了使用流程,让开发者能够更便捷地将其应用到项目中。

四、DualPipe 与 EPLB:解决并行难题的利器

2 月 27 日,DeepSeek 在开源周第四天放出 “双响炮”,开源了 DualPipe 和 EPLB。DualPipe 是一种用于 V3/R1 训练中计算 - 通信重叠的双向管道并行算法,它就像是一位优秀的交通调度员,致力于解决流水线并行中的 “等待时间” 问题。在传统的流水线并行中,不同任务步骤的速度常常不一致,就像道路上的车辆行驶速度有快有慢,容易出现 “流水线气泡”,导致设备在某些时刻处于空闲等待状态,造成资源的浪费 。

而 DualPipe 通过创新的双向调度设计,将前向计算和反向计算解耦为两个独立的管道,让它们并行执行。这就好比在同一条道路上设置了双向车道,车辆可以同时双向行驶,极大地减少了流水线停滞现象,实现了计算与通信的重叠,显著提高了计算资源的利用率。经实践验证,DualPipe 能有效降低内存峰值需求,使训练速度大幅提升,让模型训练能够更加高效地进行。

EPLB 则是一种用于 V3/R1 的专家并行负载平衡器,主要用于自动平衡 GPU 负载。在 MoE 模型中,不同的专家模型被分配到不同的 GPU 上执行任务,然而,由于不同专家的负载会根据当前工作负载的变化而变化,就像不同的工人承担的工作量不同,容易出现某些 GPU 任务过重,而另一些 GPU 却闲置的情况,导致资源分配不均 。

EPLB 基于混合专家(MoE)架构,采用冗余专家策略,通过复制高负载专家,并运用启发式分配算法,将复制的专家合理地分配到各个 GPU 上,确保不同 GPU 之间的负载平衡。同时,它既支持单个节点的分层负载管理,也能实现跨节点的全局负载平衡,减少 GPU 的闲置。此外,EPLB 还能通过调整专家分布,降低节点间通信数据量,进一步提升整体训练效率,让 GPU 资源得到充分且合理的利用 。

五、3FS:数据处理的 “极速组合”

2 月 28 日,开源周的最后一天,DeepSeek 开源的 3FS(Fire-Flyer File System),为整个开源周画上了一个圆满的句号。3FS 是一种并行文件系统,它就像是一个超级高效的数据传输通道,充分利用现代 SSD 和 RDMA 网络的全部带宽,极大地加速和推动了 DeepSeek 平台上所有数据访问操作 。

在当今的 AI 训练中,数据量呈爆炸式增长,传统的文件系统就像狭窄的乡间小道,难以满足海量数据的快速传输需求,成为了 AI 训练的瓶颈。而 3FS 则像是一条八车道的高速公路,专为海量数据训练而设计。在 180 节点集群中,它的聚合读取吞吐量高达 6.6TiB/s ,在 25 节点集群中 GraySort 基准测试的吞吐量为 3.66TiB / 分钟 ,每个客户端节点的 KVCache 查找峰值吞吐量超过 40GiB/s ,这些惊人的数据充分展示了它在数据处理速度上的卓越表现。

展开阅读全文

本文系作者在时代Java发表,未经许可,不得转载。

如有侵权,请联系nowjava@qq.com删除。

编辑于

关注时代Java

关注时代Java