# 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`
- **Domain:** huggingface
- **Category:** config_error
- **Verification:** ai_generated
- **Fix Rate:** 90%

## Root Cause

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.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| peft>=0.6.0 | active | — | — |
| transformers>=4.31.0 | active | — | — |
| torch>=1.13.0 | active | — | — |

## Workarounds

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')`.** (95% success)
   ```
   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()`.** (85% success)
   ```
   Disable the current adapter before loading a new one with the same name using `model.disable_adapter()`.
   ```

## Dead Ends

- **** — 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. (30% fail)
- **** — Setting `adapter_name=None` in `load_adapter` does not auto-generate a unique name; it defaults to 'default' again. (50% fail)
