很有风格的网站有哪些郑州网站建设制作
当模型参数越来越大的情况下,如果我们的GPU内存比较小,那么就没办法直接进行全参数微调,此时我们可以借助deepspeed来进行微调。
1、deepspeed的配置文件:deepspeed.json
{"train_batch_size": 4,"train_micro_batch_size_per_gpu": 1,"zero_optimization": {"stage":1}
}
这里我们启动的ZeRO-1:优化器状态跨 GPU 分区
2、在TrainingArguments里面增加配置参数,来加载deepspeed的配置文件:
training_args = TrainingArguments(output_dir=output_dir,
evaluation_strategy="steps", num_train_epochs=100,learning_rate=5e-6,
save_strategy="steps", greater_is_better=True, metric_for_best_model="precision",
per_device_train_batch_size=1,per_device_eval_batch_size=1,
load_best_model_at_end=True,local_rank=0,save_total_limit=10,deepspeed="deepspeed.json"
)
3、利用deepspeed的命令来启动训练:
nohup deepspeed train.py > logd.txt 2>&1 &
当前我们利用44G的GPU全参微调了Qwen2.5-3B的模型