检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
jsonl文件长传至可视化工具页面,如图2所示。 单节点训练:训练过程中的loss直接打印在窗口上。 多节点训练:训练过程中的loss打印在第一个节点上。 图2 Loss收敛情况(示意图) ppo训练结束不会打印性能。建议根据保存路径下的trainer_log.jsonl文件的最后一行总的训练steps和时间来判断性能。
zip在本地解压缩后。在上传代码前,需要对解压后的训练脚本代码进行修改。具体文件为:llm_train/AscendSpeed/scripts/obs_pipeline.sh,具体修改代码内容以及位置,如下所示。 训练作业中存在2个代码目录,一个是从OBS上传到ModelArts Standard训练容器中的代码目
包含了本教程中使用到的模型训练代码。代码包具体说明请参见模型软件包结构说明。 获取路径:Support-E 请联系您所在企业的华为方技术支持下载获取。 模型软件包结构说明 AscendCloud-6.3.909代码包中AscendCloud-LLM代码包结构介绍如下,训练脚本以分类的方式集中在scripts文件夹中:
log_dir/xx.log #保存训练日志 训练后的产物路径说明如下。 # 日志路径: 指定${log_dir} # 训练输出权重路径: {container_work_dir}/Qwen-VL/output_qwen 训练过程中,训练日志会在最后的Rank节点打印。 日志里
per_device_batch_size:每张卡上的批次大小。 以单机结果为例,训练成功如下图所示。 图1 sft全参微调训练成功 图2 lora微调训练成功 附:loss曲线 loss结果 sft全参微调NPU训练结果loss收敛且趋势与GPU训练loss一致 图3 sft全参微调单机loss曲线对比结果
' } 上传数据集至OBS 准备数据集,例如根据Alpaca数据部分给出的预训练数据集、SFT全参微调训练、LoRA微调训练数据集下载链接下载数据集。 在创建OBS桶创建的桶下创建文件夹用以存放数据,例如在桶standard-llama2-
scripts/install.sh命令提前下载完整代码包和安装依赖包,然后使用保存镜像功能。后续训练作业使用新保存的镜像,无需每次启动训练作业时再次下载代码包以及安装依赖包,可节约训练作业启动时间。 由于训练启动命令也会执行sh scripts/install.sh安装依赖包,因此Notebook保存镜像为可选操作。
当用户将大语言模型或者其他类型深度神经网络的训练从GPU迁移到昇腾AI处理器时,可能出现以下不同现象的模型精度问题。一般包括: Loss曲线与CPU/GPU差异不符合预期。 验证准确度与CPU/GPU差异不符合预期。 在迁移到NPU环境下训练发现以上问题时,说明精度可能存在偏
准备镜像 准备训练Llama2-13B模型适用的容器镜像,包括获取镜像地址,了解镜像中包含的各类固件版本,配置Standard物理机环境操作。 镜像地址 本教程中用到的训练的基础镜像地址和配套版本关系如下表所示,请提前了解。 表1 基础容器镜像地址 镜像用途 镜像地址 配套版本 训练基础镜像
主流开源大模型基于Standard+OBS适配ModelLink PyTorch NPU训练指导(6.3.911) 场景介绍 准备工作 预训练 SFT全参微调训练 LoRA微调训练 查看日志和性能 训练脚本说明 常见错误原因和解决方法 父主题: LLM大语言模型训练推理
主流开源大模型基于Standard+OBS适配ModelLink PyTorch NPU训练指导(6.3.912) 场景介绍 准备工作 执行训练任务 查看日志和性能 训练脚本说明 常见错误原因和解决方法 父主题: LLM大语言模型训练推理
sh脚本测试ModelArts训练整体流程 自定义容器在ModelArts上训练和本地训练的区别如下图: 图1 本地与ModelArts上训练对比 ModelArts上进行训练比本地训练多了一步OBS和容器环境的数据迁移工作。 增加了和OBS交互工作的整个训练流程如下: 建议使用OBS
|——AscendCloud-LLM |──llm_train # 模型训练代码包 |──AscendSpeed # 基于AscendSpeed的训练代码 |──ascendcloud_patch/
包含了本教程中使用到的模型训练代码。代码包具体说明请参见模型软件包结构说明。 获取路径:Support-E 请联系您所在企业的华为方技术支持下载获取。 模型软件包结构说明 AscendCloud-6.3.906代码包中AscendCloud-LLM代码包结构介绍如下,训练脚本以分类的方式集中在scripts文件夹中:
准备镜像 准备训练模型适用的容器镜像,包括获取镜像地址,了解镜像中包含的各类固件版本,配置物理机环境操作。 镜像地址 本教程中用到的训练和推理的基础镜像地址和配套版本关系如下表所示,请提前了解。 表1 基础容器镜像地址 镜像用途 镜像地址 基础镜像 swr.cn-southwest-2
turbo,既能加快训练数据的读取速度又能用于存放性能profiling数据。如果没有共享网盘,profiling数据默认保存到ModelArts训练容器中,则请参考创建ModelArts训练作业中的配置训练参数部分配置好输出参数,训练过程中会自动将训练容器中输出路径下的数据回传至指定的OBS上。
named npu_bridge.npu_init 检查下训练作业使用的规格是否支持NPU,有可能是训练时使用了GPU规格,导致发生了NPU相关调用报错。 建议与总结 在创建训练作业前,推荐您先使用ModelArts开发环境调试训练代码,避免代码迁移过程中的错误。 直接使用线上note
Turbo中的数据执行编辑操作。 预训练 预训练 介绍如何进行预训练,包括训练数据处理、超参配置、创建训练任务及性能查看。 微调训练 SFT全参微调 介绍如何进行SFT全参微调,包括训练数据处理、超参配置、创建训练任务及性能查看。 LoRA微调训练 介绍如何进行LoRA微调训练,包括训练数据处理、超参配置、创建训练任务及性能查看。
准备AscendSpeed训练代码、分词器Tokenizer和推理代码。 准备数据 准备训练数据,可以用本案使用的数据集,也可以使用自己准备的数据集。 准备镜像 准备训练模型适用的容器镜像。 预训练 预训练 介绍如何进行预训练,包括训练数据处理、超参配置、训练任务、性能查看。 微调训练 SFT全参微调
准备AscendSpeed训练代码、分词器Tokenizer和推理代码。 准备数据 准备训练数据,可以用本案使用的数据集,也可以使用自己准备的数据集。 准备镜像 准备训练模型适用的容器镜像。 预训练 预训练 介绍如何进行预训练,包括训练数据处理、超参配置、训练任务、性能查看。 微调训练 SFT全参微调