
🧠 记忆锚点:QLoRA 量化冻结的主干省显存,LoRA 增量仍训练;量化是存储策略,不等于全程低精度算。
💡 答案要点
QLoRA = Quantized LoRA(量化 LoRA)
核心区别:在量化基础模型上应用 LoRA
| 维度 | LoRA | QLoRA |
|---|---|---|
| 基础模型精度 | FP16/BF16 | 4-bit(NF4) |
| 显存占用(7B) | ~20GB | ~6GB |
| 训练速度 | 快 | 稍慢(量化开销) |
| 效果 | 基准 | 接近 LoRA(0.1-0.5% 差距) |
QLoRA 的三大创新:
4-bit NormalFloat(NF4)量化
- 专为正态分布设计的数据类型
- 比传统 INT4 更适合神经网络权重
双重量化(Double Quantization)
- 对量化常数本身再量化
- 节省额外 0.37GB 显存(7B 模型)
分页优化器(Paged Optimizers)
- 使用 CPU-GPU 统一内存
- 避免 OOM(内存溢出)
显存对比(Llama 7B):
| 方法 | 模型 | 梯度 | 优化器 | 总计 |
|---|---|---|---|---|
| 全量微调 | 28GB | 28GB | 56GB | 112GB |
| LoRA | 14GB | 0.3GB | 0.6GB | 15GB |
| QLoRA | 3.5GB | 0.3GB | 0.6GB | 4.4GB |
面试话术:
"QLoRA 让我在消费级 GPU(如 RTX 4090 24GB)上微调 13B 模型成为可能。代价是训练速度慢 15-20%,但效果几乎没有损失。"