Post-Training on PAI (1):一文览尽开源强化学习框架在PAI平台的应用

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: Post-Training(即模型后训练)作为大模型落地的重要一环,能显著优化模型性能,适配特定领域需求。相比于 Pre-Training(即模型预训练),Post-Training 阶段对计算资源和数据资源需求更小,更易迭代,因此备受推崇。近期,我们将体系化地分享基于阿里云人工智能平台 PAI 在强化学习、模型蒸馏、数据预处理、SFT等方向的技术实践,旨在清晰地展现 PAI 在 Post-Training 各个环节的产品能力和使用方法,欢迎大家随时交流探讨。

DeepSeek-R1 通过 "Aha Moment" 场景的成功实践,充分验证了强化学习技术在大模型对齐领域的核心价值。这一突破推动开源社区迎来强化学习框架的创新热潮,各类工具如雨后春笋般涌现。

阿里云人工智能平台 PAI 深度拥抱开源生态,训练平台 PAI-DLC 全面整合主流强化学习框架与工具链,同时依托平台独有的大规模分布式训练能力, 极致性能优化及企业级稳定性保障,为企业及开发者构建起高效的云上技术桥梁。通过 PAI 平台,用户可轻松实现强化学习技术与模型能力的深度融合,在对话交互、决策优化等多场景中释放技术潜力,加速 AI 应用的产业落地进程。

下面将分别介绍业内主流的强化学习开源框架,及其在 PAI-DLC 如何方便快捷的使用。


一、Cosmos-RL

Cosmos-RL 是 NVIDIA 提供一款全新的纯异步高鲁棒性的 LLM 强化学习训练框架 ¹ ,在训练效率和容错能力上相较目前主流的框架都有明显提升, 其框架特点:

  • 训练效率方面,主流的 colocated 结构的框架(如 VeRL,OpenRLHF 等)受限于在相同资源上进行 policy 和 rollout 切换,导致资源利用率低,GPU 等待时间长。Cosmos-RL 将 policy 训练,rollout 推理使用异构部署的方式组网,并通过 controller 调度分发请求来实现异步并行,在保障训练精度的前提下实现了全链路异步训练,训练速度是传统框架的2-3倍。
  • 训练容错方面,Cosmos-RL 全新设计了训练集群的拓扑网络管理逻辑,policy 与 rollout 实例在训练过程中任一节点发生异常可以迅速重新组网并继续执行当前训练 step,不需要重启恢复等操作,提供了高鲁棒性。多 controller 的备份进一步提高系统稳定性,高容错设计同时也带来了动态扩缩容的特性,可以自由的增加或者减少训练节点。

image.png

Cosmos-RL on PAI

PAI-DLC 自研 Custom 类型任务,用户基于 Custom 类型自定义框架的角色类型(controller、policy 和 rollout)和资源配置,实现一键提交 Cosmos-RL 框架任务。

image.png

经过实测,Cosmos-RL, GPU 数量越多时 Throughput(samples per second)优势越明显,相比 VeRL 有2-3x 的效率提升。

传统⽂本任务(GSM8K数据集),以 Qwen2.5-32B-Instruct 为基座模型,训练1个 Epoch,rollout 的单个样本 generation number 设置为16,batch_size 为192,并严格对齐其他参数,采用相同的 rollout backend。分别使⽤16、32、64和128卡进⾏训练,通过 samples per second 计算量框架的吞吐(Throughput)。

image.png


二、Ray

Ray 是一个开源的分布式计算框架 ² 集成了多个 AI 库,拥有丰富的生态系统,包括 Ray Tune(超参数调优)、Ray RLlib(强化学习)、Ray Serve(模型部署)、RaySGD 的分布式运行环境,提供了全面的AI解决方案,使得 AI 并行训练更容易和高效。 其中,OpenAI 声明 Ray 为 ChatGPT 大模型训练的底层平台,也进一步表明其在 AI 训练场景的通用性。

image.png


Ray on PAI

针对 Ray,PAI-DLC 期望为用户提供一个 简单易用的、Ray Native 的使用体验。 PAI-DLC 在任务类型(框架)推出 Ray 类型,用户可以将已有 Ray 训练脚本通过 DLC 直接提交,开发人员真正实现上手0成本。 其次,PAI-DLC 作为云上 AI PaaS 平台, 为用户提供 Serverless 的产品体验,进一步降低 Ray 使用门槛,PAI-DLC 上使用 Ray, 用户无需关注 Ray 集群部署和运维,也无需关注底层 Kubernetes 复杂配置,一键提交 Ray 任务。

