AI开发平台MODELARTS-SFT全参微调超参配置

时间:2024-04-30 18:09:32

SFT全参微调超参配置

本章节介绍SFT全参微调前的超参配置,可以根据实际需要修改。

SFT全参微调脚本sft-llama2-13b.sh,存放在AscendCloud-3rdLLM-6.3.902/llm_train/AscendSpeed/scripts/llama2目录下。训练前,可以根据实际需要修改超参配置。

微调任务配置,操作同预训练配置类似,不同点为RUN_TYPE类型不同,以及输入输出路径的配置的不同。

表1 SFT全参微调超参配置

参数

参数说明

DATA_PATH

/home/ma-user/ws/datasets/alpaca/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-sft

必填。训练ckpt保存地址。

MODEL_PATH

/home/ma-user/ws/weight/llama2-13b-ckpt

必填。加载的权重文件路径。取值二选一:

  • (推荐)上一步SFT全参微调权重转换章节中将HuggingFace格式转化为AscendSpeed格式的权重文件。
  • 预训练完成后保存的权重文件,即预训练超参配置中的SAVE_CKPT_PATH值。如果使用此权重文件,需要将权重文件的名称改为release,将latest_checkpointed_iteration.txt的内容文件内容改为release,具体参考15.3-2

MASTER_ADDR=${1:-localhost}

localhost

主节点IP地址,默认为localhost。 多机多卡训练时需指定主节点IP地址。

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

sft

训练脚本类型:pretrain、sft、loral。此处填写sft,表示SFT全参微调。

support.huaweicloud.com/bestpractice-modelarts/modelarts_10_1556.html