
今日,AI研究团队正式发布Olmo-core 3,这是其大型语言模型开发框架的重大升级版本。该版本核心在于一套重新设计的开放混合专家(MoE)训练系统,旨在将MoE训练扩展至万亿参数级别,同时保持计算效率。
Olmo-core 3是下一代Olmo模型的核心基础设施之一。团队表示,此举延续了其公开每个新模型背后工具和训练基础设施的承诺,以降低学术研究人员和小型实验室接触先进模型开发的门槛。
重构训练栈,突破MoE扩展瓶颈
尽管MoE模型能通过仅激活部分参数来提升效率,但随着规模扩大,GPU内存占用及集群间的通信协调成本可能侵蚀其计算优势。Olmo-core 3专为解决这一痛点而构建。
在基准测试中,团队将专家池从8个扩展至128个,每个令牌仅选择四个专家,使活跃参数固定在约32亿。结果显示,总参数容量从46亿增长至470亿,而训练吞吐量下降不到5%。同一基础设施已在超过一万亿总参数的规模下完成基准测试。
技术架构方面,Olmo-core 3从此前的完全分片数据并行性(FSDP)切换至基于分布式数据并行性(DDP)的系统。新架构将专家保留在GPU上并直接路由相关数据,避免了重复的权重收集过程。在八块NVIDIA B300 GPU上的测试显示,470亿参数MoE模型的吞吐量达到每GPU每秒52,000个令牌,较早期实现的19,400个提升了约2.7倍。
多重优化技术协同,支持MXFP8精度
为实现高效扩展,Olmo-core 3整合了三项关键技术:
- 专家并行性:将专家分散至不同GPU,各GPU仅存储部分专家池。
- 流水线并行性:将模型层拆分至GPU组,减少单卡内存占用。
- 分布式优化器:分散优化器状态,避免在每个GPU存储完整副本。
此外,系统引入了按行专家并行性以最小化数据重排,采用GPU驻留路由让CPU无需等待元数据复制即可排队工作,并通过分组GEMM合并小计算任务以提升GPU执行效率。
Olmo-core 3还支持MXFP8低精度格式。在四块NVIDIA B300 GPU的受控测试中,启用MXFP8后,相比BF16基线,训练吞吐量提升约21%,峰值活跃内存从103 GiB降至95 GiB。增益主要来源于前馈计算及专家间数据移动的优化。
万亿参数规模验证与实验发现
在NVIDIA B300 GPU集群上,团队对Olmo-core 3进行了多配置基准测试。在一个拥有1.2万亿总参数的模型配置中(512块GPU,每令牌583.6亿活跃参数),观察到的最高吞吐量为858 TFLOP/s/GPU。团队还尝试使用DeepEP v2处理GPU间通信,达到了2.38万亿总参数的配置规模,但这仅为短期容量测试,非完整训练运行。
技术报告还披露了多项实验发现:
- 即使实际工作负载不平衡,旨在鼓励平衡路由的评分指标仍可能改善,团队将此现象称为令牌杰利蝾螈(token gerrymandering)。
- 因处理令牌较少而降低专家学习率,并未在测试模型家族中改善结果。
- GPU计算耗时受输入数值影响,即便矩阵维度相同,性能比较需匹配输入值和形状。
- 在单独GPU流上重叠通信和计算并不总能加速训练,某些情况下反而减缓端到端执行。
赋能下一代Olmo,坚持开源路径
Olmo-core 3是下一代Olmo模型的基础。据悉,下一代Olmo将采用MoE架构,计划在最大数据集上训练,并具备更长的上下文窗口,目标是成为迄今为止最强大的Olmo模型。
该训练栈完全开放,研究人员和开发者可利用Olmo-core 3训练自有MoE模型,适配不同硬件,并对路由、并行性等系统进行实验。团队强调,只有当支撑模型权重的基础设施和训练决策同样开放时,模型权重的价值才能最大化。
目前,相关技术报告已在GitHub上线,供社区探索Olmo-core 3的系统设计与实验细节。