☁️BizyAir TripleCLIPLoader
ComfyUI Node Guide
- BIZYAIR_CLIP
Text encoders got a lot more complicated once Stable Diffusion 3 showed up. SD 1.5 needed one - CLIP ViT-L/14. SDXL bolted on a second, OpenCLIP-G. Then SD3 went further and combined three at once: the two CLIP encoders plus T5-XXL, each contributing something the others don't. This node exists because loading three separate text encoders for a single model is genuinely a different shape of problem than loading one, and it's easier to have a node built for exactly three slots than to chain three single loaders together.
It's not exclusively an SD3.5 node, though that's the model it's most associated with - the same three-encoder pattern shows up wherever a model was trained against multiple text encoders for different strengths (CLIP-L for fine-grained visual concepts, CLIP-G for broader semantic coverage, T5-XXL for actually reading and following complex sentences).
Inputs and outputs
Three required inputs, all identical enums with the same five sample choices: clip_l.safetensors, clip_g.safetensors, t5xxl_fp16.safetensors, t5xxl_fp8_e4m3fn.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors.
clip_name1,clip_name2,clip_name3- pick one text encoder file for each slot. For a standard SD3.5 setup, that typically means CLIP-L in one slot, CLIP-G in another, and a T5-XXL variant in the third - fp16 if you have the VRAM to spare, one of the fp8 quantized variants if you don't. Theumt5_xxloption in the list is worth noting: that's the text encoder family associated with Wan video models rather than SD3, included here because the loader itself doesn't restrict which architecture you're pairing it with - it just loads three files.
Since all three fields share the same dropdown options, it's on you to put the right encoder in the right slot; the node won't stop you from loading the same file into all three or pairing encoders that don't actually belong together.
Output is BIZYAIR_CLIP - a single combined CLIP object carrying all three encoders, typed for BizyAir's own downstream nodes rather than ComfyUI's stock CLIP type.
Installing BizyAir
Through ComfyUI Manager: search "BizyAir," install. Or clone it manually:
cd ComfyUI/custom_nodes && git clone https://github.com/siliconflow/BizyAir.git
Restart ComfyUI, or run comfy node install bizyair via Comfy-CLI. Set an API key on first use through the README's "click to login" link - this loader fetches encoder weights server-side rather than requiring you to have three separate multi-GB files sitting on your own disk, which is a real convenience given how much space fp16 T5-XXL alone eats up locally.
Common issues
Getting the encoder-to-slot assignment wrong is the most common mistake - since the three dropdowns are identical, it's easy to accidentally put a CLIP file where a T5 file belongs. If your outputs look nothing like what the base model normally produces, double-check each of the three slots against what your specific checkpoint actually expects.
Downstream, remember the output is BIZYAIR_CLIP, so it only connects to other BizyAir nodes expecting that type - you can't feed it into a stock ComfyUI CLIP Text Encode node, you need BizyAir's equivalent.
fp8 quantized T5 variants trade a small amount of quality for meaningfully lower memory and bandwidth - reasonable defaults unless you have a specific reason to need full fp16 precision on the text side.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_name1 | COMBO | 5 options: clip_l.safetensors, clip_g.safetensors, t5xxl_fp16.safetensors, t5xxl_fp8_e4m3fn.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors | |
| clip_name2 | COMBO | 5 options: clip_l.safetensors, clip_g.safetensors, t5xxl_fp16.safetensors, t5xxl_fp8_e4m3fn.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors | |
| clip_name3 | COMBO | 5 options: clip_l.safetensors, clip_g.safetensors, t5xxl_fp16.safetensors, t5xxl_fp8_e4m3fn.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BIZYAIR_CLIP | BIZYAIR_CLIP | — |