AI开发平台MODELARTS-预训练任务:预训练超参配置

时间:2024-06-17 15:07:55

预训练超参配置

预训练脚本qwen.sh,存放在“xxx-Ascend/llm_train/AscendSpeed/scripts/qwen”目录下。训练前,需要根据实际需要配置超参。

表1 预训练超参配置

参数

示例值

参数说明

DATASET_PATH

/home/ma-user/ws/processed_for_ma_input/Qwen-14B/data/pretrain/alpaca_text_document

必填。训练时指定的输入数据路径。一般为数据地址/处理后的数据前缀名,不加文件类型后缀。

请根据实际规划修改。

TOKENIZER_PATH

/home/ma-user/ws/tokenizers/Qwen-14B

必填。加载tokenizer时,tokenizer存放地址。

请根据实际规划修改。

MODEL_TYPE

14B

必填。表示模型加载类型,根据实际填写7B、14B或72B。

TRAIN_ITERS

200

非必填。表示训练迭代周期,根据实际需要修改。

MBS

2

非必填。表示流水线并行中一个micro batch所处理的样本量。在流水线并行中,为了减少气泡时间,会将一个step的数据切分成多个micro batch。

该值与TP和PP以及模型大小相关,可根据实际情况进行调整。默认值为2。取值建议如下:

  • Qwen-14B:2
  • Qwen-7B:2
  • Qwen-72B:1

GBS

64

非必填。表示训练中所有机器一个step所处理的样本量。影响每一次训练迭代的时长。

默认值为64。对于PP(流水线并行)值大于1的场景,增大GBS值吞吐性能会有提升。

TP

8

非必填。表示张量并行。默认值为8,取值建议:

  • Qwen-14B:8
  • Qwen-7B:4
  • Qwen-72B:8

PP

1

非必填。表示流水线并行。默认值为1,取值建议:

  • Qwen-14B:1
  • Qwen-7B:1
  • Qwen-72B:大于等于5,例如5机填写5,8机填8。

RUN_TYPE

pretrain

必填。表示训练类型,根据实际训练任务类型选择。取值说明:

  • pretrain:表示预训练
  • retrain:表示断点续训
  • sft:表示SFT微调训练
  • lora:表示LoRA微调训练

MASTER_ADDR

localhost

多机必填。主节点IP地址,多台机器中需要指定一个节点IP为主节点IP。

一般指定第一个节点IP为主节点IP。

NNODES

1

多机必填。节点总数,如为双机,则写2。单机默认是1。

NODE_RANK

0

多机必填。节点序号,当前节点ID,一般从0开始,单机默认是0。以Qwen-72B 5机训练为例,节点ID依次为(0 1 2 3 4);一般ID为0的节点设置为主节点IP。

WORK_DIR

/home/ma-user/ws

容器的工作目录。训练的权重文件保存在此路径下。非必填,默认值为:/home/ma-user/ws。

SEQ_LEN

4096

非必填。默认值为4096。

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