如何处理显存溢出
💡 问题表现:
模型训练时显存溢出,如何处理?
📌 问题原因:
模型训练时显存溢出,通常是由于当前某个设备的剩余显存不足以完成计算任务。
✅ 解决方法:
- 降低批处理大小:
per_device_train_batch_size: 1。 - 替换模型算子:
enable_liger_kernel: true和use_unsloth_gc: true。 - 降低最大序列长度:
cutoff_len: 512。 - 使用:
DeepSpeed ZeRO-3或FSDP将模型权重拆分到多个设备或使用CPU Offloading。 - 设置
quantization_bit: 4量化模型参数(仅限于LoRA方法)。