检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在ModelArts Standard上运行GPU多机多卡训练作业 操作流程 准备工作: 购买服务资源(VPC/SFS/OBS/SWR/ECS) 配置权限 创建专属资源池(打通VPC) ECS服务器挂载SFS Turbo存储 在ECS中设置ModelArts用户可读权限 安装和配置OBS命令行工具
Eagle投机小模型训练 本章节提供eagle小模型自行训练的能力,客户可通过本章节,使用自己的数据训练eagle小模型,并使用自行训练的小模型进行eagle推理。支持llama1系列、llama2系列和Qwen2系列模型。 步骤一:安装Eagle Eagle训练适配代码存放在代码包AscendCloud-LLM-x
准备环境 本文档中的模型运行环境是ModelArts Lite的Cluster。请参考本文档要求准备资源环境。 资源规格要求 计算规格:不同模型训练推荐的NPU卡数请参见表2。 硬盘空间:至少200GB。 Ascend资源规格: Ascend: 1*ascend-snt9b表示Ascend单卡。
准备镜像 镜像方案说明 ECS获取和上传基础镜像 使用基础镜像 ECS中构建新镜像 父主题: 准备工作
训练脚本说明参考 训练启动脚本说明和参数配置 训练的数据集预处理说明 训练中的权重转换说明 训练tokenizer文件说明 离线训练安装包准备说明 父主题: 主流开源大模型基于Lite Server适配ModelLink PyTorch NPU训练指导(6.3.911)
LoRA微调训练 前提条件 已上传训练代码、训练权重文件和数据集到SFS Turbo中。 Step1 修改训练超参配置 以llama2-13b LORA微调为例,执行脚本0_pl_lora_13b.sh 。 修改模型训练脚本中的超参配置,必须修改的参数如表1所示。其他超参均有默认值,可以参考表1按照实际需求修改。
查看日志和性能 单击作业详情页面,则可查看训练过程中的详细信息。 图1 查看训练作业 在作业详情页的日志页签,查看最后一个节点的日志,其包含“elapsed time per iteration (ms)”数据,可换算为tokens/s/p的性能数据。 吞吐量(tokens/s/p):global
查看日志和性能 查看日志 训练过程中,训练日志会在第一个的Rank节点打印。 图1 打印训练日志 训练完成后,如果需要单独获取训练日志文件,日志存放在第一个的Rank节点中;日志存放路径为:对应表1表格中output_dir参数值路径下的trainer_log.jsonl文件。 查看性能
准备环境 本文档中的模型运行环境是ModelArts Lite的Cluster。请参考本文档要求准备资源环境。 资源规格要求 计算规格:不同模型训练推荐的NPU卡数请参见表2。 硬盘空间:至少200GB。 Ascend资源规格: Ascend: 1*ascend-snt9b表示Ascend单卡。
预训练任务 步骤一 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。
LoRA微调训练 步骤一 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。
训练脚本说明参考 训练参数配置说明【旧】 训练tokenizer文件说明 断点续训和故障快恢说明 父主题: 主流开源大模型基于Lite Server适配ModelLink PyTorch NPU训练指导(6.3.912)
查看日志和性能 查看日志 训练过程中,训练日志会在第一个的Rank节点打印。 图1 打印训练日志 训练完成后,如果需要单独获取训练日志文件,日志存放在第一个的Rank节点中;日志存放路径为:对应修改重要参数表格中output_dir参数值路径下的trainer_log.jsonl文件
查看日志和性能 查看日志 若查看启动作业日志信息,可通过以下命令打印正在启动的日志信息。其中${pod_name}为pod信息中的NAME,例如vcjob-main-0。 kubectl logs -f ${pod_name} 训练过程中,训练日志会在最后的Rank节点打印。 图1
SFT全参微调训练 前提条件 已上传训练代码、训练权重文件和数据集到OBS中,具体参考代码上传至OBS。 Step1 创建训练任务 创建训练作业,并自定义名称、描述等信息。选择自定义算法,启动方式自定义,以及选择上传的镜像。 图1 创建训练作业 训练作业启动命令中输入: cd /
训练的权重转换说明 以llama2-13b举例,使用训练作业运行0_pl_pretrain_13b.sh脚本。脚本同样还会检查是否已经完成权重转换的过程。 若已完成权重转换,则直接执行预训练任务。若未进行权重转换,则会自动执行scripts/llama2/2_convert_mg_hf
Controlnet训练 使用文本提示词可以生成一副精美的画作,然而无论再怎么精细地使用提示词来指导模型,也无法描述清楚人物四肢的角度、背景中物体的位置、光线照射的角度,使用Controlnet可以通过图像特征来为扩散模型的生成过程提供更加精细控制的方式。 将Controlnet
准备镜像 镜像版本 本教程中用到基础镜像地址和配套版本关系如下表所示,请提前了解。 表1 基础容器镜像地址 镜像用途 镜像地址 配套版本 基础镜像 swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2
附录:Standard大模型推理常见问题 问题1:在推理预测过程中遇到NPU out of memory。 解决方法:调整推理服务启动时的显存利用率,将--gpu-memory-utilization的值调小。 问题2:在推理预测过程中遇到ValueError:User-specified
附录:Standard大模型推理常见问题 问题1:在推理预测过程中遇到NPU out of memory。 解决方法:调整推理服务启动时的显存利用率,将--gpu-memory-utilization的值调小。 问题2:在推理预测过程中遇到ValueError:User-specified