云服务器内容精选

  • LoRA微调超参配置 本章节介绍LoRA微调训练前的超参配置,可以根据实际需要修改。 LoRA微调训练脚本lora-llama2-13b.sh,存放在AscendCloud-3rdLLM-6.3.902/llm_train/AscendSpeed/scripts/llama2/目录下。训练前,可以根据实际需要修改超参配置。 微调任务配置,操作同预训练配置类似,不同点为RUN_TYPE类型不同,以及输入输出路径的配置的不同。 表1 超参配置 参数 值 参数说明 DATA_PATH /home/ma-user/ws/datasets/alpaca-ft/llama2-13b/alpaca-ft 必填。训练时指定的输入数据路径。一般为数据地址/处理后的数据前缀名,不加文件类型后缀。 TOKENIZER_PATH /home/ma-user/ws/tokenizers/llama2-13b-hf 必填。tokenizer保存地址。 SAVE_PATH $PWD/ckpt 中间保存结果,包含训练日志。 SAVE_CKPT_PATH ${SAVE_PATH}/ckpt-llama2-13b-lora 必填。训练ckpt保存地址。 MODEL_PATH /home/ma-user/ws/weight/llama2-13b-ckpt 必填。加载的权重文件路径。取值二选一: (推荐)上一步LoRA微调权重转换章节中将HuggingFace格式转化为AscendSpeed格式的权重文件。 预训练完成后保存的权重文件,即预训练超参配置中的SAVE_CKPT_PATH值。如果使用此权重文件,需要将权重文件的名称改为release,将latest_checkpointed_iteration.txt的内容文件内容改为release,具体参考1和5.3-2。 MODEL_TYPE 13B 模型加载类型。 TRAIN_ITERS 2000 训练迭代周期。根据实际需要修改。 MBS 4 流水线并行中一个micro batch所处理的样本量。在流水线并行中,为了减少气泡时间,会将一个step的数据切分成多个micro batch。 非必填,默认值4。 GBS 64 训练中所有机器一个step所处理的样本量。影响每一次训练迭代的时长。建议值单机64,双机128。 TP 8 张量并行。 PP 1 流水线并行。 seq_length 4096 要处理的最大序列长度,默认值2048,建议改为4096。 RUN_TYPE lora 训练脚本类型:pretrain、sft、lora。此处填写lora,表示LoRA微调训练。 父主题: LoRA微调训练
  • LoRA微调权重转换 LoRA微调训练前,需要先把训练权重文件转换为AscendSpeed格式。 基于预训练或增量预训练生成的权重文件已经是AscendSpeed格式,进行LoRA微调训练时,不需要再单独做权重转换,可以跳过此章节。 基于原始HuggingFace权重进行LoRA微调训练时,需要将Huggingface格式权重转换为AscendSpeed格式。 LoRA微调训练和增量预训练使用的是同一个HuggingFace权重文件,转换为AscendSpeed格式后的结果也是通用的。如果在增量预训练任务中已经完成了HuggingFace权重转换操作,此处无需重复操作,可以直接使用增量预训练中的权重转换结果。如果前面没有执行HuggingFace权重转换任务,可以参考增量预训练权重转换章节完成。 父主题: LoRA微调训练
  • LoRA微调权重转换 LoRA微调训练前,需要先把训练权重文件转换为AscendSpeed格式。 基于预训练或SFT全参微调生成的权重文件已经是AscendSpeed格式,进行LoRA微调训练时,不需要再单独做权重转换,可以跳过此章节。 基于原始HuggingFace权重进行LoRA微调训练时,需要将Huggingface格式权重转换为AscendSpeed格式。 LoRA微调训练和SFT全参微调使用的是同一个HuggingFace权重文件,转换为AscendSpeed格式后的结果也是通用的。如果在SFT全参微调任务中已经完成了HuggingFace权重转换操作,此处无需重复操作,可以直接使用SFT全参微调中的权重转换结果。如果前面没有执行HuggingFace权重转换任务,可以参考SFT全参微调权重转换章节完成。 父主题: LoRA微调训练