Nodes/saya-comfy-couple-plus/Saya Hires Trio Router Shared Prompt RESCUE
ComfyUI Node

Saya Hires Trio Router Shared Prompt RESCUE

One conditioning, five models, four hires stages — pick the combo

By alphaziod·Created 4 months ago·Updated a day ago· 4
Saya Hires Trio Router Shared Prompt RESCUE
  • positive
  • negative
  • main_model
  • main_vae
  • dual_sampling_model
  • dual_sampling_vae
  • support1_model
  • support1_vae
  • usdu1_model
  • usdu1_vae
  • usdu2_model
  • usdu2_vae
  • positive
  • negative
  • base_model
  • base_vae
  • mid_model
  • mid_vae
  • final_model
  • final_vae
  • last_model
  • last_vae
◄━━ CUSTOM VAE ━━━━ CUSTOM VAE ━━►
◄custom_vae_1▾►
◄custom_vae_2▾►
◄custom_vae_3▾►
◄━━ BASE HIRES ━━━━ BASE HIRES ━━►
◄base_sourcemain►
◄base_vaenone►
◄━━ MID HIRES ━━━━ MID HIRES ━━►
◄mid_sourcemain►
◄mid_vaenone►
◄━━ FINAL HIRES ━━━━ FINAL HIRES ━━►
◄final_sourcemain►
◄final_vaenone►
◄━━ LAST HIRES ━━━━ LAST HIRES ━━►
◄last_sourcemain►
◄last_vaenone►

This node answers a very specific "rescue" problem in the author's multi-pass workflows: you've got one shared positive/negative conditioning, and you've got a pile of models and VAEs loaded into the graph - but each of your four hires stages wants a different one of them. Rather than hand-wiring four KSamplers to four different model sources and praying you grabbed the right wire, this router takes the pool in once and lets you pick which model/VAE combo each hires stage runs, with the same conditioning passed to all of them.

The "Trio" in the name is loose - it actually routes across up to five model sources. The schema asks you to connect:

  • main_model / main_vae
  • dual_sampling_model / dual_sampling_vae
  • support1_model / support1_vae
  • usdu1_model / usdu1_vae (upscale-denoise-upscale slots)
  • usdu2_model / usdu2_vae

plus your shared positive and negative conditionings.

What you actually set

Below those sockets sit four stage blocks - base, mid, final, and last hires (rendered as ━━ BASE HIRES ━━ style separator labels in the UI). Each block has two dropdowns:

  • *_source - which of the five models runs that stage (main by default). Options: main, dual_sampling, support1, usdu1, usdu2.
  • *_vae - which VAE decodes it. Default none means "use the same VAE as the source model." Otherwise you can force one of the other slots' VAEs, or pick a standalone custom VAE.

There are also three custom_vae_1/2/3 dropdowns at the top, listing VAEs from your models/vae folder. You pick a custom VAE there, then reference it from any stage's *_vae dropdown. Note that in saved workflow files these choices are URL-encoded (AAA%20Anime%20VAE%20SDXL%20v2.safetensors instead of spaces) - the node resolves both forms, but don't be alarmed if a JSON file looks like that.

If a requested model or VAE can't be resolved, it falls back to the main model/VAE rather than hard-failing - which is a lifesaver mid-hires, though it does mean a typo can silently sample with the wrong model. If your output suddenly doesn't match expectations, check whether you actually selected the source you meant.

Outputs

Ten outputs: your positive and negative passed straight through, then for each stage a *_model and *_vae pair - base_model/base_vae, mid_model/mid_vae, final_model/final_vae, last_model/last_vae. Wire each pair into that stage's sampler (and the shared conditioning into all of them). Nothing is loaded or patched here; it's pure routing, so it's cheap and safe to place anywhere.

This one is deep in author-specific territory - the five-source pool, the "usdu" slots, four sequential hires stages - so if your workflow doesn't resemble the author's, the node's value drops fast. But if you're building a multi-stage hires pass and want the model/VAE selection for four stages in one visible place instead of four separate loaders, this is exactly the tidy-up you're looking for.

Install: ComfyUI Manager search saya-comfy-couple-plus, or clone https://github.com/alphaziod/saya-comfy-couple-plus into custom_nodes and restart. numpy and Pillow are the only deps; nothing to download. WIP pack - back up workflows before updating, and expect the occasional port reshuffle.

Categorysaya/rescue

Inputs (28)

NameTypeDefaultDescription
positiveCONDITIONING—
negativeCONDITIONING—
main_modelMODEL—
main_vaeVAE—
dual_sampling_modelMODEL—
dual_sampling_vaeVAE—
support1_modelMODEL—
support1_vaeVAE—
usdu1_modelMODEL—
usdu1_vaeVAE—
usdu2_modelMODEL—
usdu2_vaeVAE—
━━ CUSTOM VAE ━━STRING━━ CUSTOM VAE ━━—
custom_vae_1COMBO1 options: none
custom_vae_2COMBO1 options: none
custom_vae_3COMBO1 options: none
━━ BASE HIRES ━━STRING━━ BASE HIRES ━━—
base_sourceCOMBOmain5 options: main, dual_sampling, support1, usdu1, usdu2
base_vaeCOMBOnone9 options: none, main, dual_sampling, support1, usdu1, usdu2, +3
━━ MID HIRES ━━STRING━━ MID HIRES ━━—
mid_sourceCOMBOmain5 options: main, dual_sampling, support1, usdu1, usdu2
mid_vaeCOMBOnone9 options: none, main, dual_sampling, support1, usdu1, usdu2, +3
━━ FINAL HIRES ━━STRING━━ FINAL HIRES ━━—
final_sourceCOMBOmain5 options: main, dual_sampling, support1, usdu1, usdu2
final_vaeCOMBOnone9 options: none, main, dual_sampling, support1, usdu1, usdu2, +3
━━ LAST HIRES ━━STRING━━ LAST HIRES ━━—
last_sourceCOMBOmain5 options: main, dual_sampling, support1, usdu1, usdu2
last_vaeCOMBOnone9 options: none, main, dual_sampling, support1, usdu1, usdu2, +3

Outputs (10)

NameTypeDescription
positiveCONDITIONING—
negativeCONDITIONING—
base_modelMODEL—
base_vaeVAE—
mid_modelMODEL—
mid_vaeVAE—
final_modelMODEL—
final_vaeVAE—
last_modelMODEL—
last_vaeVAE—