Skip to content

Commit 33aa808

Browse files
Make denoised output on custom sampler nodes work with nested tensors. (#11471)
1 parent eb0e10a commit 33aa808

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

comfy_extras/nodes_custom_sampler.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -760,8 +760,12 @@ def execute(cls, model, add_noise, noise_seed, cfg, positive, negative, sampler,
760760
out = latent.copy()
761761
out["samples"] = samples
762762
if "x0" in x0_output:
763+
x0_out = model.model.process_latent_out(x0_output["x0"].cpu())
764+
if samples.is_nested:
765+
latent_shapes = [x.shape for x in samples.unbind()]
766+
x0_out = comfy.nested_tensor.NestedTensor(comfy.utils.unpack_latents(x0_out, latent_shapes))
763767
out_denoised = latent.copy()
764-
out_denoised["samples"] = model.model.process_latent_out(x0_output["x0"].cpu())
768+
out_denoised["samples"] = x0_out
765769
else:
766770
out_denoised = out
767771
return io.NodeOutput(out, out_denoised)
@@ -948,8 +952,12 @@ def execute(cls, noise, guider, sampler, sigmas, latent_image) -> io.NodeOutput:
948952
out = latent.copy()
949953
out["samples"] = samples
950954
if "x0" in x0_output:
955+
x0_out = guider.model_patcher.model.process_latent_out(x0_output["x0"].cpu())
956+
if samples.is_nested:
957+
latent_shapes = [x.shape for x in samples.unbind()]
958+
x0_out = comfy.nested_tensor.NestedTensor(comfy.utils.unpack_latents(x0_out, latent_shapes))
951959
out_denoised = latent.copy()
952-
out_denoised["samples"] = guider.model_patcher.model.process_latent_out(x0_output["x0"].cpu())
960+
out_denoised["samples"] = x0_out
953961
else:
954962
out_denoised = out
955963
return io.NodeOutput(out, out_denoised)

0 commit comments

Comments
 (0)