image.png

同时在 PAI-DLC 平台提交任务,支持单任务万卡级规模的调度和分布式计算能力。对 Ray 系统架构提供针对性的容错引擎优化,包括:

(1)Ray Head Node 故障自自愈,实现任务续跑;

(2)Ray 集群初始化智能诊断,解决 Ray Worker 容易 OOM 等框架级错误;

(3)基于 Ray Head Node 海量报错日志,智能解析快速精准锁定真实故障节点,实现分钟级自愈恢复能力。

在阿里内部的实践中,每周通过 PAI-DLC 提交数百个千卡级别任务(强化学习千卡规模 * 数天),故障识别率95%+,任务稳定运行超过一周。

image.png


三、VeRL

VeRL 是由字节跳动团队开源的强化学习与大模型对齐训练框架 ³,其采用混合编程模型,融合单控制器灵活性与多控制器高效性,解耦控制流和计算流,通过封装单模型分布式计算、统一数据切分、支持异步控制流等技术,为强化学习提供完整解决方案。

VeRL on PAI

VeRL 基于 Ray 分布式框架构建执行流程,借助其资源调度与任务管理能力,实现多节点、多 GPU 分布式计算, 无缝集成 PyTorch 生态实现模型训练能力。在 PAI-DLC 上, 用户可以通过提交 Ray 框架任务或者提交 PyTorch 框架任务,一键提交大规模的强化学习任务。

image.png


四、关于 PAI-DLC:阿里云分布训练平台

PAI-DLC 阿里云 PAI 平台提供的云原生的 AI 分布式训练平台,为开发者和企业提供灵活、稳定、易用和高性能的机器学习训练环境,支持多种算法框架,能够处理大规模的分布式深度学习任务,降低成本的同时提升训练效率。PAI-DLC 具备以下特性:

  • 强大的分布式计算能力自研统一调度引擎,网络拓扑感知、算力拓扑感知,提供智能、FIFO、遍历、均衡排队策略, 多级 Quota 的共享、抢占调度机制, 实现超大规模训练任务运行,实现 90%+ 整体算力利用率。
  • 多种框架一键拉起简单易用:无需搭建集群,一键提交训练任务;支持 Megatron、Deepspeed、Pytorch、MPI、Slurm 等10+业内主流 AI 训练框架,一份算力在多种 AI 场景切换和使用,免部署、免运维、上手 0 成本。
  • 训练自愈,提供企业级高可用:自研 AIMaster 弹性容错引擎、节点自愈引擎和 EasyCKPT 大模型 CKPT 引擎,实现故障节点分钟级自愈,任务分钟级恢复、CKPT 秒级保存, 保障大模型训练任务持续运行, 有效降低人力和避免算力的浪费。

image.png


五、结论

在大模型 PostingTraining 蓬勃发展的今天,开源的强化学习框架以灵活的算法实现、丰富的工具集和活跃的社区生态,为开发者提供低成本的实验环境,可以拓展云平台功能边界,激发创新活力。

 

阿里云 PAI-DLC,依托阿里云强大的基础设施,优化开源框架普遍存在大规模下性能和稳定性瓶颈,并且结合平台一站式全流程服务,简化开发流程,降低使用门槛。二者结合最终推动强化学习高速发展,助力大模型应用,为实现 AGI 贡献力量。


附:

[1]"cosmos-rl," GitHub repository, n.d. [Online]. Available: https://github.com/nvidia-cosmos/cosmos-rl.

[2]"ray-project," GitHub organization, n.d. [Online]. Available: https://github.com/ray-project. 

[3]"verl," GitHub repository, n.d. [Online]. Available: https://github.com/volcengine/verl.

