Closed WSC741606 closed 6 months ago
训练脚本如下
NNODES=3 \
NODE_RANK=$NODE_RANK \
MASTER_ADDR=$MASTER_ADDR \
MASTER_PORT=$MASTER_PORT \
NPROC_PER_NODE=8 \
swift sft --seed 0\
--ddp_backend "gloo" \
--use_flash_attn "False"\
--sft_type "lora" \
--dtype "fp16"\
--neftune_noise_alpha "5"\
--model_id_or_path $MODEL \
--model_type yi-6b-chat \
--template_type AUTO \
--system $SYSTEM\
--dataset tulu-v2-sft-mixture \
--custom_train_dataset_path $DATASET \
--train_dataset_sample -1\
--eval_steps "500"\
--save_steps "500"\
--check_dataset_strategy 'warning'\
--lora_target_modules ALL\
--lora_rank "32"\
--lora_dtype AUTO \
--batch_size "1"\
--learning_rate "1e-5"\
--max_length "8192"\
--num_train_epochs "3"\
--self_cognition_sample "9999"\
--model_name $NAME\
--model_author $AUTHOR\
--warmup_ratio "0.1"\
--gradient_accumulation_steps 16 \
--preprocess_num_proc 16\
--test_oom_error False \
--add_output_dir_suffix False\
--save_only_model "False"\
--output_dir $new_folder --logging_dir $new_folder/runs > $new_folder/runs/run.log 2>&1
绝了,只上自定义的数据集过一个epoch没啥问题,估计是tulu-v2-sft-mixture的锅了
你可以试试混合ms-bench数据集
自我认知采样不需要那么多
好的,我试试,另外自我认知采样是用固定值还是给和其他数据大概的比例?我拓展了一下自我认知的数据,总共差不多800条
补充一下,混合ms-bench训练没问题
请教一下大佬,自定义数据集混合tulu-v2-sft-mixture微调yi-6b-chat,到一个特定的step(743/3030)报错结束,重复多次都在这里报错(换过不同机子跑,但都是V10083),这可能是什么原因呢?或者怎么提取出对应step的训练行或者直接跳过呢?试过test_oom_error测试确认没有OOM的问题,数据集已采用如下正则表达式过滤去除特殊字符,只留下中英文、数字、希腊字母和标点;
数据集是“query,response”的CSV格式,utf-8-sig编码,前面跑过其他同流程制备的自定义数据集没有遇到过类似问题;报错的Traceback如下,不过感觉看不出什么信息
感谢大佬!