检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
示例:创建DDP分布式训练(PyTorch+NPU) 本文介绍了使用训练作业的自定义镜像+自定义启动命令来启动PyTorch DDP on Ascend加速卡训练。 前提条件 需要有Ascend加速卡资源池。 创建训练作业 本案例创建训练作业时,需要配置如下参数。 表1 创建训练作业的配置说明
自动修复异常或隔离节点,并重启训练作业,提高训练成功率。为了避免丢失训练进度、浪费算力。此功能已适配断点续训练。 图2 开启故障重启 断点续训练是通过checkpoint机制实现。checkpoint机制是在模型训练的过程中,不断地保存训练结果(包括但不限于EPOCH、模型权重、
使用预置算法训练时,训练失败,报“bndbox”错误 问题现象 使用预置算法创建训练作业,训练失败,日志中出现如下报错。 KeyError: 'bndbox' 原因分析 用于训练的数据集中,使用了“非矩形框”标注。而预置使用算法不支持“非矩形框”标注的数据集。 处理方法 此问题有两种解决方法:
LoRA微调训练 前提条件 已上传训练代码、训练权重文件和数据集到OBS中,具体参考代码上传至OBS。 Step1 创建训练任务 创建训练作业,并自定义名称、描述等信息。选择自定义算法,启动方式自定义,以及选择上传的镜像。 代码目录选择:OBS桶路径下的mllm_train/train/<commit_id>代码目录。
MLLM多模态模型训练推理 Qwen-VL基于Standard+OBS+SFS适配PyTorch NPU训练指导(6.3.912) Qwen-VL模型基于Standard+OBS适配PyTorch NPU训练指导(6.3.912) Qwen-VL基于DevServer适配PyTorch
获取训练作业支持的公共规格 功能介绍 获取训练作业支持的公共规格。 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。 URI GET /v2/{project_id}/training-job-flavors
执行训练任务(推荐) 新的训练方式将统一管理训练日志、训练结果和训练配置,使用yaml配置文件方便用户根据自己实际需求进行修改。推荐用户使用该方式进行训练。 步骤一 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训
训练的数据集预处理说明 以 llama2-13b 举例,使用训练作业运行:0_pl_pretrain_13b.sh 训练脚本后,脚本检查是否已经完成数据集预处理。 如果已完成数据集预处理,则直接执行预训练任务。若未进行数据集预处理,则会自动执行 scripts/llama2/1_preprocess_data
单机单卡 线下容器镜像构建及调试 上传镜像 上传数据和算法至OBS(首次使用时需要) 使用Notebook进行代码调试 创建训练任务 监控资源 父主题: 调试与训练
AIGC工具tailor使用指导 tailor简介 tailor是AIGC场景下用于模型转换(onnx到mindir)和性能分析的辅助工具,当前支持以下功能。 表1 功能总览 功能大类 具体功能 模型转换 固定shape转模型 动态shape传入指定档位转模型 支持fp32 支持AOE优化
预训练 前提条件 已上传训练代码、训练权重文件和数据集到SFS Turbo中。 Step1 修改训练超参配置 以llama2-13b预训练为例,执行脚本0_pl_pretrain_13b.sh。 修改模型训练脚本中的超参配置,必须修改的参数如表1所示。其他超参均有默认值,可以参考表1按照实际需求修改。
预训练 前提条件 已上传训练代码、训练权重文件和数据集到SFS Turbo中。 Step1 修改训练超参配置 以llama2-13b预训练为例,执行脚本0_pl_pretrain_13b.sh。 修改模型训练脚本中的超参配置,必须修改的参数如表1所示。其他超参均有默认值,可以参考表1按照实际需求修改。
预训练 前提条件 已上传训练代码、训练权重文件和数据集到SFS Turbo中。 Step1 修改训练超参配置 以llama2-13b预训练为例,执行脚本0_pl_pretrain_13b.sh。 修改模型训练脚本中的超参配置,必须修改的参数如表1所示。其他超参均有默认值,可以参考表1按照实际需求修改。
通过torch.distributed.run命令启动 创建训练作业 方式一:使用PyTorch预置框架功能,通过mp.spawn命令启动训练作业。 创建训练作业的关键参数如表1所示。 表1 创建训练作业(预置框架) 参数名称 说明 创建方式 选择“自定义算法”。 启动方式 选择“
分布式训练功能介绍 ModelArts提供了如下能力: 丰富的官方预置镜像,满足用户的需求。 支持基于预置镜像自定义制作专属开发环境,并保存使用。 丰富的教程,帮助用户快速适配分布式训练,使用分布式训练极大减少训练时间。 分布式训练调测的能力,可在PyCharm/VSCode/J
选择作业日志路径 填写参数完成后,提交创建训练任务,训练完成后,作业状态会显示为已完成。 图7 训练启动成功 Step8 断点续训 查看训练日志,在训练任务启动后,当训练超过500步后开始保存checkpoint文件,保存成功后,手动终止训练任务。 图8 保存checkpoint文件
训练tokenizer文件说明 在训练开始前,需要针对模型的tokenizer文件进行修改,不同模型的tokenizer文件修改内容如下,您可在创建的Notebook中对tokenizer文件进行编辑。 ChatGLMv3-6B 在训练开始前,针对ChatGLMv3-6B模型中的
模型训练结束后,训练模型以及相关输出信息需保存在OBS路径。“输出”数据默认配置为模型输出,代码参数为“train_url”,也支持用户根据1的算法代码自定义输出路径参数。 在创建训练作业时,填写输入路径和输出路径。 训练输入选择对应的OBS路径或者数据集路径,训练输出选择对应的OBS路径。
查看训练作业详情 登录ModelArts管理控制台。 在左侧导航栏中,选择“模型训练 > 训练作业”,进入“训练作业”列表。 在作业列表,单击“导出”,可以将训练作业根据时间周期导出Excel表到本地。最多只支持导出前200行数据。 在“训练作业”列表中,单击作业名称,进入训练作业详情页。
训练作业创建失败报错: 准备阶段超时。可能原因是跨区域算法同步或者创建共享存储超时 训练作业已排队,正在等待资源分配 训练作业排队失败 训练作业开始运行 训练作业运行成功 训练作业运行失败 训练作业被抢占 系统检测到您的作业疑似卡死,请及时前往作业详情界面查看并处理 训练作业已重启