PEFT 文档

辅助方法

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验

开始使用

辅助方法

PEFT 的辅助函数集合。

检查模型是否为 PEFT 模型

peft.helpers.check_if_peft_model

< >

( model_name_or_path: str ) bool

参数

  • model_name_or_path (str) — 要检查的模型ID,可以是本地模型或Hugging Face Hub上的模型。

返回值

bool

如果模型是PEFT模型,则返回True,否则返回False。

检查模型是否为PEFT模型。

临时调整LoraLayer模块中的适配器缩放比例

peft.helpers.rescale_adapter_scale

< >

( model multiplier )

参数

  • multiplier (float 或 int) — 用于重新调整scaling属性的乘数。必须为浮点数或整数类型。

引发异常

ValueError

  • ValueError — 如果模型不包含任何LoraLayer实例,表示模型不支持缩放。

用于临时调整模型中LoRA适配器缩放比例的上下文管理器。

上下文管理器退出时,会恢复原始的缩放比例值。此上下文管理器适用于已直接加载LoRA适配器的transformers和diffusers模型。

对于LoRA,使用[0, 1]范围内的乘数应用此上下文管理器,与应用wise-ft(有关详细信息,请参见#1940)严格等效。如果微调所用训练数据与推理过程中使用的测试数据之间存在分布偏移,则可以提高模型的性能。

警告:据报道,当使用Apple的MPS后端进行PyTorch时,在退出上下文管理器后,需要添加短暂的睡眠时间,才能完全恢复缩放比例。

示例

>>> model = ModelWithLoraLayer()
>>> multiplier = 0.5
>>> with rescale_adapter_scale(model, multiplier):
...     outputs = model(**inputs)  # Perform operations with the scaled model
>>> outputs = model(**inputs)  # The original scaling values are restored here
< > 在GitHub上更新