From 624e71ef16f20400ecced4ac20ac3eb8c5282e00 Mon Sep 17 00:00:00 2001 From: Vixy Date: Thu, 1 Jan 2026 22:48:21 -0600 Subject: [PATCH] Use DPM++ scheduler when IP-Adapter disabled DPMSolverMultistepScheduler produces sharper, higher quality output. This matches the original dreamtail configuration that produced excellent results. --- worker/generator.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/worker/generator.py b/worker/generator.py index 700d332..098dd20 100755 --- a/worker/generator.py +++ b/worker/generator.py @@ -11,7 +11,7 @@ import cv2 import numpy as np from typing import Optional, Dict, Any, List, Union from pathlib import Path -from diffusers import StableDiffusionXLPipeline, DDIMScheduler +from diffusers import StableDiffusionXLPipeline, DDIMScheduler, DPMSolverMultistepScheduler from PIL import Image import asyncio @@ -83,7 +83,7 @@ class SDXLGenerator: add_watermarker=False, ) else: - # Use model's default scheduler for best quality + # Use model's default scheduler, then switch to DPM++ for best quality self.pipeline = StableDiffusionXLPipeline.from_pretrained( config.SDXL_MODEL_ID, torch_dtype=dtype, @@ -91,6 +91,11 @@ class SDXLGenerator: cache_dir=str(config.MODELS_DIR), add_watermarker=False, ) + # Use DPM++ scheduler for better quality/speed + self.pipeline.scheduler = DPMSolverMultistepScheduler.from_config( + self.pipeline.scheduler.config + ) + logger.info("Using DPM++ scheduler for best quality") # Move to device self.pipeline = self.pipeline.to(self.device)