huggingface config_error ai_generated true

ValueError: 名为 'default' 的适配器已加载。请使用唯一的适配器名称或禁用此适配器。

ValueError: An adapter with the name 'default' is already loaded. Use a unique adapter name or disable this adapter.

ID: huggingface/peft-adapter-name-collision

其他格式: JSON · Markdown 中文 · English
90%修复率
88%置信度
1证据数
2023-10-20首次发现

版本兼容性

版本状态引入弃用备注
peft>=0.6.0 active
transformers>=4.31.0 active
torch>=1.13.0 active

根因分析

PEFT(参数高效微调)阻止加载同名适配器以避免权重冲突。当使用相同名称两次调用 `load_adapter` 或名为 'default' 的适配器已激活时,会发生此错误。

English

PEFT (Parameter-Efficient Fine-Tuning) prevents loading multiple adapters with the same name to avoid weight conflicts. This occurs when calling `load_adapter` twice with the same name or when an adapter named 'default' is already active.

generic

官方文档

https://huggingface.co/docs/peft/main/en/developer_guides/multi_adapter

解决方案

  1. Use a unique name for each adapter load, such as including a timestamp or identifier. For example: `model.load_adapter(peft_model_id, adapter_name='my_adapter_v2')`.
  2. Disable the current adapter before loading a new one with the same name using `model.disable_adapter()`.

无效尝试

常见但无效的做法:

  1. 30% 失败

    Removing the adapter with `delete_adapter('default')` before loading a new one may cause errors if the adapter is currently active and the model has been trained with it.

  2. 50% 失败

    Setting `adapter_name=None` in `load_adapter` does not auto-generate a unique name; it defaults to 'default' again.