From cbaa0ad46f0eda2f3d9bcf8a42d6271e6760e578 Mon Sep 17 00:00:00 2001 From: Nick Senger Date: Wed, 1 Jan 2025 12:34:17 -0800 Subject: UniPC for diffusion sampling (#2684) * feat: Add unipc multistep scheduler * chore: Clippy and formatting * chore: Update comments * chore: Avoid unsafety in float ordering * refactor: Update Scheduler::step mutability requirements * fix: Corrector img2img * chore: Update unipc ref link to latest diffusers release * chore: Deduplicate float ordering * fix: Panic when running with dev profile --- candle-transformers/src/models/stable_diffusion/schedulers.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'candle-transformers/src/models/stable_diffusion/schedulers.rs') diff --git a/candle-transformers/src/models/stable_diffusion/schedulers.rs b/candle-transformers/src/models/stable_diffusion/schedulers.rs index 1d39037f..1ce94ca2 100644 --- a/candle-transformers/src/models/stable_diffusion/schedulers.rs +++ b/candle-transformers/src/models/stable_diffusion/schedulers.rs @@ -19,7 +19,7 @@ pub trait Scheduler { fn scale_model_input(&self, sample: Tensor, _timestep: usize) -> Result; - fn step(&self, model_output: &Tensor, timestep: usize, sample: &Tensor) -> Result; + fn step(&mut self, model_output: &Tensor, timestep: usize, sample: &Tensor) -> Result; } /// This represents how beta ranges from its minimum value to the maximum -- cgit v1.2.3