Update nodes.py

patched VAEDecode if fails due to lack of VRAM fallback to tiled decode method
This commit is contained in:
traugdor 2024-10-30 09:07:10 -05:00 committed by GitHub
parent 09fdb2b269
commit 83be01cebc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -280,11 +280,14 @@ class VAEDecode:
CATEGORY = "latent"
DESCRIPTION = "Decodes latent images back into pixel space images."
def decode(self, vae, samples):
images = vae.decode(samples["samples"])
if len(images.shape) == 5: #Combine batches
images = images.reshape(-1, images.shape[-3], images.shape[-2], images.shape[-1])
return (images, )
def decode(self, vae, samples, tile_size=512):
try:
images = vae.decode(samples["samples"])
if len(images.shape) == 5: #Combine batches
images = images.reshape(-1, images.shape[-3], images.shape[-2], images.shape[-1])
return (images, )
except (MemoryError, RuntimeError) as e:
return (vae.decode_tiled(samples["samples"], tile_x=tile_size // 8, tile_y=tile_size // 8, ), )
class VAEDecodeTiled:
@classmethod