Latent Upscale State Info
Scale a latent by a factor without leaving latent space
- samples
- LATENT
This is RES4LYF's take on the plain latent upscale - it resizes a latent by a multiplier, in latent space, using an interpolation method you pick. If you build two-pass "hires fix" style workflows (generate small, upscale the latent, denoise again at the higher size), this is the node doing the resize in the middle.
Upscaling in latent space is cheap and fast because you never decode to pixels - you just stretch the compressed representation and let a second sampling pass add the missing detail. It's not the highest-quality route (a VAE roundtrip or a proper tile pass adds more real detail), but it's the standard first move for pushing an image above native resolution without regenerating from scratch. The "State Info" in the name points at it being aware of the upscale state in a multi-stage pipeline rather than a bare resize, but functionally what you set is a method and a scale.
How it works
It takes your latent, resamples it to a larger grid by your scale_by factor using the chosen interpolation, and passes the enlarged latent along. You then run a sampler on the result at a partial denoise to turn the stretched latent back into a coherent image at the new size.
The inputs and outputs that matter
samples(LATENT) - the latent to enlarge.upscale_method- the interpolation:nearest-exact,bilinear,area,bicubic, orbislerp.bislerpandbicubicare the usual go-tos for latents;nearest-exactis the blocky one you rarely want here.scale_by(default 1.5) - the multiplier. 1.5x is a gentle, safe hires step; 2x is aggressive and usually needs a stronger second-pass denoise to clean up.
Output is a single LATENT at the new size - feed it into your second-pass sampler (KSampler, or one of RES4LYF's own).
How to install it
Ships with RES4LYF. ComfyUI Manager: search RES4LYF, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ClownsharkBatwing/RES4LYF/
cd RES4LYF
pip install -r requirements.txt
Portable builds use the embedded pip. Restart, hard-refresh (F5).
Common issues
The number-one mistake with any latent upscale is skipping the second sampling pass. Resizing a latent alone gives you a soft, mushy image - the upscale only pays off once you denoise it again at the new resolution, typically at a partial denoise around 0.3–0.5 so you keep the composition but regenerate detail. Second, push scale_by too far in one jump and you'll get the classic high-res failures: duplicated faces, repeated textures. Two smaller passes beat one big one, or reach for a tiled approach at large sizes. Finally, latent upscaling is model-space specific - a latent from an SDXL VAE won't behave the same fed through a Flux pipeline, so keep the whole two-pass chain on one model family.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| samples | LATENT | — | |
| upscale_method | COMBO | 5 options: nearest-exact, bilinear, area, bicubic, bislerp | |
| scale_by | FLOAT | 1.500.01–8 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |