Repolode
huggingface

huggingface/peft

Hugging Face 参数高效微调(PEFT)库,只训练少量额外参数即可适配大型预训练模型。

Star
21,824
Fork
2,610
未关闭 Issue
97
最近提交
17小时前

这是什么?

大型预训练模型的全量微调在算力和存储上成本很高。PEFT 提供 LoRA 等方法,冻结基础模型,只训练新增的少量参数。得到的适配器通常只有几 MB 大小,在许多场景下效果可与全量微调相当。

使用方式是通过 get_peft_model 用配置对象包装基础模型,再用 save_pretrained 保存适配器,并通过 PeftModel.from_pretrained 加载。该库与 Hugging Face Transformers 集成用于训练和推理,与 Diffusers 集成便于管理多个适配器,并与 Accelerate 配合进行分布式训练。

项目基于 PyTorch 和 Python 开发,文档涵盖支持的方法以及 Adapter、软提示和 IA3 等概念说明。

核心功能

  • 01实现 LoRA 及适配器、软提示、IA3 等参数高效微调方法。
  • 02通过 get_peft_model 和配置对象包装兼容的模型。
  • 03将适配器保存为体积很小的检查点,可加载到基础模型上。
  • 04与 Transformers、Diffusers 和 Accelerate 集成。
  • 05支持量化基础模型,降低训练时的显存占用。

适用场景

  • 在单张消费级 GPU 上微调数十亿参数的大语言模型。
  • 为同一个基础模型维护多个面向不同任务的适配器。
  • 用 LoRA 训练 Stable Diffusion 的风格或主体定制模型。
  • 借助 Accelerate 在分布式环境中训练超大模型。

快速上手

  1. 1

    从 pip 安装 PEFT

    pip install peft
  2. 2

    使用 get_peft_model 用 LoRA 配置包装基础模型,然后训练并保存

使用前须知

  • 运行 README 中的示例需要兼容 PyTorch 的 GPU 或加速器,并需下载较大的预训练模型。

标签

常见问题

peft 是什么?
Hugging Face 参数高效微调(PEFT)库,只训练少量额外参数即可适配大型预训练模型。 大型预训练模型的全量微调在算力和存储上成本很高。PEFT 提供 LoRA 等方法,冻结基础模型,只训练新增的少量参数。得到的适配器通常只有几 MB 大小,在许多场景下效果可与全量微调相当。
peft 可以免费使用吗?用的什么许可证?
peft 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
peft 还在维护吗?
活跃维护中。peft 最近一次提交是在 2026年10月21日。
peft 适合用来做什么?
在单张消费级 GPU 上微调数十亿参数的大语言模型。 为同一个基础模型维护多个面向不同任务的适配器。 用 LoRA 训练 Stable Diffusion 的风格或主体定制模型。 借助 Accelerate 在分布式环境中训练超大模型。
peft 怎么安装和运行?
从 pip 安装 PEFT: pip install peft 使用 get_peft_model 用 LoRA 配置包装基础模型,然后训练并保存
在哪里获取 peft?
源代码和安装说明在 GitHub 上:https://github.com/huggingface/peft

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目