You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否在Transformers库中像Diffusers一样动态添加/移除LoRA权重?

Transformers库中LoRA权重的动态加载与移除实现

答案是肯定的,Transformers库同样支持LoRA权重的动态添加与移除操作,核心依赖于peft库(Hugging Face官方推出的参数高效微调工具),具体实现方式如下:

  • 动态加载LoRA权重
    先通过peft.LoraModel.from_pretrained方法加载基础模型与LoRA适配器,或者在已有模型上调用load_adapter方法加载新的LoRA权重。示例代码如下:

    from peft import PeftModel
    from transformers import AutoModelForCausalLM
    
    # 加载基础模型
    base_model = AutoModelForCausalLM.from_pretrained("base-model-path")
    # 加载LoRA适配器
    lora_model = PeftModel.from_pretrained(base_model, "lora-adapter-path")
    

    如果需要切换不同的LoRA适配器,可以直接调用lora_model.load_adapter("new-lora-path", adapter_name="new-adapter"),再通过lora_model.set_adapter("new-adapter")切换到新的适配器。

  • 动态移除LoRA权重
    可以通过lora_model.delete_adapter("adapter-name")删除指定的LoRA适配器,或者调用lora_model.unload()完全移除所有LoRA适配器,恢复到基础模型状态。

  • 融合LoRA权重
    若需要将LoRA权重融合到基础模型中,可使用lora_model.merge_and_unload()方法,该操作会将LoRA参数与基础模型参数合并,之后模型就不再依赖LoRA适配器文件,适合部署场景。

需要注意的是,使用这些功能需要确保peft和transformers库处于较新版本,避免兼容性问题。

内容的提问来源于stack exchange,提问作者Saeid Ghafouri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 12:02:34