Flux 2 Max (BFL)
The flagship Flux 2 on any GPU — because you're not running 56B locally
- config
- IMAGE
Flux 2 Max (BFL) is the top of BFL's Flux 2 tree, and this node is how you get it without a datacenter. Flux 2 is the 32B rectified-flow transformer (56B total with its Mistral-3 vision-language encoder) that, even quantized, wants 18–24GB of VRAM and churns out roughly one image every two minutes on an RTX 5090. Max is the API-only flagship tier of that family. Through this node you get the full model - 4MP output, up to eight reference images, generation and editing in one call - on whatever GPU you already have, because the actual compute happens in BFL's cloud.
If that sounds like the point of the whole pack, it is. The ComfyUI-FLUX-BFL-API pack exists to hand you every BFL tier you can't (or won't) run locally. Max is the "money's no object, I want the best" button in the Flux 2 section.
How it works
Same pack mechanics as everything else: POST to flux-2-max, poll get_result?id=... every 5 seconds, return an IMAGE. The interesting part is the input surface - up to eight base64 input_image sockets. That's the multi-reference capability that made Flux 2 famous: character consistency, object reference, style transfer, all without fine-tuning. You can feed it a person across four images and a style across two more, describe the scene, and get a result that holds identity across everything.
The inputs that matter
- prompt - the description. With multiple references, this is where you say what's in the scene and who's who.
- input_image … input_image_8 - up to eight references, base64 strings from Image to Base64 (BFL). Leave unused sockets empty; they're skipped.
- width / height - optional; default 0 means "let BFL decide." Set them only if you need a specific resolution (≥64).
- safety_tolerance - 0–5, default 2. Moderation strictness. Flux 2 is heavily safety-filtered; this is the only moderation dial you get.
- output_format - jpeg (default) or png.
- Optional seed, webhook_url/secret, config.
Output: one IMAGE tensor.
Installing it
Same pack, same one-time install:
cd ComfyUI/custom_nodes
git clone https://github.com/gelasdev/ComfyUI-FLUX-BFL-API.git
Restart, key in config.ini or via Flux Config (BFL). No models, no heavy deps - torch is the only declared dependency and ComfyUI already ships it.
Where people get burned
- Paying Max prices out of habit. Max is the premium tier. For iteration and drafts, Flux 2 Pro, Flex, or even a Klein node will do at a fraction of the cost. Reserve Max for the shots that matter.
- Expecting local Flux 2 Dev behavior. Same family, different filtering. The API tier is the censored stack - the community's local Flux 2 workflows (with their own LoRAs and post-processing) are a different world, and the KB's own read is that Z-Image won the local default while BFL's future is enterprise licensing. On the API you take what BFL moderates.
- Black output. The pack's universal failure signal - moderation, API error, or poll timeout (~200s). The
[BFL]logs print a curl equivalent for every call so you can replay it and see the raw error. - Over-stuffing references. Eight images is a lot of context; if results get muddy, fewer, cleaner references usually beat more.
Flux 2 Max is the closest this pack gets to "the future of the model, minus the hardware problem." Just keep an eye on the credit meter (Flux Credits (BFL) is right there) - this tier is the most expensive way to generate in the whole pack.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| safety_tolerance | INT | 20–5 | — |
| output_format | COMBO | jpeg | 2 options: jpeg, png |
| input_imageopt | STRING | — | |
| input_image_2opt | STRING | — | |
| input_image_3opt | STRING | — | |
| input_image_4opt | STRING | — | |
| input_image_5opt | STRING | — | |
| input_image_6opt | STRING | — | |
| input_image_7opt | STRING | — | |
| input_image_8opt | STRING | — | |
| widthopt | INT | 0 | — |
| heightopt | INT | 0 | — |
| seedopt | INT | -1 | — |
| webhook_urlopt | STRING | — | |
| webhook_secretopt | STRING | — | |
| configopt | BFL_CONFIG | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |