huggingface / huggingface/diffusers

Multi-controlnet batching for `StableDiffusionXLControlNetInpaintPipeline`

Offen
#9,511 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
contributions-welcome stale
Vorherrschende Sprache
Python
Sterne
34.5k
Forks
7.3k
Ø Merge
3 T. 3 Std.
Gemergte PRs (30 T.)
91

Beschreibung

**Is your feature request related to a problem? Please describe.**
Currently, batching is not supported when we are conditioning the SDXL pipeline on multiple controlnets: https://github.com/huggingface/diffusers/blob/28f9d84549c0b1d24ef00d69a4c723f3a11cffb6/src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint_sd_xl.py#L771

**Describe the solution you'd like.**
We can pass a list of lists of images for batch inference.

**Describe alternatives you've considered.**
One-by-one processing, which results in very low GPU utilization.

There was a similar PR raised for the `StableDiffusionControlNetPipeline` https://github.com/huggingface/diffusers/pull/6334

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start in src/diffusers/pipelines/controlnet/pipeline_controlnet_inpaint_sd_xl.py at the referenced batching logic. Compare the requested list-of-lists input with the similar StableDiffusionControlNetPipeline change in PR #6334. Done means multi-ControlNet SDXL inpaint inference accepts batched inputs and avoids one-by-one processing.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, pytorch
Bereich
machine-learning
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
52/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.