Anymatix Latent Upscale Model Loader
Load the model that doubles your image in latent space before the detail pass
- LATENT_UPSCALE_MODEL
Here's the upscaling trick that still surprises people: you don't have to upscale the pixels. A latent upscale model operates on the compressed latent representation before the VAE ever turns it back into an image, which makes it a fast, cheap intermediate step in a two-pass (hi-res fix) workflow. Generate at native resolution, upscale the latents with a model like 4x-UltraSharp or a purpose-trained latent upscaler, then run a second pass at low denoising strength to paint in real detail. That's the workflow the upscaling essays describe as the standard for anything above native resolution - and AnymatixLatentUpscaleModelLoader is the piece that loads the upscale model for it.
It's a thin wrapper around ComfyUI's stock LatentUpscaleModelLoader, with one change: model_name is a string rather than a dropdown. The pack resolves it against models/upscale_models, and the fetcher can provision the weights from a URL - so a workflow that wants a specific upscaler can download it on first run rather than assuming it's installed. Note that this is the loader only; it returns the loaded model, and the actual 2x happens in a separate LatentUpscale node that takes this output plus your latents.
When you'd actually reach for it
Latent upscaling is the cheap rung of the two-pass ladder. A pixel upscaler (ESRGAN family) has to run at full resolution and can be heavy; latent upscale runs before decode, is fast, and only needs the second pass to do the detail work. It's the right tool when you're already planning a img2img/denoise pass at the higher resolution and just need the intermediate canvas bigger. If you want pure pixels with no re-render, a real ESRGAN-style upscale model is the better tool - the latent route shines precisely when a diffusion pass is coming anyway.
Inputs and output
- model_name (STRING) - the upscale model's filename (resolved against
models/upscale_models) or a fetched path. - Output: LATENT_UPSCALE_MODEL → the
upscale_modelinput of LatentUpscale.
Install
The shared pack routine:
cd ComfyUI/custom_nodes
git clone https://github.com/Anymatix/anymatix-comfy-nodes
then restart, or ComfyUI Manager → search "anymatix-comfy-nodes". The upscale model file itself you either download or let AnymatixFetcher grab.
Issues to expect
The honest gotchas are workflow-level, not node-level. Latent upscaling multiplies your latent resolution - 2x means 4x the pixels for the second pass - so VRAM can jump fast; keep your detail pass's denoise low (0.3-0.5 is the community sweet spot) or you'll re-generate the image rather than refining it. And if you load a model that turns out to be a pixel-space upscaler by mistake, the LatentUpscale node will reject it - this loader's output type is specifically the latent kind.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT_UPSCALE_MODEL | LATENT_UPSCALE_MODEL | — |