AI开发平台MODELARTS-预训练任务:Step2 启动训练脚本

时间:2024-11-05 09:54:16

Step2 启动训练脚本

请根据表1修改超参值后,再启动训练脚本。Llama2-70B建议为8机64卡训练。

多机启动

以Llama2-70B为例,多台机器执行训练启动命令如下。多机启动需要在每个节点上执行。

进入代码目录/home/ma-user/ws/xxx-Ascend/llm_train/AscendSpeed下执行启动脚本。xxx-Ascend请根据实际目录替换。

#第一台节点
MASTER_ADDR=xx.xx.xx.xx NNODES=8 NODE_RANK=0 MODEL_TYPE=70B  RUN_TYPE=pretrain DATASET_PATH=/home/ma-user/ws/processed_for_ma_input/Llama2-70B/data/pretrain/alpaca_text_document TOKENIZER_PATH=/home/ma-user/ws/tokenizers/Llama2-70B/tokenizer.model TRAIN_ITERS=200 MBS=2  GBS=1024 TP=8 PP=8 WORK_DIR=/home/ma-user/ws sh scripts/llama2/llama2.sh
# 第二台节点 
MASTER_ADDR=xx.xx.xx.xx NNODES=8 NODE_RANK=1 MODEL_TYPE=70B  RUN_TYPE=pretrain DATASET_PATH=/home/ma-user/ws/processed_for_ma_input/Llama2-70B/data/pretrain/alpaca_text_document TOKENIZER_PATH=/home/ma-user/ws/tokenizers/Llama2-70B/tokenizer.model TRAIN_ITERS=200 MBS=2  GBS=1024 TP=8 PP=8 WORK_DIR=/home/ma-user/ws sh scripts/llama2/llama2.sh
...
...
# 第八台节点 
MASTER_ADDR=xx.xx.xx.xx NNODES=8 NODE_RANK=7 MODEL_TYPE=70B  RUN_TYPE=pretrain DATASET_PATH=/home/ma-user/ws/processed_for_ma_input/Llama2-70B/data/pretrain/alpaca_text_document TOKENIZER_PATH=/home/ma-user/ws/tokenizers/Llama2-70B/tokenizer.model TRAIN_ITERS=200 MBS=2  GBS=1024 TP=8 PP=8 WORK_DIR=/home/ma-user/ws sh scripts/llama2/llama2.sh

以上命令多台机器执行时,只有${NODE_RANK}的节点ID值不同,其他参数都保持一致;

其中MASTER_ADDR、 NODE_RANK、 NODE_RANK、MODEL_TYPE 、RUN_TYPE、DATASET_PATH、TOKENIZER_PATH为必填;TRAIN_ITERS、MBS、GBS、 TP、PP、WORK_DIR为非必填,有默认值。

单机启动

对于Llama2-7B和Llama2-13B,操作过程与Llama2-70B相同,只需修改对应参数即可,可以选用单机启动,以Llama2-13B为例。

进入代码目录/home/ma-user/ws/xxx-Ascend/llm_train/AscendSpeed下,先修改以下命令中的参数,再复制执行。xxx-Ascend请根据实际目录替换。

#必填参数
MODEL_TYPE=13B  \
RUN_TYPE=pretrain \
DATASET_PATH=/home/ma-user/ws/processed_for_ma_input/Llama2-13B/data/pretrain/alpaca_text_document \
TOKENIZER_PATH=/home/ma-user/ws/tokenizers/Llama2-13B/tokenizer.model \
#非必填参数,有默认值
MBS=4  \
GBS=64 \
TP=8 \
PP=1 \
TRAIN_ITERS=200 \
WORK_DIR=/home/ma-user/ws \
sh scripts/llama2/llama2.sh 

等待模型载入

执行训练启动命令后,等待模型载入,当出现“training”关键字时,表示开始训练。训练过程中,训练日志会在最后的Rank节点打印。

图1 等待模型载入

更多查看训练日志和性能操作,请参考查看日志和性能章节。

如果需要使用断点续训练能力,请参考断点续训练章节修改训练脚本。

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