MindSpeed-MM-RL
MindSpeed-MM-RL针对多模态模型的强化学习任务,本章节主要描述该框架训练所需的yaml配置文件(通过ascendfactory-cli config 命令生成)、配置参数说明,用户可根据实际自行选择其需要的参数。
yaml文件参数配置

1. 数据集及模型路径设置如下表所示。
|
参数 |
示例值 |
参数说明 |
|---|---|---|
|
backend_config.megatron_training.tokenizer_name_or_path |
/home/ma-user/AscendFactory/ckpts/hf_path/Qwen2.5-VL-7B-Instruct |
【必修改】转换前的权重路径。请根据实际规划修改。 |
|
backend_config.data.dataset_param.basic_parameters.dataset_dir |
/home/dataset/geo3k/ |
【必修改】数据集路径。请根据实际规划修改。 |
2. 权重转换设置,详解如下。
|
参数 |
示例值 |
参数说明 |
|---|---|---|
|
backend_config.convert_ckpt_hf2mg.cfg.mm_dir |
/home/ma-user/AscendFactory/ckpts/mm_path/converted_weight_TP${backend_config.training.tensor-model-parallel-size}_PP${backend_config.training.pipeline-model-parallel-size} |
【必修改】转换后保存目录。请根据实际规划修改。 |
|
backend_config.convert_ckpt_hf2mg.cfg.hf_config.hf_dir |
${backend_config.data.dataset_param.preprocess_parameters.model_name_or_path} |
huggingface权重目录。 |
|
backend_config.convert_ckpt_hf2mg.cfg.parallel_config.llm_pp_layers |
- 1 - 10 - 10 - 7 |
llm在每个卡上切分的层数,注意要和微调时backend_config.model中配置的pipeline_num_layers一致。 |
|
backend_config.convert_ckpt_hf2mg.cfg.parallel_config.vit_pp_layers |
- 32 - 0 - 0 - 0 |
vit在每个卡上切分的层数,注意要和微调时backend_config.model中配置的pipeline_num_layers一致。 |
|
backend_config.convert_ckpt_mg2hf.cfg.parallel_config.tp_size |
1 |
tp并行数量,注意要和megatron_training中的配置一致。 |
|
backend_config.convert_ckpt_mg2hf.cfg.save_hf_dir |
${af_output_dir}/ckpt_converted_mg2hf |
训练任务完成后转换回hf模型格式的目录。 |
|
backend_config.convert_ckpt_mg2hf.cfg.parallel_config.llm_pp_layers |
- 1 - 10 - 10 - 7 |
llm在每个卡上切分的层数,注意要和微调时backend_config.model中配置的pipeline_num_layers一致。 |
|
backend_config.convert_ckpt_mg2hf.cfg.parallel_config.vit_pp_layers |
- 32 - 0 - 0 - 0 |
vit在每个卡上切分的层数,注意要和微调时backend_config.model中配置的pipeline_num_layers一致。 |
|
backend_config.convert_ckpt_mg2hf.cfg.parallel_config.tp_size |
1 |
tp并行数量,注意要和megatron_training中的配置一致。 |
3. 训练场景、权重文件、输出目录及其他重要参数设置,详解如下。
|
参数 |
示例值 |
参数说明 |
|---|---|---|
|
af_output_dir |
/home/ma-user/ws/save_dir |
【必修改】训练任务结束生成日志及权重文件目录 |
|
backend_config.actor_config.micro_batch_size |
1 |
表示流水线并行中一个micro batch所处理的样本量。在流水线并行中,为了减少气泡时间,会将一个step的数据切分成多个micro batch。 该值与tensor-model-parallel-size和pipeline-model-parallel-size以及模型大小相关,可根据实际情况进行调整,简称MBS。 |
|
backend_config.megatron_training.global_batch_size |
128 |
表示训练中所有机器一个step所处理的样本量。影响每一次训练迭代的时长,简称GBS。 |
|
backend_config.actor_config.tensor_model_parallel_size |
8 |
表示张量并行,简称TP。 |
|
backend_config.actor_config.pipeline_model_parallel_size |
4 |
表示流水线并行。一般此值与训练节点数相等,与权重转换时设置的值相等,简称PP。 |
|
backend_config.actor_config.lr |
2.5e-5 |
学习率设置。 |
|
backend_config.actor_config.min_lr |
2.5e-6 |
最小学习率设置。 |
|
backend_config.megatron_training.train_iters |
10 |
非必填。表示训练step迭代次数,有默认值 |
|
backend_config.megatron_training.save_interval |
1000 |
用于模型中间版本地保存。
模型版本保存次数=TRAIN_ITERS//SAVE_INTERVAL+1 |
其余未提及参数参考三方官方参数配置修改配置。