FluxFill Model Loader [ComfyUI-Flux-TryOff]
The legacy FluxFill loader — only reach for it if you already own FLUX.1-dev
- transformer
- diffusers_config
- MODEL
The pack ships two ways to build the FLUX.1-dev-fill pipeline that powers try-on/try-off. This is the older one, and it's the one the README quietly steers you away from: "All models will download automatically unless you use the legacy 'FluxFill Model Loader'." If you're starting fresh, use the FluxFill Pipeline Loader instead and skip this article. If you already have FLUX.1-dev sitting on disk, read on - this node is for you.
What it does
TryOffFluxFillModelNode assembles a full FluxFillPipeline from a local diffusers checkpoint. The inputs are:
- transformer - the
MODELoutput of the TryOff Model Loader (the CatVTON fine-tune that does the actual clothing editing). - model_name - exactly one choice:
FLUX.1-dev. This maps to a folder atComfyUI/models/checkpoints/FLUX.1-dev. - device -
cudaorcpu. - diffusers_config (optional) - the second output of the TryOff Quantizer, for 8-bit/4-bit loading.
Under the hood it calls FluxFillPipeline.from_pretrained(model_path, transformer=transformer, ...): it loads the base FLUX.1-dev fill model from your local folder, then swaps in the CatVTON transformer you loaded, so the pipeline's inpainting brain is the fine-tune while everything around it stays stock FLUX.1-dev.
Why it's "legacy" and what that costs you
The catch is right there in the model_name input: FLUX.1-dev has to be a diffusers-format checkpoint in models/checkpoints, and nothing downloads it for you. That's a ~23GB download you have to arrange yourself (Hugging Face black-forest-labs/FLUX.1-dev, and note the FLUX.1-dev license is non-commercial for the weights). The newer pipeline loader pulls everything - encoders, tiny VAE, the lot - automatically, which is why the README calls this one legacy.
So the honest question is: do you already keep FLUX.1-dev around for other workflows? Then this node saves you a duplicated download, because the pipeline loader pulls the text encoders and VAE but expects the base fill model to come from somewhere too. Otherwise it's an extra 23GB of hoops for zero quality benefit.
Behavior worth knowing
When you're not quantizing, the node loads the pipeline, moves it to your device, calls enable_model_cpu_offload(), and re-casts the transformer to bf16. That offload is doing a lot of heavy lifting - it's part of why the author can run this on a 4080's 16GB. With diffusers_config wired in, it instead uses device_map="balanced" plus the bitsandbytes quantization config, which spreads the model across available devices.
One consequence: because this path loads the full stock FLUX.1-dev VAE rather than the tiny TAESD1 the newer loader uses, it's heavier on VRAM during decode. If you're quantizing specifically to fit, the pipeline loader's tiny VAE is a friendlier choice.
Install
Same as the rest of the pack - ComfyUI Manager, search "ComfyUI-Flux-TryOff", or:
cd ComfyUI/custom_nodes
git clone https://github.com/asutermo/ComfyUI-Flux-TryOff
Restart, then make sure models/checkpoints/FLUX.1-dev is populated. Requires diffusers>=0.32.2 (the version pin matters - older diffusers don't have the FluxFill pipeline API this calls). If you wire the quantizer in, bitsandbytes must be installed too.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| transformer | MODEL | — | |
| model_name | COMBO | 1 options: FLUX.1-dev | |
| device | COMBO | 2 options: cuda, cpu | |
| diffusers_configopt | diffusers_config | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |