From 25470e5524222a04a80e04b455bc16947a32affd Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Sun, 4 May 2025 12:12:09 -0400 Subject: [PATCH] fix sdxl-refiner workflow Signed-off-by: Vladimir Mandic --- CHANGELOG.md | 4 +++- modules/processing_helpers.py | 2 +- modules/sd_models.py | 2 +- modules/shared_items.py | 1 + 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e351a68e3..84d000304 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Change Log for SD.Next -## Update for 2025-05-01 +## Update for 2025-05-04 - **Features** - Prompt-Enhhance: add **Qwen3** 0.6B/1.7B/4B models @@ -14,6 +14,7 @@ - Docker: pre-install `ffmpeg` - Wiki: updated pages: *Video, ROCm, ZLUDA, Quantization* - Gallery: support JXL image format + - Scheduler: add sigmoid beta scheduler - **Fixes** - FramePack: correct dtype - NNCF: check dependencies and register quant type @@ -22,6 +23,7 @@ - Texture tiling: fix apply when switching models - Diffusers: slow initial startup - Gated access: obfuscate and log token used for access + - SDXL refiner workflow ## Highlights for 2025-04-28 diff --git a/modules/processing_helpers.py b/modules/processing_helpers.py index dc339f8af..ccf49569e 100644 --- a/modules/processing_helpers.py +++ b/modules/processing_helpers.py @@ -23,7 +23,7 @@ def is_txt2img(): def is_refiner_enabled(p): - return p.enable_hr and p.refiner_steps > 0 and p.refiner_start > 0 and p.refiner_start < 1 and shared.sd_refiner is not None + return p.enable_hr and (p.refiner_steps > 0) and (p.refiner_start > 0) and (p.refiner_start < 1) and (shared.sd_refiner is not None) def setup_color_correction(image): diff --git a/modules/sd_models.py b/modules/sd_models.py index 4e7664d6d..1992787cb 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -276,7 +276,7 @@ def load_diffuser_initial(diffusers_load_config, op='model'): def load_diffuser_force(model_type, checkpoint_info, diffusers_load_config, op='model'): sd_model = None - unload_model_weights() + unload_model_weights(op=op) shared.sd_model = None try: if model_type in ['Stable Cascade']: # forced pipeline diff --git a/modules/shared_items.py b/modules/shared_items.py index 1bcb47334..d8796daf5 100644 --- a/modules/shared_items.py +++ b/modules/shared_items.py @@ -17,6 +17,7 @@ pipelines = { 'Stable Diffusion XL': getattr(diffusers, 'StableDiffusionXLPipeline', None), 'Stable Diffusion XL Inpaint': getattr(diffusers, 'StableDiffusionXLInpaintPipeline', None), 'Stable Diffusion XL Instruct': getattr(diffusers, 'StableDiffusionXLInstructPix2PixPipeline', None), + 'Stable Diffusion XL Refiner': getattr(diffusers, 'StableDiffusionXLImg2ImgPipeline', None), 'Stable Cascade': getattr(diffusers, 'StableCascadeCombinedPipeline', None), 'Stable Diffusion 3.x': getattr(diffusers, 'StableDiffusion3Pipeline', None), 'Latent Consistency Model': getattr(diffusers, 'LatentConsistencyModelPipeline', None),