Nodes/Fal-Gateway/Fal Text-to-Image
ComfyUI Node

Fal Text-to-Image

FLUX.1 [dev], Seedream, Recraft — every fal text-to-image model in one dropdown

By modbender·Created 5 months ago·Updated 3 months ago· 1
Fal Text-to-Image
    • image
    • image_url
    • info
    model_id
    prompt

    Want to run FLUX.1 [dev], Seedream 5.0, or Recraft on your ComfyUI canvas without owning the GPU to hold them? That's the whole job of Fal Text-to-Image. It's the text-to-image half of ComfyUI-Fal-Gateway, a pack that turns fal.ai - the pay-per-call inference host - into plain ComfyUI nodes. Pick a model, type a prompt, hit Queue, and a normal IMAGE tensor lands on the wire like a local generator made it.

    The trick that makes it worth your time is the dropdown. Other fal wrappers ship one Python class per model - every new release means a PR and an update. This one reads fal's own OpenAPI catalog and renders the model list live, so "new model appears in dropdown, no code change" actually holds. Type-ahead even clusters families: type seedance or kling and the matching entries cluster together. At last count there were a couple hundred text-to-image entries in the category filter.

    Inputs and outputs

    Only two inputs, and one of them you barely touch:

    • model_id - the big dropdown. Everything from [fal-ai] FLUX.1 [dev] through [bytedance] Seedream and [bria] Recraft-style editors, each labeled with its provider.
    • prompt - a multiline box. Same prompt discipline as local: the model's own prompt guide wins. Since many of these are instruction-tuned, your wording matters more than SD-era keyword spam.

    Three outputs:

    • image - a single-frame IMAGE tensor. Wire it straight into SaveImage (or VHS-style savers) and you're done.
    • image_url - the fal-hosted source URL, handy if you want to log or re-fetch it.
    • info - a JSON string dump of fal's full result object. Overkill for most runs, but it carries the seed, timings, and safety flags if you build anything that tracks them.

    How it works

    You queue → the node calls fal's endpoint with your prompt → fal runs the model on their hardware → the node downloads the bytes and decodes them into a tensor with PIL. No model files ever touch your disk. The whole thing is one HTTP client with your key attached - which is also the honest read on the security posture: an API node is arbitrary Python that holds a credential and phones home by design, so only install packs you can read and that you got from somewhere with a reputation to lose. This one is Apache 2.0 and open.

    Install

    The pack isn't in the ComfyUI Manager registry yet (the PR is pending), so manual it is:

    cd ComfyUI/custom_nodes
    git clone https://github.com/modbender/ComfyUI-Fal-Gateway
    

    Then install the Python deps into your ComfyUI venv - fal-client, aiohttp, opencv-python, Pillow, numpy, pydantic - and set your key:

    pip install -r requirements.txt
    export FAL_KEY=your_key_from_fal_ai_dashboard_keys
    

    You can also copy config.ini.example to config.ini and paste the key there instead. Restart ComfyUI and you'll find all the nodes under Fal-Gateway in Add Node.

    Gotchas that actually bite

    • It's paid, per image. fal is metered credits, and an empty balance just stops generation. The node paints a cost-per-run badge (green → red) in its title bar as you change widgets, which is more honesty than most API nodes give you. For heavy iterating, local is still the right tool; this is for when the model is closed or your VRAM isn't.
    • Fresh nodes can briefly show <no models available> in the dropdown while the background catalog fetch finishes. Wait a few seconds, or right-click the node → "Fal-Gateway: refresh catalog cache". New models that just launched need that refresh plus a ComfyUI restart to appear.
    • No key → hard error. If FAL_KEY isn't set, execution raises "FAL_KEY not set" - the README and the error both tell you exactly where to fix it.

    Health check if things look off:

    curl http://127.0.0.1:8188/fal_gateway/health
    
    CategoryFal-Gateway

    Inputs (2)

    NameTypeDefaultDescription
    model_idCOMBO195 options: [alibaba] Qwen Image 3 Text to Image, [bria] Fibo, [bria] Fibo Bbq Preview, [bria] Fibo Gen 1.5 Text to Image, [bria] Fibo Lite, [bytedance] Seedream, +189
    promptSTRING

    Outputs (3)

    NameTypeDescription
    imageIMAGE
    image_urlSTRING
    infoSTRING