使用bitsandbytes、4位量化和QLoRA提高LLM的可访问性

使用bitsandbytes、4位量化和QLoRA提高LLM的可访问性

💡 原文英文,约2900词,阅读约需11分钟。
📝

内容提要

本文介绍了Bitsandbytes和QLoRA两种方法,可以将模型压缩到4位精度,适用于大多数HF模型。虽然无法进行纯4位训练,但可以使用参数高效微调方法(PEFT)在模型上进行微调。作者还介绍了这种量化方法对消费级硬件上训练大型模型的影响,并提供了相关实验结果。

🎯

关键要点

  • Bitsandbytes和QLoRA方法可以将模型压缩到4位精度,适用于大多数HF模型。
  • QLoRA是一种高效的微调方法,可以在单个48GB GPU上微调65B参数模型,同时保持16位微调的任务性能。
  • QLoRA通过冻结4位量化的预训练语言模型,并将梯度反向传播到低秩适配器(LoRA)来实现微调。
  • QLoRA引入了4位NormalFloat(NF4)数据类型、双重量化和分页优化器等创新,以节省内存而不牺牲性能。
  • QLoRA微调在小型高质量数据集上取得了最先进的结果,即使使用比之前的最先进模型更小的模型。
  • QLoRA的Guanaco模型在Vicuna基准测试中表现优于所有先前公开发布的模型,接近ChatGPT的性能。
  • 用户可以通过Hugging Face生态系统的工具在4位模型上训练适配器。
  • QLoRA方法支持多种模型架构,包括Llama、OPT、GPT-Neo等。
  • 虽然无法进行纯4位训练,但可以使用参数高效微调方法(PEFT)在模型上进行微调。
  • 该方法可以在消费级硬件上训练大型模型,降低了对硬件的要求。
➡️

继续阅读