FLUX support

This commit is contained in:
Disty0
2024-08-02 18:22:06 +03:00
parent 9965ef75e7
commit bb707e4509
3 changed files with 9 additions and 2 deletions
+3 -1
View File
@@ -309,8 +309,10 @@ def process_diffusers(p: processing.StableDiffusionProcessing):
if not hasattr(output, 'images') and hasattr(output, 'frames'):
shared.log.debug(f'Generated: frames={len(output.frames[0])}')
output.images = output.frames[0]
if hasattr(shared.sd_model, "_unpack_latents") and hasattr(shared.sd_model, "vae_scale_factor"): # FLUX
output.images = shared.sd_model._unpack_latents(output.images, p.height, p.width, shared.sd_model.vae_scale_factor)
if torch.is_tensor(output.images) and len(output.images) > 0 and any(s >= 512 for s in output.images.shape):
results = output.images.cpu().numpy()
results = output.images.float().cpu().numpy()
elif hasattr(shared.sd_model, "vae") and output.images is not None and len(output.images) > 0:
results = processing_vae.vae_decode(latents=output.images, model=shared.sd_model, full_quality=p.full_quality)
elif hasattr(output, 'images'):