更新时间:2025-07-29 GMT+08:00
分享

执行训练任务【旧】

前提条件

已上传训练代码、训练权重文件和数据集到SFS Turbo中。

Step1 修改训练超参配置

llama2-13b SFT全参微调为例,执行脚本 0_pl_sft_13b.sh

修改模型训练脚本中的配置,参数详解可查看训练参数说明,其中【GBS、MBS、TP、PP】参数值可参考模型推荐参数、NPU卡数设置。

对于Yi系列模型、ChatGLMv3-6B和Qwen系列模型,还需要手动修改训练参数和tokenizer文件,具体请参见训练tokenizer文件说明

Step2 创建训练任务

创建训练作业,并自定义名称、描述等信息。选择自定义算法,启动方式自定义,以及上传的镜像。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。

图1 选择镜像

如果镜像使用使用基础镜像中的基础镜像时,训练作业启动命令中输入:

cd /home/ma-user/work/llm_train/AscendFactory;
sh ./scripts_modellink/install.sh;
sh ./scripts_modellink/llama2/0_pl_sft_13b.sh

如果镜像使用ECS中构建新镜像构建的新镜像时,训练作业启动命令中输入:

cd /home/ma-user/work/llm_train/AscendFactory;
sh ./scripts_modellink/llama2/0_pl_sft_13b.sh

创建训练作业时,可开启自动重启功能。当环境问题导致训练作业异常时,系统将自动修复异常或隔离节点,并重启训练作业,提高训练成功率。为了避免丢失训练进度、浪费算力。此功能已适配断点续训练。

图2 开启故障重启

断点续训练是通过checkpoint机制实现。checkpoint机制是在模型训练的过程中,不断地保存训练结果(包括但不限于EPOCH、模型权重、优化器状态、调度器状态)。即便模型训练中断,也可以基于checkpoint接续训练。

当训练作业发生故障中断本次作业时,代码可自动从训练中断的位置接续训练,加载中断生成的checkpoint,中间不需要改动任何参数。可以通过训练脚本中的SAVE_INTERVAL参数来指定间隔多少step保存checkpoint。

如果要使用自动重启功能,资源规格必须选择八卡规格。

训练作业中的训练故障自动恢复功能包括:

  • 训练容错检查(自动重启),帮助用户隔离故障节点,优化用户训练体验。详细可了解:训练容错检查
  • 无条件自动重启,不管什么原因系统都会自动重启训练作业,提高训练成功率和提升作业的稳定性。详细可了解:无条件自动重启

选择用户自己的专属资源池,以及规格与节点数。防止训练过程中出现内存溢出的情况,用户可参考不同模型推荐参数、NPU卡数进行配置。

图3 选择资源池规格

新增SFS Turbo挂载配置,并选择用户创建的SFS Turbo文件系统。

  • 云上挂载路径:输入镜像容器中的工作路径 /home/ma-user/work/
  • 存储位置:输入用户的“子目录挂载”路径。如果默认没有填写,则忽略。
图4 选择SFS Turbo

作业日志选择OBS中的路径,ModelArts的训练作业的日志信息则保存该路径下。

最后,请参考查看日志和性能章节查看LoRA微调的日志和性能。了解更多ModelArts训练功能,可查看模型开发简介

相关文档