使用MindSpeed-LLM(ModelLink)大模型套件

为提升大模型的易用性与训练效率,昇腾精心打造了MindSpeed-LLM(ModelLink)大模型套件,该套件以MindSpeed为核心加速引擎,为用户构建了一套全面且高效的解决方案,旨在简化大模型训练流程。MindSpeed-LLM(ModelLink)目前涵盖了Llama、Baichuan、Qwen等业界领先的LLM(Large Language Model)系列,所有支持的模型列表可单击Link进行参考。用户仅需进行简单的参数配置调整,即可无缝接入MindSpeed中预置的加速与优化特性,极大地简化了操作流程,提升了训练体验。

前提准备

在进行大模型预训练前需要完成前期准备工程,包括:环境安装数据集准备及处理Huggingface权重转换

大模型预训练

以Llama2 7B模型为例,预训练脚本为pretrain_llama2_7b_ptd.sh,用户需根据实际情况修改脚本中的路径和参数值,具体可参考配置预训练参数

MindSpeed-LLM中的Llama2 7B模型预训练任务脚本,充分展示了MindSpeed的并行算法与优化特性,具体包括但不限于:
  • 并行算法
    --tensor-model-parallel-size         # 张量并行
    --pipeline-model-parallel-size       # 流水线并行
    --sequence-parallel                  # 序列并行
  • 融合算子
    --use-flash-attn                     # Flash Attention融合算子
    --normalization RMSNorm              # RMSNorm归一化
    --use-fused-rmsnorm                  # RMSNorm融合算子
    --swiglu                             # SwiGLU激活函数    
    --use-fused-swiglu                   # SwiGLU融合优化
    --position-embedding-type rope       # RoPE位置嵌入
    --use-fused-rotary-pos-emb           # RoPE融合算子
  • 通信优化
    --overlap-grad-reduce                # 异步DDP

MindSpeed-LLM为每一个模型提供了详尽的操作指南,覆盖了从环境搭建、数据预处理到模型训练的全过程,确保用户能够顺利进行模型训练与优化。更多模型与特性的使用实例,欢迎访问MindSpeed-LLM仓库,获取最新、最全面的资料与实践指导,以便深入了解并充分利用MindSpeed-LLM与MindSpeed的强大功能。通过MindSpeed-LLM大模型套件,用户能够轻松地将MindSpeed的加速与优化特性应用于实际训练场景,极大地简化了大模型的部署与优化流程。我们鼓励用户深入探索MindSpeed-LLM提供的资源,结合自身需求灵活配置参数,以实现最佳的模型训练效果与资源利用效率。