ComfyUI Node

VAEIter

Decode the same latents with two different VAEs at once

By CYBERLOOM-INC·Created 3 years ago·Updated 2 years ago· 11
VAEIter
  • vae1
  • vae2
  • VAE

A VAE can make or break an image - the right one sharpens colors and detail, the wrong one produces washed-out or posterized output - and most checkpoints ship with one that's merely fine. VAEIter is the node for actually A/B-testing them: feed it vae1 and vae2, and it returns vae1 with the second one attached, so the exact same latents get decoded through both and come out as a single batch for side-by-side comparison.

Inputs: vae1, vae2 (both VAE); output: vae1. The mechanism mirrors the other iter nodes in the pack: iterize_vae monkey-patches vae1.decode so decoding a latent tensor runs it through every VAE in the list and concatenates the images. On its own that just gives you doubled output - the point is pairing it with this pack's KSamplerXYZ and VAEDecodeBatched.

The intended flow is one of the more elegant things in the pack: generate once with any sampler, feed the latent to VAEIter(vae1, vae2)VAEDecodeBatchedGridImage, and you get each image rendered twice, once per VAE, in the same grid row. No double-sampling, identical seeds, identical everything except the decoder. The README's workflow_xyz_vae.json example is exactly this.

It's the VAE analogue of CLIPIter's relationship to ModelIter: if you're comparing full checkpoints, ModelIter does the whole job; VAEIter shines when the only thing you want to test is the decoder. That's a genuinely common use case - people swap VAEs on SD1.5 constantly, and eyeballing a clean A/B is way better than squinting at two separate runs with slightly different seeds.

Install via ComfyUI Manager (search "ComfyUI-nodes-hnmr") or:

cd ComfyUI/custom_nodes
git clone https://github.com/CYBERLOOM-INC/ComfyUI-nodes-hnmr

Restart ComfyUI; no downloads, no dependencies beyond ComfyUI's own.

Practical notes. VAEDecodeBatched is what makes this usable - a raw VAE Decode fed the iterated VAE will still work, but the batched decoder is built to handle the iterated case (it chunks the decoded result per VAE), so prefer it. Also remember the outputs are a doubled batch: 2 VAEs × N latents = 2N images, so set your grid columns accordingly. And install the CYBERLOOM-INC fork, not the abandoned original - that's the whole reason this repo exists, to keep the original author's tools working on modern ComfyUI.

Categorymodel

Inputs (2)

NameTypeDefaultDescription
vae1VAE
vae2VAE

Outputs (1)

NameTypeDescription
VAEVAE