【昇思学习营第六期·五一篇】MindSpore Transformers大模型套件学习心得
收藏回复举报
【昇思学习营第六期·五一篇】MindSpore Transformers大模型套件学习心得
新人帖
发表于2025-05-10 10:36:22
0 查看

MindSpore Transformers大模型套件

MindSpore Transformers简称MindFormers,其目标是构建一个集大模型开发、训练、微调、评估、推理、部署的全流程开发使能套件。在实际应用中基于昇思MindSpore Al框架和昇腾芯片开发。

1. 配套软件

  • MindSpore:提供AI框架基础能力,类似Pytorch,同时提供丰富的分布式并行能力,天然支持大模型训练和推理;
  • MindSpore Pet:提供大模型微调算法;
  • MindIE-Service:提供大模型推理服务化部署能力;
  • MindSpore Insight:提供大模型可视化调试调优能力。 true

2. 优略势

  • 对齐使用逻辑的基础上,提供训练分布式并行配置能力;
  • 提供丰富的多维并行和存储优化能力;支持超大规模的分布式训练,能力对标Megatron-LLM;
  • 在线推理和服务化部署对Tensor-RT和v-LLM,有性能优势;
  • 其支持的模型丰富度不足。 true

3. 分布式并行

MindFormers支持八维混合并行,即多副本并行、多流水交织并行、超长序列并行、MoE并行、算子级模型并行、优化器并行、数据并行和模型并行。 true

4. 权重转换:

4.1 两种转换方式

MindFormers提供了权重转换工具,支持自动权重转换和离线权重转换两种方式。

  • 离散权重转换不需要启动训练,支持单进程和多进程离散转换,需要提供源权重、源权重的分布式策略文件以及目标权重地址和分布式策略文件;
  • 自动权重转换是在训练时自动完成权重转换,只需要用户配置源权重、源权重分布式策略文件地址,并且开启自动权重转换开关即可。同样支持单进程和多进程两种方式。

4.2 获取策略文件:

分布式权重转换需要获取相应的策略文件,那么如何获取策略文件呢?

  • MindFormers每次任务训练输出路径下都会保存当前任务的策略文件,保存路径可以自定义;
  • MindFormers正常启动任务,配置“only_save_strategy”为True,任务在获得策略文件后主动退出;
  • 使用Dryrun模拟编译脚本来获取策略文件。这种方式只需要单卡,不占用过多资源。

5. 断点续训:

在模型训练过程中,可能因为各种因素导致训练中断,需要重新拉起训练并且恢复到上一次训练中断时的状态继续训练。MindSpore Transformers支持以下三种场景的断点续训:

(1)中断续训:正常训练任务中断,需要基于保存的权重重新恢复训练任务。

  • 基于最后一个保存完整且Step一致的权重进行续训;
  • 基于指定Step的权重进行续训;
  • 基于最后时间戳的权重进行续训。

(2)增量续训:当前任务数据集已经训练完毕,有新的训练数据集需要继续训练。

  • 换新数据集续训;
  • 换新数据集续训后需要再次中断续训。

(3)扩缩容续训:当前训练任务需要迁移到其它规模集群/修改分布式配置继续训练,同时需要权重转换。

我要发帖子