相关实践学习
使用PAI+LLaMA Factory微调Qwen2-VL模型,搭建文旅领域知识问答机器人
使用PAI和LLaMA Factory框架,基于全参方法微调 Qwen2-VL模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
3月前
|
数据采集 自动驾驶 Java
PAI-TurboX:面向自动驾驶的训练推理加速框架
PAI-TurboX 为自动驾驶场景中的复杂数据预处理、离线大规模模型训练和实时智能驾驶推理,提供了全方位的加速解决方案。PAI-Notebook Gallery 提供PAI-TurboX 一键启动的 Notebook 最佳实践
|
机器学习/深度学习 人工智能 算法
Post-Training on PAI (3):PAI-ChatLearn,PAI 自研高性能强化学习框架
人工智能平台 PAI 推出了高性能一体化强化学习框架 PAI-Chatlearn,从框架层面解决强化学习在计算性能和易用性方面的挑战。
|
4月前
|
机器学习/深度学习 人工智能 算法
PaperCoder:一种利用大型语言模型自动生成机器学习论文代码的框架
PaperCoder是一种基于多智能体LLM框架的工具,可自动将机器学习研究论文转化为代码库。它通过规划、分析和生成三个阶段,系统性地实现从论文到代码的转化,解决当前研究中代码缺失导致的可复现性问题。实验表明,PaperCoder在自动生成高质量代码方面显著优于基线方法,并获得专家高度认可。这一工具降低了验证研究成果的门槛,推动科研透明与高效。
356 19
PaperCoder:一种利用大型语言模型自动生成机器学习论文代码的框架
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
阿里云人工智能平台 PAI 开源 EasyDistill 框架助力大语言模型轻松瘦身
本文介绍了阿里云人工智能平台 PAI 推出的开源工具包 EasyDistill。随着大语言模型的复杂性和规模增长,它们面临计算需求和训练成本的障碍。知识蒸馏旨在不显著降低性能的前提下,将大模型转化为更小、更高效的版本以降低训练和推理成本。EasyDistill 框架简化了知识蒸馏过程,其具备多种功能模块,包括数据合成、基础和进阶蒸馏训练。通过数据合成,丰富训练集的多样性;基础和进阶蒸馏训练则涵盖黑盒和白盒知识转移策略、强化学习及偏好优化,从而提升小模型的性能。
|
5月前
|
机器学习/深度学习 算法 数据挖掘
PyTabKit:比sklearn更强大的表格数据机器学习框架
PyTabKit是一个专为表格数据设计的新兴机器学习框架,集成了RealMLP等先进深度学习技术与优化的GBDT超参数配置。相比传统Scikit-Learn,PyTabKit通过元级调优的默认参数设置,在无需复杂超参调整的情况下,显著提升中大型数据集的性能表现。其简化API设计、高效训练速度和多模型集成能力,使其成为企业决策与竞赛建模的理想工具。
174 12
PyTabKit:比sklearn更强大的表格数据机器学习框架
|
6月前
|
人工智能 自然语言处理 算法
MT-MegatronLM:国产训练框架逆袭!三合一并行+FP8黑科技,大模型训练效率暴涨200%
MT-MegatronLM 是摩尔线程推出的面向全功能 GPU 的开源混合并行训练框架,支持多种模型架构和高效混合并行训练,显著提升 GPU 集群的算力利用率。
448 18
|
6月前
|
机器学习/深度学习 人工智能 Java
Java机器学习实战:基于DJL框架的手写数字识别全解析
在人工智能蓬勃发展的今天,Python凭借丰富的生态库(如TensorFlow、PyTorch)成为AI开发的首选语言。但Java作为企业级应用的基石,其在生产环境部署、性能优化和工程化方面的优势不容忽视。DJL(Deep Java Library)的出现完美填补了Java在深度学习领域的空白,它提供了一套统一的API,允许开发者无缝对接主流深度学习框架,将AI模型高效部署到Java生态中。本文将通过手写数字识别的完整流程,深入解析DJL框架的核心机制与应用实践。
359 3
|
8月前
|
机器学习/深度学习 人工智能
Diff-Instruct:指导任意生成模型训练的通用框架,无需额外训练数据即可提升生成质量
Diff-Instruct 是一种从预训练扩散模型中迁移知识的通用框架,通过最小化积分Kullback-Leibler散度,指导其他生成模型的训练,提升生成性能。
236 11
Diff-Instruct:指导任意生成模型训练的通用框架,无需额外训练数据即可提升生成质量
|
4月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
|
10月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
1031 6

相关产品

  • 人工智能平台 PAI