LTXV Latent Upscale Model Loader (GGUF)
Upscaling LTX video without leaving latent space
- LATENT_UPSCALE_MODEL
LTX video has a quirk: the model renders internally at half your target resolution and upscales, so "1080p" output is really ~540p pushed up. Lightricks ships dedicated latent upscalers for this - models that work inside latent space, before the VAE decode - and this node loads the GGUF versions of them. If you're running an LTX 2.5 workflow and want the x2 spatial and temporal upscaler pass, this is the loader.
It's a small, sharp tool from the molbal/ComfyUI-GGUF fork: one dropdown, one output, nothing else. Put a latent upscaler GGUF in models/latent_upscale_models, pick it, and the node hands back a LATENT_UPSCALE_MODEL that wires straight into ComfyUI's LTXV Latent Upsampler node.
How it works
Under the hood it reads the GGUF file, checks that its architecture is actually ltxv_upscaler (it'll refuse anything else), pulls the model config out of the GGUF metadata, and builds a LatentUpsampler from it using GGML ops. The upscalers' convolutional weights stay BF16 - this isn't a low-bit convolution quantization like the diffusion transformer; the GGUF here mostly buys you a tidy single-file container plus the loader's normal offload behavior. The output is a CoreModelPatcher, which is exactly what LTXV Latent Upsampler expects.
Which files? The LTX 2.5 latent spatial upscaler (x2) and the latent temporal upscaler (x2). The README shows converting both from their safetensors origins:
python tools/convert.py --src ./ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors \
--dst ./ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.gguf
python tools/convert.py --src ./ltx-2.5-latent-temporal-upscaler-x2-bf16-1.0.safetensors \
--dst ./ltx-2.5-latent-temporal-upscaler-x2-bf16-1.0.gguf
Then place them in models/latent_upscale_models and load with this node. The LTX 2.5 transformer itself (the 22B distilled checkpoint) loads separately through Unet Loader (GGUF).
The input that matters
model_name - a dropdown of files in models/latent_upscale_models. That's it. One output: LATENT_UPSCALE_MODEL, into LTXV Latent Upsampler.
Installing
The usual pack install - search ComfyUI-GGUF in the ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/molbal/ComfyUI-GGUF
Restart ComfyUI and pip install --upgrade gguf. This node additionally needs a ComfyUI build that includes the comfy.ldm.lightricks.latent_upsampler module - the native LTX 2.5 support isn't in every version, so if the node errors on import or the upsampler node is missing from your palette, update ComfyUI first.
Where people get burned
- LTX 1.x vs 2.x confusion. The 1.x and 2.x series have entirely different model files, text encoders, and node plumbing. This loader is for LTX 2.5 latent upscalers specifically - feeding it a 1.x-era upscaler fails the architecture check.
- Don't convert with a low-bit quant type. The README's example leaves the upscalers in BF16 (
--quant-typeomitted), and that's deliberate. Keep them there. - General pack rules still apply:
_Kquants aren't supported for anything but text encoders, and you need ComfyUI v0.27.0+ for the native path.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | 0 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT_UPSCALE_MODEL | LATENT_UPSCALE_MODEL | — |