diff --git a/modules/processing_vae.py b/modules/processing_vae.py index 9b295e39c..71ee84d45 100644 --- a/modules/processing_vae.py +++ b/modules/processing_vae.py @@ -51,12 +51,15 @@ def full_vae_decode(latents, model): latents_mean = model.vae.config.get("latents_mean", None) latents_std = model.vae.config.get("latents_std", None) scaling_factor = model.vae.config.get("scaling_factor", None) + shift_factor = model.vae.config.get("shift_factor", None) if latents_mean and latents_std: latents_mean = (torch.tensor(latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)) latents_std = (torch.tensor(latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)) latents = latents * latents_std / scaling_factor + latents_mean else: latents = latents / scaling_factor + if shift_factor: + latents = latents + shift_factor decoded = model.vae.decode(latents, return_dict=False)[0] # delete vae after OpenVINO compile