引言

Post-Training(即模型后训练)作为大模型落地的重要一环,能显著优化模型性能,适配特定领域需求。相比于 Pre-Training(即模型预训练),Post-Training 阶段对计算资源和数据资源需求更小,更易迭代,因此备受推崇。

近期,我们将体系化地分享基于阿里云人工智能平台 PAI 平台在强化学习、模型蒸馏、数据预处理、SFT等方向的技术实践,旨在清晰地展现 PAI 在 Post-Training 各个环节的产品能力和使用方法,欢迎大家随时交流探讨。


作为模型后训练的重点技术领域,强化学习任务具备极高的复杂性,需要数据、算法、计算等诸多方面的高效协作,从而避免模型漂移、泛化能力下降等问题。尤其在企业应用过程中,强化学习阶段还需面临开发易用性和计算性能的双重挑战。

易用性挑战:

对新算法出现时的可扩展性,比如 同步和异步(on policy vs off policy),PPO和GRPO(是否需要critic model)等

新的模型类型是否可以快速支持,比如多模态大模型是否可以快速高效运行起来。

性能挑战:

强化学习的推理和训练过程需要顺序执行,导致的GPU资源闲置

分布式推理过程worker之间的生成response长度不均衡,导致GPU空泡,特别是超长序列生成的长尾问题

多个模型(policy,critic,reward 等)的放置,训练和推理的调度,显存管理,对训练效率的挑战

分布式MOE训练/推理本身的性能优化

针对上述问题,人工智能平台 PAI 推出了高性能一体化强化学习框架 PAI-ChatLearn,从框架层面解决强化学习在计算性能和易用性方面的挑战。本文将介绍 PAI-ChatLearn 框架特性以及如何在 PAI 平台上使用 PAI-ChatLearn 提交强化学习任务。

PAI-ChatLearn 技术特性

PAI-ChatLearn 是 PAI 自研的灵活、易用、高效的大规模强化学习框架。

 Post-Training on PAI (3): 自研高性能强化学习框架PAI-ChatLearn_数据集

灵活易用的框架

框架工程层面,PAI-ChatLearn 支持用户自定义模型、算法和数据流,包括:

  • 使用 Ray 作为基础调度框架,基于高度可定制的模块化设计,通过提前构建计算图的方式,支持定制同步、异步调度,训练/推理 backend 选择,以及高效的模型参数同步。