Nodes/comfyui-bfl-bridge/BFL Bridge (Text-to-Image)
ComfyUI Node

BFL Bridge (Text-to-Image)

Flux 2 Pro inside ComfyUI with zero VRAM — the BFL API bridge

By cerridan·Created 5 months ago·Updated 2 months ago· 0
BFL Bridge (Text-to-Image)
    • image
    api_key
    modelflux-2-pro-preview
    prompt
    width1024
    height1024
    seed0
    guidance3.5
    steps28

    Flux 2 is the model you probably can't run. The Dev weights need 18–24GB of VRAM even quantized, and the tiers people actually rave about - Pro and Flex - never shipped as weights at all. They live behind Black Forest Labs' hosted API, and that's exactly what this node is: a single BFL Bridge (Text-to-Image) node that talks to the BFL API from inside a ComfyUI graph. No GPU, no model download, no VAE, no sampler. If you've ever wanted the top-tier Flux without buying a 5090, this is the door.

    How it works

    The name is the honest one: it's a bridge. When you hit Queue, the node submits your prompt to https://api.bfl.ai/v1/<model> with your API key in the x-key header (BFL's auth scheme, not the usual Bearer), then polls the returned polling_url every two seconds until the job reports Ready, downloads the finished image, and hands it back to your graph as a normal IMAGE tensor. That's the whole job - all the actual inference happens in BFL's cloud, so a CPU-only box works fine.

    It's built on ComfyUI's newer V3 node interface, which is the one real compatibility catch: you need ComfyUI 0.18 or newer, or the node simply won't register.

    The inputs that matter

    Most of the inputs are a sampler's worth of knobs, but only a few you'll touch:

    • api_key - your key from api.bfl.ai, or leave blank and set the BFL_API_KEY environment variable instead. Node input wins if both exist; for a shared server, the env var keeps the key out of workflow files.
    • model - the combo lists flux-2-pro-preview (default), flux-2-pro, flux-2-flex, flux-2-klein-9b-preview, and the Flux 1.1 pro-ultra / pro pair. Pro/Flex are the API-only tiers; Klein 9B is the one that also exists as open weights if you'd rather run it locally.
    • prompt - required; the node refuses to run an empty one.
    • width / height - 256 up to 2048, default 1024×1024. That 2048 ceiling is the Flux 2 native 4MP sweet spot.
    • seed, guidance, steps - default 0 / 3.5 / 28.

    The single output is image, which you can wire straight into a Save Image node or into anything else downstream - upscalers, img2img, whatever.

    Where people get burned

    Seed 0 is not a seed. The node only sends seed to the API when it's greater than zero - at 0 it's omitted and the API rolls its own. If you want reproducibility, set a real number. Same logic applies to guidance and steps: the defaults (3.5 / 28) are only forwarded when you change them, so don't panic if the API docs list different defaults.

    The other thing to internalize: every run costs credits. This is a paid API, and the 300-second poll timeout means a busy queue can occasionally fail a slow job. You'll see the HTTP status and a snippet of BFL's error message when it does - usually a bad key, an invalid model name, or a credit problem.

    Installing it

    ComfyUI Manager is the easy route - search "comfyui-bfl-bridge" and install. Or the manual way:

    cd ComfyUI/custom_nodes
    git clone https://github.com/cerridan/ComfyUI_BFLBridge.git
    

    Then restart ComfyUI. Dependencies are aiohttp, Pillow, and numpy - all already bundled with a modern ComfyUI, so the README's pip install line is usually a no-op. No models to download, ever. The pack itself is young and small - a single commit as of this writing - but the mechanism is simple enough that there's not much to break. It's not the pack I'd bet a production pipeline on yet, but for grabbing the real Flux 2 Pro without the hardware, it does exactly what it says.

    Categoryapi/bfl

    Inputs (8)

    NameTypeDefaultDescription
    api_keySTRING
    modelCOMBOflux-2-pro-preview6 options: flux-2-pro-preview, flux-2-pro, flux-2-flex, flux-2-klein-9b-preview, flux-1.1-pro-ultra, flux-1.1-pro
    promptSTRING
    widthINT1024256–2048
    heightINT1024256–2048
    seedINT00–2147483647
    guidanceFLOAT3.50–20
    stepsINT281–50

    Outputs (1)

    NameTypeDescription
    imageIMAGE