TangoFluxLoader
One loader, a whole text-to-audio model — TangoFluxLoader is the entire front half of your graph
- model
- vae
TangoFluxLoader is where every TangoFlux workflow starts, and it's refreshingly opinionated: it doesn't ask you to pick a checkpoint, because there's only one. It loads the official TangoFlux model - a flow-matching text-to-audio model from the declare-lab paper "Super Fast and Faithful Text to Audio Generation" - and hands you the two things everything else needs: the generation model and the vae. One node, two outputs, the whole front half of the graph done.
If you've been around ComfyUI a while, this is the audio sibling of a standard checkpoint loader, minus the dropdown. It builds a Flux-transformer-based audio model (same architectural family as image Flux, but tiny: 6 joint blocks + 18 single blocks at a 1024-dim width, nothing like the multi-GB image checkpoints), pairs it with an Oobleck audio VAE, and pulls in a Google FLAN-T5-large text encoder for prompt conditioning. The model files are expected in models/tangoflux and the text encoder in models/text_encoders/google-flan-t5-large - that layout is not optional, the node computes the paths from the model's config.json.
The only two inputs, and they're both about speed
The loader caches the loaded model, so a second run is instant. The interesting part is TeaCache:
enable_teacache- swaps the transformer's forward pass for a training-free cached version that skips redundant residual computations. The README's own numbers on an A800: ~4.08s baseline → ~2.42s at 0.25 → ~1.95s at 0.4 for a generation. That's a real, free speedup, at the cost of a little quality drift.rel_l1_thresh- the cache trigger threshold (default 0.25, range 0–10). Higher = more aggressive caching = faster but noisier. It does literally nothing unless TeaCache is enabled, so don't chase it until you've flipped the switch.
Changing enable_teacache forces the node to reload the transformer, so flipping it mid-session costs you a load - toggle once and leave it.
Outputs
model (TANGOFLUX_MODEL) and vae (TANGOFLUX_VAE). model feeds TangoFluxSampler; vae skips straight to TangoFluxVAEDecodeAndPlay. Wiring the wrong one to the wrong input is the one way to break this graph, but ComfyUI will refuse the connection before you can.
Installing it properly
Manager → search "TangoFlux" → install works. Manual, the pack ships its own installer that does everything:
cd ComfyUI/custom_nodes
git clone https://github.com/LucipherDev/ComfyUI-TangoFlux
cd ComfyUI-TangoFlux
python install.py
That install.py is doing two jobs: pip install-ing the requirements (torchaudio, diffusers, accelerate, tqdm) and downloading both HF repos - declare-lab/TangoFlux into models/tangoflux and google/flan-t5-large into models/text_encoders/google-flan-t5-large. Budget a few gigabytes and patience for the first load. If you'd rather download by hand, the README links both repos; keep the exact folder names, don't rename anything, because the loader keys off config.json's text_encoder_name.
Gotchas worth knowing
First, the model is licensed under the Stability AI Community License: non-commercial, research-only (training data from WavCaps carries that restriction too). The pack's LICENSE file is explicit about it. Fun for tinkering, a hard stop for a commercial product - read it before you build anything on top. Second, "no VRAM? no problem": unlike image models, TangoFlux is light - it runs fine on consumer cards, and the sampler has an offload_model_to_cpu escape hatch for the truly cramped. Third, the most common failure is a missing-models error on first run, which almost always means install.py didn't finish (or you cloned without running it). Run it, wait for "Installation completed", and reload.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| enable_teacache | BOOLEAN | false | — |
| rel_l1_thresh | FLOAT | 0.250–10 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| model | TANGOFLUX_MODEL | TangoFlux Model |
| vae | TANGOFLUX_VAE | TangoFlux Vae |