VAE Selector
The one-dropdown VAE picker that doesn't load anything
- vae_info
VAEs are the least loved part of a stable-diffusion setup, which is a shame, because swapping one is often the cheapest quality fix available. VAE Selector is Sage Utils' contribution to making that swap painless: one dropdown, vae_name, listing your VAE files, and one vae_info output. It doesn't load the VAE. It just records your choice, the same way UNET Selector records a UNET - pick now, load later.
The output type is MODEL_INFO, same as the whole selector family, and that's the part to understand. The vae_info value is a description: which file, ready for the metadata system. You route it one of two ways depending on what you're doing:
- To Load VAE (the pack's "VAE Loader From Info" node under
Sage Utils/loader) when you're building a component-wise workflow and want the VAE actually pulled into memory for decode. - Into UNET CLIP VAE To Model Info when you're assembling a virtual checkpoint - UNET Selector + CLIP Selector + VAE Selector bundled into one
model_info, then handed to a loader as if it were a single checkpoint file.
That second path is where this node earns its keep. People swap VAEs constantly - the standard advice is that a better VAE (the well-known "VAE fix" files, or architecture-matched VAE variants) fixes the washed-out, grey results you get from some checkpoints' bundled decoders. With a selector, that swap is a dropdown change plus a re-run, and the metadata still records exactly which VAE produced the image. On a monolithic checkpoint workflow you'd have to crack open a checkpoint, extract its VAE, and load it separately; this lets you keep the VAE as a first-class citizen instead.
The honest limitations: it's one dropdown, so there's no dtype choice and no fancy options - if your VAE needs special handling, you'll want the loader's settings or a different node. And like every node in this family, a selector by itself produces no model. Wire vae_info into a loader (or the bundler) or you'll have a graph that runs but never decodes.
If you're coming at this cold: the VAE converts the model's internal latent space into actual pixels. Big decode, meaningful VRAM spike, and the place where many workflows choke at the last second. Selecting a VAE here and pairing it with the pack's KSampler + Tiled Decoder (which accepts optional tiling info for memory-friendly decode) is a tidy stack for low-VRAM setups.
Install is the pack standard - ComfyUI Manager (search "Sage Utils") or:
cd ComfyUI/custom_nodes
git clone https://github.com/arcum42/ComfyUI_SageUtils.git
then restart. Nothing downloads with the pack; the dropdown fills from your models/vae folder, so drop your .safetensors there and restart if it's not showing.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| vae_name | COMBO | Choose a VAE model to use. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| vae_info | MODEL_INFO | VAE model info for the selected model. |