rm -rf output_mcore_llava_pretrain/ #需要用transformers==4.45 ENV=dsw # 运行环境配置开关: dsw单机训练训练,dlc表示多机训练环境 MODEL_SIZE=7B # 模型结构参数量级: 0.5B/1.5B/3B/7B/14B/32B/72B BATCH_SIZE=1 # 一次迭代一个数据并行内的样本数 GLOBAL_BATCH_SIZE=256 # 一次迭代多个数据并行的总样本数 LR=0.00015 # 学习率 MIN_LR=1e-5 # 最小学习率 SEQ_LEN=576 # 序列长度 DECODER_SEQ_LEN=1024 # 解码序列长度 PR=fp16 # 训练精度: fp16, bf16, fp8 TP=4 # 模型并行度 PP=1 # 流水并行度 CP=1 # 上下文并行度 DO=true # 是否使用Megatron版Zero-1降显存优化器: true, false FL=true # 是否优先使用Flash Attention: true, false AC=true # 激活检查点模式: sel, full, offload, false OPTIMIZER_OFFLOAD=false # 是否启用Offload optimizer: false, static, auto SAVE_INTERVAL=100000 # 保存ckpt的间隔 DATASET_PATH=/public/new-pai/data/llava-datasets/wds # 训练数据集路径 VALID_DATASET_PATH=/public/new-pai/data/llava-datasets/wds # 验证数据集路径 PRETRAIN_CHECKPOINT_PATH=/public/new-pai/Pai-Megatron-Patch/examples/llava_mcore/Mistral-7B-Instruct-v0.3-to-mcore-tp2-pp1 #需要用转换后的模型 TRAIN_ITERS=20000 # 训练TOKEN或者Iter数 LR_WARMUP_ITERS=200 # 预热TOKEN或者Iter数 OUTPUT_BASEPATH=./output_mcore_llava_pretrain # 训练输出日志文件路径 sh run_mcore_llava-dcu.sh \ $ENV \ $MODEL_SIZE \ $BATCH_SIZE \ $GLOBAL_BATCH_SIZE \ $LR \ $MIN_LR \ $SEQ_LEN \ $DECODER_SEQ_LEN \ $PR \ $TP \ $PP \ $CP \ $DO \ $FL \ $AC \ $OPTIMIZER_OFFLOAD \ $SAVE_INTERVAL \ $DATASET_PATH \ $VALID_DATASET_PATH \ $PRETRAIN_CHECKPOINT_PATH \ $TRAIN_ITERS \ $LR_WARMUP_ITERS \ $OUTPUT_BASEPATH