☁️BizyAir Nunchaku Text Encoder Loader
Flux's two text encoders, hosted and swappable
- BIZYAIR_CLIP
Flux doesn't read your prompt with one text encoder - it uses two, stapled together, and this node is where you pick which specific files back them. If you've only ever used a single "CLIP Loader" node, this is the Flux-specific version of that step, run through BizyAir's cloud instead of loading files off your own disk.
Why Flux needs two encoders
CLIP-L is short and blunt: it's good at attribute-style tokens, the kind of thing SDXL prompting trained everyone to write. T5-XXL is a real language model - it actually parses sentence structure and long, natural-language instructions. Flux conditions on both simultaneously, which is a big part of why it follows complex prompts noticeably better than SDXL did: CLIP gives it the punchy keywords, T5 gives it the grammar and the relationships between things in your sentence.
The inputs that matter
model_type- currently onlyfluxis offered. This field exists because BizyAir's text encoder loader is built to be reused across model families; for now, on Flux, there's nothing to choose here.text_encoder1andtext_encoder2- pick your CLIP and T5 files from BizyAir's hosted list. The sample choices includeclip_l.safetensorsandt5xxl_fp16.safetensors- the standard Flux pair - plusumt5_xxl_fp8_e4m3fn_scaled.safetensors, which is actually the multilingual T5 variant other model families (like Wan) use. Its presence in this dropdown is a sign the list is shared across BizyAir's model types rather than filtered per-model - pick the Flux-appropriate files (clip_l+ at5xxlvariant), not just whatever's first in the list.t5_min_length- default 512, adjustable 256–1024 in steps of 128. This sets the minimum token length T5 pads your prompt to. Longer prompts benefit from a higher floor; short prompts rarely need to touch this.use_4bit_t5andint4_model- both currently only offerdisable/noneas choices. Read that as a feature that's wired into the node's interface but not live yet on BizyAir's hosted side, rather than something broken on your end - there's nothing to actually pick here today.
Output: a single BIZYAIR_CLIP, which feeds into whatever conditioning/prompt-encoding node comes next in your BizyAir chain.
Installing it
ComfyUI Manager: search BizyAir, install, restart - or:
cd ComfyUI/custom_nodes
git clone https://github.com/siliconflow/BizyAir.git
Set your BizyAir API key on first use; the README is explicit that skipping this step is the difference between the pack installing cleanly and every node in it actually running.
Where people get burned
The text_encoder1/text_encoder2 dropdown looking generic across model families is the main trap - it's easy to grab a file meant for a different architecture because the list doesn't filter itself down when you pick flux as the model type. If your generations come out ignoring half your prompt or behaving oddly, double-check you actually picked a real CLIP-L file and a real T5-XXL variant, not something meant for a different pipeline that happened to be nearby in the list.
The other thing worth remembering: this outputs BIZYAIR_CLIP, not the plain CLIP type ComfyUI's stock text-encode nodes expect. It has to feed into a BizyAir-flavored conditioning node, not a standard CLIPTextEncode. If your text-encode node isn't showing up as a valid connection target, that mismatch is almost always why.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model_type | COMBO | 1 options: flux | |
| text_encoder1 | COMBO | 3 options: t5xxl_fp16.safetensors, clip_l.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors | |
| text_encoder2 | COMBO | 3 options: t5xxl_fp16.safetensors, clip_l.safetensors, umt5_xxl_fp8_e4m3fn_scaled.safetensors | |
| t5_min_length | INT | 512256–1024 | — |
| use_4bit_t5 | COMBO | 1 options: disable | |
| int4_model | COMBO | The name of the 4-bit T5 model. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BIZYAIR_CLIP | BIZYAIR_CLIP | — |