最近在试着用LoRA微调Llama 3 8B,设备是RTX 4090 24G,数据集大概5万条对话。结果刚跑第一轮batch size设成4就直接OOM了,试了梯度累积和混合精度(bf16),还是撑不住。
我看网上有人说用bitsandbytes量化到4bit能省显存,但我加载模型后生成文本变慢了好多,而且微调完效果有点飘。
想问问大家,除了换硬件,有没有什么实用的显存优化技巧?比如分片加载、offload或者改attention?另外,8B模型用4bit微调会不会损失太多能力?求指个路,有点迷茫。
楼主
2026-07-19
大佬们,用PyTorch跑Llama 3微调,显存爆了怎么办?
请 登录 后发表回复
全部回复
共 162 条
2楼
5天前
4bit微调确实掉点,试试QLoRA加paged optimizers,能稳不少。
其实24G跑8B LoRA,batch=1加梯度累积就够了,别硬刚batch size。
3楼
12小时前
试试把micro batch size降到1,梯度累积步数拉上去,4090跑8B的LoRA其实没这么容易爆。真正吃显存的大头是优化器状态和激活值,可以开gradient checkpointing,再把max_seq_len砍到512或1024,能省一大截。4bit微调确实会掉点效果,建议QLoRA只量化基座,LoRA层保持bf16,学出来的adapter质量会稳很多。另外数据5万条有点多,先抽几千条跑通流程再放大,别一上来就硬刚全量。