huggingface / huggingface/diffusers
custom_pipeline not being cached
- Dominant language
- Python
- Stars
- 34.5k
- Forks
- 7.3k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 91
Description
### Describe the bug
Components of custom pipelines (defined via custom_pipeline parameter) do not seem to be cached.
I have a multistep system where I'm loading all my components and then caching them explicitly using transformers.utils.move_cache.
I have an sdxl pipeline with `custom_pipeline="lpw_stable_diffusion_xl"`. The normal pipeline components seem to be cached correctly but not the components of the custom_pipeline.
I'm restoring the cached components by using the Pipeline with `local_files_only=True`, however diffusers is always trying to reach the internet for the custom_pipeline components, which it cannot, since the env where the restoration happens, doesn't have a connection.
### Reproduction
```python
StableDiffusionXLPipeline.from_pretrained(
"stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16,
custom_pipeline="lpw_stable_diffusion_xl"
)
```
### Logs
_No response_
### System Info
latest diffusers version from main branch
### Who can help?
@yiyixuxu @sayakpaul @DN6
Contributor guide
Research direction
Start with StableDiffusionXLPipeline.from_pretrained using custom_pipeline="lpw_stable_diffusion_xl", then inspect how transformers.utils.move_cache handles the custom pipeline components. Reproduce the restoration with local_files_only=True and verify that the custom components load from the cache without an internet connection.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- machine-learning
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100