什么是 QLoRA?
QLoRA(量化低秩适应)是一种高效的微调技术,结合了 4 位量化和 LoRA 适配器,能够在消费级硬件上微调大型语言模型,同时保持接近全精度的性能。
快速了解
| 全称 | 量化低秩适应 |
|---|---|
| 创建时间 | 2023 年由 Tim Dettmers 等人提出 |
工作原理
QLoRA 代表了让大型语言模型微调对计算资源有限的研究人员和开发者变得可及的突破。通过将基础模型量化到 4 位精度并仅训练小型低秩适配器矩阵,QLoRA 将内存需求减少高达 75%,同时实现可比的结果。这项技术通过使数十亿参数的模型能够在单个 GPU 上微调,使 LLM 定制化变得民主化。
主要特点
- 基础模型权重的 4 位 NormalFloat(NF4)量化
- 双重量化进一步减少内存占用
- 分页优化器处理内存峰值
- 以全精度训练的低秩适配器
- 通过量化权重的反向传播
- 内存高效的梯度检查点
常见用途
- 在单个 48GB GPU 上微调 650 亿以上参数的模型
- 计算预算有限的学术研究
- 领域特定 LLM 的快速原型设计
- 基于自定义数据训练的个人 AI 助手
- 初创公司的经济高效模型定制
示例
loading...
Loading code...常见问题
什么是 QLoRA?
QLoRA(量化低秩适应)是一种高效的微调技术,结合了 4 位量化和 LoRA 适配器。它通过将内存需求减少高达 75%,使大型语言模型能够在消费级硬件上微调,同时保持接近全精度的性能。
QLoRA 与 LoRA 有什么区别?
LoRA 在冻结的基础模型权重之上训练小型适配器矩阵,而 QLoRA 增加了基础模型的 4 位量化。这大大减少了内存使用,允许在相同硬件上微调更大的模型。QLoRA 还引入了 NF4 量化和双重量化以实现最佳效率。
QLoRA 微调需要什么硬件?
QLoRA 使 650 亿以上参数的模型能够在单个 48GB GPU(如 A6000 或 A100)上微调。较小的模型如 70 亿或 130 亿参数可以在具有 24GB 显存的消费级 GPU(RTX 3090/4090)上微调。这比完全微调所需的多个高端 GPU 大大减少。
QLoRA 会影响模型质量吗?
研究表明 QLoRA 实现了与完整 16 位微调相当的性能。4 位量化主要影响存储,而计算使用更高精度。低秩适配器以全精度训练,保留了模型有效学习新任务的能力。
QLoRA 的关键创新是什么?
关键创新包括:针对正态分布权重优化的 NF4(4 位 NormalFloat)量化、量化量化常数的双重量化、使用 CPU 内存处理梯度峰值的分页优化器,以及通过量化权重的高效反向传播。