Pai-Megatron-Patch灵骏大模型训练工具

联合创作 · 2023-09-26 00:15

Pai-Megatron-Patch工具是阿里云机器学习平台PAI算法团队研发,基于阿里云智算服务PAI-灵骏平台的大模型最佳实践解决方案配套工具, 旨在帮助大模型开发者快速上手灵骏产品,完成大语言模型(LLM)的高效分布式训练,有监督指令微调,模型离线推理验证等完整大模型开发链路。 该项目提供了业界主流开源大模型基于Megatron-LM的训练&离线推理验证流程,方便用户快速上手大模型训练。

主要特性

  • 多款热门大模型支持:llama,llama-2系列,codellama, 百川,通义,Falcon,GLM,Starcoder,Bloom,chatglm等
  • 支持模型权重互转转换:在Huggingface,Megatron和Transformer Engine之间进行算子命名空间映射
  • 支持Flash Attention 2.0和Transformer Engine模式下的FP8训练加速且确保收敛
  • 丰富且简单易用的使用示例,支持大模型预训练,微调,评估和推理,强化学习全流程最佳实践

技术架构

Pai-Megatron-Patch的设计理念是不对Megatron-LM的源码进行侵入式修改,即不在Megatron-LM里面添加新的功能特性, 将需要扩充完善的部分以patch补丁的方式呈现。在patch中构建LLM训练链路通过依赖Megatron-LM核心库的方法实现和Megatron-LM的解耦合。 这样解耦合的好处就是Megatron-LM的升级不会影响用户的LLM最佳实践体验。

Pai-Megatron-Patch中包含模型库,分词器,模型转换,强化学习,离线文本生成以及使用示例和工具集等用于构建LLM训练的关键要素。 在模型库中包含热门大模型的Megatron版本实现,例如baichuan,bloom,chatglm,falcon,galactica,glm,llama,qwen和starcoder, 后续还会根据需要及时添加新的Megatron版大模型实现。同时patch还提供了huggingface模型权重和Megatron模型权重之间的双向转换。 一方面是方便用户加载huggingface的权重在Megatron中继续预训练或者微调, 另一方面是方便用户对训练好的Megatron模型使用huggingface的评估/推理流程对模型质量进行客观评估。 在强化学习部分,patch提供了PPO训练流程等,方便用户使用SFT模型和RM模型进行强化学习。最后patch提供了大量的使用示例帮助用户快速开始大模型训练&离线推理。

浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报