Load VAE Index (NH)
One loader, up to 64 VAEs, picked by a single number
- vae
- filename
- index
Load VAE Index (NH) is the VAE-flavored member of the pack's "indexed loaders" family: instead of one loader node per VAE, you get one node with a long menu of VAE slots and a number that decides which one actually loads. It's built for the same reason as the pack's LoRA and CLIP index nodes - big, configurable workflows where you'd rather flip an index than rewire a graph.
Here's the shape of it. You set vae_count (how many slots you care about, default 5, up to 64), fill in the corresponding vae_1 through vae_N dropdowns with actual VAEs from your models/vae folder, and then index picks which one loads. It reads directly from ComfyUI's VAE list, so anything you can load with the normal Load VAE node shows up in these dropdowns.
How it works
There are two selection modes via select_mode:
- index (default) - load the VAE in slot N where N is the
indexvalue. This is the simple one. - boolean - instead of an index, each slot has an
enable_Ncheckbox, and the first enabled slot wins. Handy if you want to flip between VAEs by ticking boxes rather than typing a number.
The outputs are vae (the loaded VAE, wire it into a VAE Decode or VAE Encode), filename (the name of the VAE that loaded, great for logging or filenames), and index (which slot was actually used - useful in boolean mode when you didn't pick it yourself).
The important mechanism is what happens when nothing loads: if the selected slot is empty, the node returns an execution blocker, which stops everything downstream of it from running. That's a feature, not a bug - it means an empty slot safely halts the branch instead of silently feeding a broken VAE into your decode.
The traps
Indexing is 1-based. Slot 1 is index 1, not 0. People trip on this constantly, and it matters because an out-of-range index (say 5 when vae_count is 3) just blocks execution - no error, no obvious clue.
vae_count hides the rest. The dropdowns exist up to 64, but only the first vae_count slots are actually consulted. If you fill vae_7 but leave vae_count at 5, slot 7 is dead weight.
Boolean mode needs a checkbox on. If none of the enable_N toggles are true, you get the same execution-blocking behavior. It's not a bug - it's how you keep a branch dormant until you want it.
When it earns its place
Honestly, for most people a normal Load VAE is the right tool. This node shines in a few specific setups: an A/B test rig where you want to swap decoders without touching the graph, a config-driven workflow where the VAE choice is data (say, picked by another logic node from an index), or a shared template where you don't want other users hunting for the right loader. Pair the index output with a Switch N (NH) or Value Match Index (NH) and the whole workflow can drive its own VAE selection.
Install
Part of NH-Nodes: ComfyUI Manager → search NH-Nodes → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/jetthuangai/NH-Nodes.git
cd NH-Nodes
pip install -r requirements.txt
No extra model downloads - the VAEs are whatever you already keep in ComfyUI/models/vae, and the node just needs the pack installed.
Inputs (131)
| Name | Type | Default | Description |
|---|---|---|---|
| select_mode | COMBO | index | 2 options: index, boolean |
| index | INT | 11–64 | — |
| vae_count | INT | 51–64 | — |
| vae_1opt | COMBO | 1 options: | |
| enable_1opt | BOOLEAN | false | — |
| vae_2opt | COMBO | 1 options: | |
| enable_2opt | BOOLEAN | false | — |
| vae_3opt | COMBO | 1 options: | |
| enable_3opt | BOOLEAN | false | — |
| vae_4opt | COMBO | 1 options: | |
| enable_4opt | BOOLEAN | false | — |
| vae_5opt | COMBO | 1 options: | |
| enable_5opt | BOOLEAN | false | — |
| vae_6opt | COMBO | 1 options: | |
| enable_6opt | BOOLEAN | false | — |
| vae_7opt | COMBO | 1 options: | |
| enable_7opt | BOOLEAN | false | — |
| vae_8opt | COMBO | 1 options: | |
| enable_8opt | BOOLEAN | false | — |
| vae_9opt | COMBO | 1 options: | |
| enable_9opt | BOOLEAN | false | — |
| vae_10opt | COMBO | 1 options: | |
| enable_10opt | BOOLEAN | false | — |
| vae_11opt | COMBO | 1 options: | |
| enable_11opt | BOOLEAN | false | — |
| vae_12opt | COMBO | 1 options: | |
| enable_12opt | BOOLEAN | false | — |
| vae_13opt | COMBO | 1 options: | |
| enable_13opt | BOOLEAN | false | — |
| vae_14opt | COMBO | 1 options: | |
| enable_14opt | BOOLEAN | false | — |
| vae_15opt | COMBO | 1 options: | |
| enable_15opt | BOOLEAN | false | — |
| vae_16opt | COMBO | 1 options: | |
| enable_16opt | BOOLEAN | false | — |
| vae_17opt | COMBO | 1 options: | |
| enable_17opt | BOOLEAN | false | — |
| vae_18opt | COMBO | 1 options: | |
| enable_18opt | BOOLEAN | false | — |
| vae_19opt | COMBO | 1 options: | |
| enable_19opt | BOOLEAN | false | — |
| vae_20opt | COMBO | 1 options: | |
| enable_20opt | BOOLEAN | false | — |
| vae_21opt | COMBO | 1 options: | |
| enable_21opt | BOOLEAN | false | — |
| vae_22opt | COMBO | 1 options: | |
| enable_22opt | BOOLEAN | false | — |
| vae_23opt | COMBO | 1 options: | |
| enable_23opt | BOOLEAN | false | — |
| vae_24opt | COMBO | 1 options: | |
| enable_24opt | BOOLEAN | false | — |
| vae_25opt | COMBO | 1 options: | |
| enable_25opt | BOOLEAN | false | — |
| vae_26opt | COMBO | 1 options: | |
| enable_26opt | BOOLEAN | false | — |
| vae_27opt | COMBO | 1 options: | |
| enable_27opt | BOOLEAN | false | — |
| vae_28opt | COMBO | 1 options: | |
| enable_28opt | BOOLEAN | false | — |
| vae_29opt | COMBO | 1 options: | |
| enable_29opt | BOOLEAN | false | — |
| vae_30opt | COMBO | 1 options: | |
| enable_30opt | BOOLEAN | false | — |
| vae_31opt | COMBO | 1 options: | |
| enable_31opt | BOOLEAN | false | — |
| vae_32opt | COMBO | 1 options: | |
| enable_32opt | BOOLEAN | false | — |
| vae_33opt | COMBO | 1 options: | |
| enable_33opt | BOOLEAN | false | — |
| vae_34opt | COMBO | 1 options: | |
| enable_34opt | BOOLEAN | false | — |
| vae_35opt | COMBO | 1 options: | |
| enable_35opt | BOOLEAN | false | — |
| vae_36opt | COMBO | 1 options: | |
| enable_36opt | BOOLEAN | false | — |
| vae_37opt | COMBO | 1 options: | |
| enable_37opt | BOOLEAN | false | — |
| vae_38opt | COMBO | 1 options: | |
| enable_38opt | BOOLEAN | false | — |
| vae_39opt | COMBO | 1 options: | |
| enable_39opt | BOOLEAN | false | — |
| vae_40opt | COMBO | 1 options: | |
| enable_40opt | BOOLEAN | false | — |
| vae_41opt | COMBO | 1 options: | |
| enable_41opt | BOOLEAN | false | — |
| vae_42opt | COMBO | 1 options: | |
| enable_42opt | BOOLEAN | false | — |
| vae_43opt | COMBO | 1 options: | |
| enable_43opt | BOOLEAN | false | — |
| vae_44opt | COMBO | 1 options: | |
| enable_44opt | BOOLEAN | false | — |
| vae_45opt | COMBO | 1 options: | |
| enable_45opt | BOOLEAN | false | — |
| vae_46opt | COMBO | 1 options: | |
| enable_46opt | BOOLEAN | false | — |
| vae_47opt | COMBO | 1 options: | |
| enable_47opt | BOOLEAN | false | — |
| vae_48opt | COMBO | 1 options: | |
| enable_48opt | BOOLEAN | false | — |
| vae_49opt | COMBO | 1 options: | |
| enable_49opt | BOOLEAN | false | — |
| vae_50opt | COMBO | 1 options: | |
| enable_50opt | BOOLEAN | false | — |
| vae_51opt | COMBO | 1 options: | |
| enable_51opt | BOOLEAN | false | — |
| vae_52opt | COMBO | 1 options: | |
| enable_52opt | BOOLEAN | false | — |
| vae_53opt | COMBO | 1 options: | |
| enable_53opt | BOOLEAN | false | — |
| vae_54opt | COMBO | 1 options: | |
| enable_54opt | BOOLEAN | false | — |
| vae_55opt | COMBO | 1 options: | |
| enable_55opt | BOOLEAN | false | — |
| vae_56opt | COMBO | 1 options: | |
| enable_56opt | BOOLEAN | false | — |
| vae_57opt | COMBO | 1 options: | |
| enable_57opt | BOOLEAN | false | — |
| vae_58opt | COMBO | 1 options: | |
| enable_58opt | BOOLEAN | false | — |
| vae_59opt | COMBO | 1 options: | |
| enable_59opt | BOOLEAN | false | — |
| vae_60opt | COMBO | 1 options: | |
| enable_60opt | BOOLEAN | false | — |
| vae_61opt | COMBO | 1 options: | |
| enable_61opt | BOOLEAN | false | — |
| vae_62opt | COMBO | 1 options: | |
| enable_62opt | BOOLEAN | false | — |
| vae_63opt | COMBO | 1 options: | |
| enable_63opt | BOOLEAN | false | — |
| vae_64opt | COMBO | 1 options: | |
| enable_64opt | BOOLEAN | false | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| vae | VAE | — |
| filename | STRING | — |
| index | INT | — |