DualCLIPLoader (Dynamic VRAM)
Two encoders, one node, half the VRAM
- CLIP
Most of the models you'll actually run don't use one text encoder - they use two. Flux pairs a giant T5-XXL with a CLIP-L. SDXL uses two CLIPs. SD3.5, Hunyuan, LTX, and the newer Krea 2 stack all want a pair. DualCLIPLoader (Dynamic VRAM) is the version of the GGUF CLIP loader that handles two files at once, and it's the one you'll reach for whenever a workflow says "DualCLIPLoader" but you want the quantized files.
The pitch is the same as the single-file version: quantized text encoders free VRAM the checkpoint can use. T5-XXL at Q8 is roughly half its 4.7GB fp16 footprint, and on a 12GB card that headroom is real. Combined with a GGUF checkpoint, it's the difference between a Flux workflow that fits and one that doesn't.
How it works
It's the GGUF loader's load_patcher path with two files. Both filenames come from the same combined dropdown (models/clip + models/text_encoders), and both GGUF and regular safetensors files are accepted - mix a quantized T5 GGUF with a plain CLIP-L safetensors if that's what you have. The type dropdown is the important bit: it tells the loader which architecture combination you're building, and it's populated from ComfyUI's own DualCLIPLoader types - flux, sdxl, sd3, ltxv, wan, hidream, hunyuan_video, and more. The Dynamic VRAM wrapper then hands both encoders to the aimdo memory manager so they load, offload, and reload sensibly.
The inputs that matter
- clip_name1 and clip_name2 - the two encoder files.
- type -
flux,sdxl,sd3,ltxv,wan,hidream, etc. Match it to the model.
Output is CLIP, straight into your CLIP Text Encode nodes.
Installing
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. ComfyUI v0.27.0+ for the native INT8 path; some newer encoders (MiniMax H3 pruned, Gemma 4) want newer ComfyUI builds still.
Where people get burned
- The Dynamic VRAM variants need a supporting ComfyUI - launch without
--disable-dynamic-vram, or the loader errors out with a message telling you exactly that. - Mix scaled-FP8 and GGUF at your own risk - it's rejected. The single-file loader refuses that combination, and the multi-file path inherits the same rule: keep quantized encoders on the GGUF side.
- Pick the right type.
fluxvssd3vsltxvare not interchangeable; the embeddings come out wrong if the architecture doesn't match the checkpoint. - The
_K-quants rule only applies to diffusion models. Text encoders are the one place this fork does support Q4_K_M-style quants, so a quantized T5 is a legitimate move here.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_name1 | COMBO | 0 options: | |
| clip_name2 | COMBO | 0 options: | |
| type | COMBO | 12 options: sdxl, sd3, flux, hunyuan_video, hidream, hunyuan_image, +6 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CLIP | CLIP | — |