检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
自动修复异常或隔离节点,并重启训练作业,提高训练成功率。为了避免丢失训练进度、浪费算力。此功能已适配断点续训练。 图2 开启故障重启 断点续训练是通过checkpoint机制实现。checkpoint机制是在模型训练的过程中,不断地保存训练结果(包括但不限于EPOCH、模型权重、
kubectl logs -f ${pod_name} 等待模型载入 执行训练启动命令后,等待模型载入,当出现“training”关键字时,表示开始训练。训练过程中,训练日志会在最后的Rank节点打印。 图1 等待模型载入 训练完成后,生成的权重文件保存路径为:/mnt/sfs_turbo/
读取文件报错,如何正确读取文件 问题现象 创建训练作业如何读取“json”和“npy”文件。 训练作业如何使用cv2库读取文件。 如何在MXNet环境下使用torch包。 训练作业读取文件,出现如下报错: NotFoundError (see above for traceback):
训练作业运行失败排查指导 问题现象 训练作业的“状态”出现“运行失败”的现象。 原因分析及处理方法 查看训练作业的“日志”,出现报错“MoxFileNotExistsException(resp, 'file or directory or bucket not found.')”。
选择用户自己的专属资源池,以及规格与节点数。防止训练过程中出现内存溢出的情况,用户可参考表1进行配置。 图2 选择资源池规格 作业日志选择OBS中的路径,训练作业的日志信息则保存该路径下。 最后,提交训练作业,训练完成后,请参考查看日志和性能章节查看SFT微调的日志和性能。了解更多ModelArts训练功能,可查看模型开发简介。
训练的数据集预处理说明 以 llama2-13b 举例,使用训练作业运行:0_pl_pretrain_13b.sh 训练脚本后,脚本检查是否已经完成数据集预处理。 如果已完成数据集预处理,则直接执行预训练任务。若未进行数据集预处理,则会自动执行 scripts/llama2/1_preprocess_data
LoRA微调训练 Step1 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。
kubectl logs -f ${pod_name} 等待模型载入 执行训练启动命令后,等待模型载入,当出现“training”关键字时,表示开始训练。训练过程中,训练日志会在最后的Rank节点打印。 图1 等待模型载入 训练完成后,生成的权重文件保存路径为:/mnt/sfs_turbo/
kubectl logs -f ${pod_name} 等待模型载入 执行训练启动命令后,等待模型载入,当出现“training”关键字时,表示开始训练。训练过程中,训练日志会在最后的Rank节点打印。 图1 等待模型载入 训练完成后,生成的权重文件保存路径为:/mnt/sfs_turbo/
使用ModelArts时,用户数据需要存放在自己OBS桶中,但是训练代码运行过程中不能使用OBS路径读取数据。 原因: 训练作业创建成功后,由于在运行容器直连OBS服务进行训练性能很差,系统会自动下载训练数据至运行容器的本地路径。所以,在训练代码中直接使用OBS路径会报错。例如训练代码的OBS路径为obs://b
输出路径:选择您步骤1创建好的OBS文件夹下的路径,用来存储训练模型等相关文件。 训练规格:根据您的实际需要选择对应的训练规格。 参数填写完成,单击“创建项目”。 步骤五:运行工作流 项目完成创建之后,会自动跳转到新版自动学习的运行总览页面。同时您的工作流会自动从数据标注节点开始运行。您需要做的是:
Server适配PyTorch NPU训练指导(6.3.912) 方案概览 本方案介绍了在ModelArts Lite Server上使用昇腾计算资源Ascend Snt9B开展InternVL2-8B, InternVL2-26B和InternVL2-40B模型的训练过程,包括Finetune训练和LoRA训练。
集,不支持启动主动学习和自动分组任务,支持预标注任务。 “智能标注”是指基于当前标注阶段的标签及图片学习训练,选中系统中已有的模型进行智能标注,快速完成剩余图片的标注操作。“智能标注”又包含“主动学习”和“预标注”两类。 “主动学习”表示系统将自动使用半监督学习、难例筛选等多种手
迁移过程使用工具概览 基础的开发工具在迁移的预置镜像和开发环境中都已经进行预置,用户原则上不需要重新安装和下载,如果预置的版本不满足要求,用户可以执行下载和安装与覆盖操作。 模型自动转换评估工具Tailor 为了简化用户使用,ModelArts提供了Tailor工具,将模型转换、
kenizer文件,具体请参见训练tokenizer文件说明。 步骤3 启动训练脚本 请根据步骤2 修改训练超参配置修改超参值后,再启动训练脚本。Llama2-70B建议为4机32卡训练。 多机启动 以 Llama2-70B 为例,多台机器执行训练启动命令如下。多机启动需要在每个节点上执行。
训练作业进程异常退出 问题现象 训练作业运行失败,日志中出现如下类似报错: [Modelarts Service Log]Training end with return code: 137 原因分析 日志显示训练进程的退出码为137。训练进程表示用户的代码启动后的进程,所以这里
作业卡在读数据过程中,日志停在训练的过程中并不再更新日志。 解决方案4 用dataloader读数据时,适当减小num_worker。 常见案例:训练最后一个epoch卡死 问题现象 通过日志查看数据切分是否对齐,如果未对齐,容易导致部分进程完成训练退出,而部分训练进程因未收到其
sh脚本实现OBS和训练容器间的数据传输 自定义容器在ModelArts上训练和本地训练的区别如下图: 图1 本地与ModelArts上训练对比 ModelArts上进行训练比本地训练多了一步OBS和容器环境的数据迁移工作。 增加了和OBS交互工作的整个训练流程如下: 建议使用O
于加速深度学习训练。通过使用DeepSpeed,可以实现如混合精度训练、ZeRO内存优化等高级特性,以提高训练效率和性能 stage sft 表示当前的训练阶段。可选择值:【sft、rm、ppo、dpo】 sft代表监督微调; rm代表奖励模型训练; ppo代表PPO训练; dpo代表DPO训练。
训练权重转换说明 以 llama2-13b 举例,使用训练作业运行 obs_pipeline.sh 脚本后,脚本自动执行权重转换,并检查是否已经完成权重转换的过程。 若已完成权重转换,则直接执行训练任务。若未进行权重转换,则会自动执行scripts/llama2/2_convert_mg_hf