Nodes/Tenser Tensor/TT FLUX Models Loader
ComfyUI Node

TT FLUX Models Loader

Model, both text encoders, VAE

By tenser-tensor·Created 7 months ago·Updated 5 months ago· 0
TT FLUX Models Loader
    • MODEL
    • CLIP
    • VAE
    unet_name
    clip_l
    t5xxl
    clip_device
    vae_name

    FLUX isn't one model, it's four: the 12B transformer, a CLIP-L text encoder, the enormous T5-XXL encoder, and a VAE. Load them all separately and your graph's front end is already four nodes and a tangle of wires before you've done anything. TT FLUX Models Loader collapses that into one: pick the files, get MODEL, CLIP, and VAE out the other side, with the CLIP-L and T5-XXL already fused into the dual CLIP that FLUX's conditioning needs.

    It's the FLUX entry point of TenserTensor, a pack whose whole pitch is replacing common node chains with single loaders. This is one of its best examples.

    What you pick

    • unet_name - the FLUX transformer, from ComfyUI/models/diffusion_models/. This is the DiT (the big boy), not a checkpoint.
    • clip_l and t5xxl - the two text encoders, from ComfyUI/models/text_encoders/. Pick t5-v1_1-xxl-encoder_fp16 (or fp8) and clip_l.safetensors - the node combines them into the FLUX dual CLIP.
    • clip_device - default or cpu. Leave on default; CPU offload is there if the T5 is squeezing your VRAM.
    • vae_name - a dropdown of VAEs. Here's the trap: the default in the schema is pixel_space, which isn't a real VAE file at all. It's a special passthrough that pretends pixels are latents. If you want to actually decode, pick a real one like ae.safetensors (FLUX's VAE). The pixel_space default is only right for pipelines that decode some other way.

    The VAE is loaded in bfloat16 by default and offloaded to CPU, which is a sensible FLUX default given how tight VRAM gets.

    The gotchas that actually bite

    First, model placement. ComfyUI only scans the folders it knows; the pack registers the GGUF folders (diffusion_models_gguf, text_encoders_gguf) so quantized FLUX files show up - but you have to put them there. The README's layout is explicit: diffusion models in models/diffusion_models/, text encoders in models/text_encoders/.

    Second, the README's own warning: you need a recent ComfyUI, because loading UNET-only models relies on newer custom-operation support. If the loader errors on import or load, update ComfyUI before anything else.

    Third, VRAM math. Full fp16 FLUX doesn't fit most consumer cards; the standard answers are fp8 checkpoints or GGUF quants. The pack supports GGUF (it uses City96's GGUF code, acknowledged in the README), and the KB's rule applies: Q8 is basically fp16 at half the size, Q5 is the last stop before visible loss, Q4_K_M is the 12GB-card compromise.

    Install and standing notes

    cd ComfyUI/custom_nodes
    git clone https://github.com/tenser-tensor/ComfyUI-TenserTensor
    

    or ComfyUI Manager → search "TenserTensor" → install → restart. Deps: gguf (yes, required for the GGUF loaders) and kornia.

    One thing to know that research won't tell you much about: this pack has essentially no community footprint - it's a small, quietly maintained pack, and you're not going to find a dozen threads troubleshooting it. What you'll find instead are the same FLUX-specific lessons that apply everywhere: guidance 3.5 clones faces (drop to ~2 for people), and negative prompts are mostly inert on guidance-distilled FLUX. And like every node in this set, it's a legacy V1 node - parked in Deprecated/ after the pack's migration to ComfyUI's API V3, with removal planned for a future major release. It works today; the pack's V3 FLUX loader is the long-term home.

    CategoryTenserTensor/Loaders/FLUX

    Inputs (5)

    NameTypeDefaultDescription
    unet_nameCOMBO0 options:
    clip_lCOMBO0 options:
    t5xxlCOMBO0 options:
    clip_deviceCOMBO2 options: default, cpu
    vae_nameCOMBO1 options: pixel_space

    Outputs (3)

    NameTypeDescription
    MODELMODEL
    CLIPCLIP
    VAEVAE