Nodes/ComfyUI-WebUI-Prompt-Bridge/WebUI Bridge Latent Upscale
ComfyUI Node

WebUI Bridge Latent Upscale

Latent hires fix, on the Bridge's terms

By dianfangsihuo·Created 3 months ago·Updated 6 days ago· 39
WebUI Bridge Latent Upscale
  • samples
  • latent
  • status
module_config
fallback_methodbislerp

Models have a hard native-resolution ceiling - push an SDXL-class model past ~1024 and you get duplicated anatomy. That's why hires-fix exists: generate at native res, upscale the latent, run a second, lower-denoise sampling pass to fill in the detail. WebUI Bridge LatentUpscale is the upscale step of that two-pass trick, done in latent space and driven by the pack's upscale settings.

It's the sibling of WebUI Bridge Image Upscale, and the distinction matters. Latent upscale grows the latent tensor before a second sampler; Image upscale grows the decoded pixels after generation. For hires-fix you want the latent version - it's part of the generation pass, not post-processing.

How it works

You feed it samples (a LATENT) and module_config. It reads scale_by from the upscale section (default 2x, bounded 0.01–8x) and rescales the latent with ComfyUI's common_upscale. The interpolation method comes from the config's upscaler, and like its image sibling it's careful: if the configured upscaler is a model name that doesn't exist in latent space, it falls back to the node's fallback_method, default bislerp - the standard choice for latent-space rescaling because it doesn't introduce the blocky artifacts nearest-neighbor does.

The output latent is a copy with the resized samples; the original latent object isn't mutated. You then run a second KSampler on it with a low denoise (the pack's upscale settings default to 0.48 for that second pass) to regenerate detail at the higher resolution. If the upscale module is disabled, it passes the latent through untouched.

Inputs and outputs

  • samples - the latent from your first sampler (or from a VAE Encode).
  • module_config - supplies scale_by and the upscaler method.
  • fallback_method - used when the configured upscaler isn't a latent-space method; bislerp is the right default.
  • Outputs: latent (upscaled, feed to the second KSampler) and status (factor, method, output dimensions - the status reports pixel dimensions at 8x, which is a handy reality check).

How to install

Part of the ComfyUI-WebUI-Prompt-Bridge pack: ComfyUI-Manager → ComfyUI WebUI Prompt Bridge, or clone into custom_nodes and restart. No models, no extra dependencies.

Common issues

The trap is the second pass itself. Latent upscale only changes resolution - if you don't run a second sampler with a modest denoise, you've just made a blurry big latent. The pack's recommended flow pairs this node with a second KSampler at ~0.48 denoise; skip it and your hires fix does nothing. And don't stack it with WebUI Bridge Image Upscale in the same pass - latent upscale then pixel upscale multiplies the resolution 4x and the artifacts along with it. Pick the latent path for hires-fix or the pixel path for post-processing, not both.

Categoryconditioning/webui/modules

Inputs (3)

NameTypeDefaultDescription
samplesLATENT
module_configSTRING
fallback_methodCOMBObislerp5 options: nearest-exact, bilinear, area, bicubic, bislerp

Outputs (2)

NameTypeDescription
latentLATENT
statusSTRING