LTX-2.5 Models Loader ⚡
The one node that loads everything LTX-2.5 needs — picture, audio, and all
- model
- clip
- vae
- audio_vae
LTX-2.5 is a different animal from LTX-2.3 - a new latent space (128 channels, /32 spatial, /8 temporal), a Gemma-4-12B text encoder with its own projection, and a separate VAE for video and for audio. Loading all of that by hand is four nodes and a prayer. This is the one node that does it: pick four files and get MODEL / CLIP / VAE / audio_vae out, ready to feed the rest of the CCTech LTX-2.5 chain. It's the start of the official video_ltx2_5_i2v workflow, collapsed into a single dropdowns-and-outputs node.
The reason it earns its keep beyond convenience is validation. Loading a 2.3 checkpoint into the 2.5 nodes errors - deliberately, because the architectures genuinely don't match - and this loader is where that guard lives. It checks that the DiT actually builds as an ltxav A/V model and refuses files that aren't. It also refuses a swapped VAE: the audio and video VAE slots are each verified, so you can't silently feed the video VAE to the audio socket and get nonsense downstream.
The files it expects
All from folders you already have:
| Slot | File | Folder |
|---|---|---|
| unet_name | ltx-2.5 A/V DiT - the comfy int8 safetensors, or a Q6_K/Q8_0 GGUF | models/diffusion_models (unet) |
| clip_name | gemma4-12b-with-proj-ltx-2.5-*.safetensors (encoder + projection in one file) | models/text_encoders |
| video_vae_name | ltx-2.5-video-vae-bf16.safetensors | models/vae |
| audio_vae_name | ltx-2.5-audio-vae-bf16.safetensors | models/vae |
The GGUF option is the whole point of this pack's lineage. A Q6_K or Q8_0 quant of the DiT stays quantized through this pack's ops - dequantized per layer at forward time - which is how a 20GB-class video model ends up runnable on cards that have no business hosting it. Q8 is basically fp16 at half the size, so if it fits, take it. Note the text encoder is big too - 12B is a second VRAM budget, and the loader caches the most recently built one so re-queuing doesn't rebuild it from disk every time.
Wiring it
LTXV25ModelsLoader → LTX-2.5 Img to Video (or Video to Video) → KSampler (distilled) → ... → AV Decode. You can chain any number of LoRAs between this node and the prep via stock LoraLoaderModelOnly on the model wire - the official recipe's own convention. The vae output goes to the prep node and to decode; audio_vae likewise.
Installing it
This is the flagship loader of the ComfyUI-GGUF-Loader pack (ChrisColeTech's fork of city96's ComfyUI-GGUF). In ComfyUI Manager, search "ComfyUI-GGUF-Loader" and install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ChrisColeTech/ComfyUI-GGUF-Loader
pip install --upgrade gguf
Restart. If you're using the GGUF DiT path, make sure your ComfyUI is recent enough for the custom ops the pack's loader needs - the README calls this out as the one hard version requirement.
Common issues
The three ways this bites: using a 2.3 checkpoint (the loader errors by design - that's correct behavior, not a bug), feeding the video VAE into the audio slot (also rejected, loudly), and expecting GGUF and safetensors to be interchangeable in performance. They're not - GGUF is the low-VRAM lever, and if you've got the VRAM for the int8 safetensors, it's simpler and faster. Get the four files right and the rest of the chain is just plumbing.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| unet_name | COMBO | LTX-2.5 A/V DiT from models/diffusion_models - the comfy int8 safetensors or a Q6_K/Q8_0 GGUF. GGUF stays quantized. | |
| clip_name | COMBO | gemma4-12b-with-proj-ltx-2.5-*.safetensors from models/text_encoders - encoder and projection in one file (loaded as CLIPLoader type ltxv). | |
| video_vae_name | COMBO | ltx-2.5-video-vae-bf16.safetensors. | |
| audio_vae_name | COMBO | ltx-2.5-audio-vae-bf16.safetensors. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| clip | CLIP | — |
| vae | VAE | — |
| audio_vae | VAE | — |