正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用基础镜像 通过ECS获取和上传基础镜像将镜像上传至SWR服务后,可创建训练作业,在“选择镜像”中选择SWR中基础镜像。 由于基础镜像内需要安装固定版本依赖包,如果直接使用基础镜像进行训练,每次创建训练作业时,训练作业的图1中都需要执行install.sh文件,来安装依赖以及下载完整代码。命令如下:
训练的权重转换说明 以llama2-13b举例,使用训练作业运行obs_pipeline.sh脚本后,脚本自动执行权重转换,并检查是否已经完成权重转换的过程。 如果已完成权重转换,则直接执行训练任务。如果未进行权重转换,则会自动执行scripts/llama2/2_convert_mg_hf
镜像方案说明 准备大模型训练适用的容器镜像,包括获取镜像地址,了解镜像中包含的各类固件版本,配置Standard物理机环境操作。 基础镜像地址 本教程中用到的训练的基础镜像地址和配套版本关系如下表所示,请提前了解。 表1 基础容器镜像地址 镜像用途 镜像地址 配套版本 训练基础镜像
使用kv-cache-int8量化 kv-cache-int8是实验特性,在部分场景下性能可能会劣于非量化。当前支持per-tensor静态量化,支持kv-cache-int8量化和FP16、BF16、AWQ、smoothquant的组合。 kv-cache-int8量化支持的模型请参见支持的模型列表和权重文件。
预训练任务 配置预训练脚本glm3_base.sh中的超参,并执行预训练任务。 Step1 配置预训练超参 预训练脚本glm3_base.sh,存放在“xxx-Ascend/llm_train/AscendSpeed/scripts/glm3”目录下。训练前,可以根据实际需要修改
准备镜像 准备训练Baichuan2-13B模型适用的容器镜像,包括获取镜像地址,了解镜像中包含的各类固件版本,配置DevServer物理机环境操作。 镜像地址 本教程中用到的基础镜像地址和配套版本关系如下表所示,请提前了解。 表1 基础容器镜像地址 镜像用途 镜像地址 基础镜像(训练和推理通用)
使用SmoothQuant量化工具转换权重 SmoothQuant(W8A8)量化方案能降低模型显存以及需要部署的卡数。也能同时降低首token时延和增量推理时延。支持SmoothQuant(W8A8)量化的模型列表请参见表1。 本章节介绍如何在Notebook使用SmoothQuant量化工具实现推理量化。
SFT全参微调训练任务 步骤1 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。
使用kv-cache-int8量化 kv-cache-int8是实验特性,在部分场景下性能可能会劣于非量化。当前支持per-tensor静态量化,支持kv-cache-int8量化和FP16、BF16、AWQ、smoothquant的组合。 kv-cache-int8量化支持的模型请参见支持的模型列表和权重文件。
附录:微调训练常见问题 问题1:在训练过程中遇到NPU out of memory 解决方法: 容器内执行以下命令,指定NPU内存分配策略的环境变量,开启动态内存分配,即在需要时动态分配内存,可以提高内存利用率,减少OOM错误的发生。 export PYTORCH_NPU_ALLOC_CONF
使用AWQ量化工具转换权重 AWQ(W4A16/W8A16)量化方案能显著降低模型显存以及需要部署的卡数。降低小batch下的增量推理时延。支持AWQ量化的模型列表请参见表1。 本章节介绍如何在Notebook使用AWQ量化工具实现推理量化。 量化方法:W4A16 per-group/per-channel
Notebook专属预置镜像列表 ModelArts开发环境提供Docker容器镜像,可作为预构建容器运行。预置镜像里面包含PyTorch,Tensorflow,MindSpore等常用AI引擎框架,镜像命名以AI引擎为主,并且每个镜像里面都预置了很多常用包,用户可以直接使用而无需重新安装。
创建声音分类项目 ModelArts自动学习,包括图像分类、物体检测、预测分析、声音分类和文本分类项目。您可以根据业务需求选择创建合适的项目。您需要执行如下操作来创建自动学习项目。 创建项目 登录ModelArts管理控制台,在左侧导航栏单击“自动学习”,进入新版自动学习页面。
标注文本分类数据 项目创建完成后,将会自动跳转至新版自动学习页面,并开始运行,当数据标注节点的状态变为“等待操作”时,需要手动进行确认数据集中的数据标注情况,也可以对数据集中的数据进行标签的修改,数据的增加或删减。 图1 数据标注节点状态 双击“数据标注”节点,单击实例详情按钮,打开数据标注页面。
创建Workflow数据集版本发布节点 功能介绍 通过对ModelArts数据集能力进行封装,实现数据集的版本自动发布的功能。数据集版本发布节点主要用于将已存在的数据集或者标注任务进行版本发布,每个版本相当于数据的一个快照,可用于后续的数据溯源。主要应用场景如下: 对于数据标注这
从Manifest文件导入数据到数据集 前提条件 已存在创建完成的数据集。 准备需要导入的数据,具体可参见从Manifest文件导入规范说明。 需导入的数据,已存储至OBS中。Manifest文件也需要存储至OBS。 确保数据存储的OBS桶与ModelArts在同一区域,并确保用户具有OBS桶的操作权限。
准备图像分类数据 使用ModelArts自动学习构建模型时,您需要将数据上传至对象存储服务(OBS)中。OBS桶需要与ModelArts在同一区域。 数据集要求 保证图片质量:不能有损坏的图片,目前支持的格式包括jpg、jpeg、bmp、png。 不要把明显不同的多个任务数据放在同一个数据集内。
创建图像分类项目 ModelArts自动学习,包括图像分类、物体检测、预测分析、声音分类和文本分类项目。您可以根据业务需求选择创建合适的项目。您需要执行如下操作来创建自动学习项目。 创建项目 登录ModelArts管理控制台,在左侧导航栏单击“自动学习”,进入新版自动学习页面。
动态挂载OBS并行文件系统成功,但是在Notebook的JupyterLab中无法看到本地挂载点 问题现象 在Notebook中动态挂载OBS并行文件系统,本地挂载目录为/data/demo-yf/,实际在JupyterLab左侧导航看不到此目录。 图1 本地挂载目录 图2 Notebook的JupyterLab
执行LoRA微调训练任务 Step1 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。