PEFT 文档
LyCORIS
并获取增强的文档体验
开始使用
LyCORIS
LyCORIS (Lora beYond Conventional methods, Other Rank adaptation Implementations for Stable diffusion) 是一种类似 LoRA 的矩阵分解适配器,用于修改 UNet 的交叉注意力层。LoHa 和 LoKr 方法继承自这里的 Lycoris
类。
LycorisConfig
class peft.tuners.lycoris_utils.LycorisConfig
< source >( task_type: typing.Union[str, peft.utils.peft_types.TaskType, NoneType] = None peft_type: typing.Union[str, peft.utils.peft_types.PeftType, NoneType] = None auto_mapping: typing.Optional[dict] = None base_model_name_or_path: typing.Optional[str] = None revision: typing.Optional[str] = None inference_mode: bool = False rank_pattern: Optional[dict] = <factory> alpha_pattern: Optional[dict] = <factory> )
类似 LyCORIS 适配器的基础配置
LycorisLayer
类似 LyCORIS 适配器的基础层
将活动的适配器权重合并到基础权重中
此方法从基础权重中取消合并所有已合并的适配器层。
LycorisTuner
class peft.tuners.lycoris_utils.LycorisTuner
< source >( model config adapter_name low_cpu_mem_usage: bool = False )
参数
- model (
torch.nn.Module
) — 要适配的模型。 - config (LoraConfig) — Lora 模型的配置。
- adapter_name (
str
) — 适配器的名称,默认为"default"
。 - low_cpu_mem_usage (
bool
,optional
, 默认为False
) — 在 meta 设备上创建空的适配器权重。有助于加速加载过程。
LyCORIS 适配器等的基础调谐器
删除现有适配器。
merge_and_unload
< source >( progressbar: bool = False safe_merge: bool = False adapter_names: Optional[list[str]] = None )
此方法将适配器层合并到基础模型中。 如果有人想将基础模型用作独立模型,则需要这样做。
set_adapter
< source >( adapter_name: str | list[str] )
设置活动适配器。
此外,此函数会将指定的适配器设置为可训练的(即,requires_grad=True)。 如果不希望这样做,请使用以下代码。
通过删除所有 lora 模块而不合并,返回基础模型。 这将返回原始基础模型。