Nodes/arkennemasis - ChatGPT / Codex / fal AI nodes/arkennemasis fal · Flux Pro v1.1 · $0.04/MP
ComfyUI Node

arkennemasis fal · Flux Pro v1.1 · $0.04/MP

The closed model with two knobs and a per-megapixel bill

By Hishamahmer·Created 3 months ago·Updated 9 days ago· 11
arkennemasis fal · Flux Pro v1.1 · $0.04/MP
    • images
    • image_paths
    • seed
    • has_nsfw_concepts
    • prompt
    • timings
    • info
    ◄prompt►
    ◄image_sizelandscape_4_3►
    ◄image_size_width1024►
    ◄image_size_height1024►
    ◄seed-1►
    ◄num_images1►
    ◄output_formatjpeg►
    ◄safety_tolerance2►
    ◄enhance_promptfalse►
    ◄max_cost_usd20.0►
    ◄reuse_identical_runtrue►
    ◄extra_json►
    ◄max_concurrent1►

    FLUX1.1 [pro] is the closed weights tier - never downloadable, API only - and this node is the plain text-to-image front door to it at $0.04 per megapixel. What's notable is how little is on it. No step count, no guidance scale, no acceleration setting. The tier's whole pitch is that fal's infrastructure makes it fast enough that you don't tune anything.

    Why pay, and what it costs you

    Flux Dev is 12B of open weights you can run yourself. Pro is the same family with quality and speed you can't get locally, and the price for that is two things: money per megapixel, and your prompt leaving the machine. If the latter matters - client work, anything private, anything the hosted filter would refuse - the local path is the answer and there's no workaround, because there are no weights to patch and the filter lives in the model.

    Where it earns its keep: a small number of high-value images where you'd rather not spend an afternoon on settings. Where it doesn't: volume. Per-megapixel pricing means a 2MP render is four cents, a 4MP render is sixteen, and num_images multiplies on top of that. Iterating twenty times on a prompt in an afternoon is real money in a way local generation never is.

    Inputs - there are barely any

    • prompt. That's the main event.
    • image_size, defaulting to landscape_4_3. Options are square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9, and custom, which then reads image_size_width and image_size_height (16–14142, step 16). Since billing is per megapixel, this widget is the price.
    • seed, -1 for random. The node hands the used seed back on its seed output, so a good result is reproducible.
    • num_images 1–4. Multiplies both the bill and the wait.
    • output_format (jpeg/png) - if you're going to upscale or inpaint downstream, take the PNG.
    • safety_tolerance, default 2, with 1–6 available and 1 the strictest. Moderation dial, not a quality dial.
    • enhance_prompt, default off. Leave it off when your wording is intentional; turn it on when you've written five words and want fal to expand them.

    And the four pack-wide widgets: max_cost_usd (default $20 - the estimate is checked before anything is uploaded, so it stops the run instead of warning you afterwards; 0 removes the cap), reuse_identical_run (on by default - an identical request returns the files already sitting in output/fal/, even after a ComfyUI restart), extra_json (a JSON object merged into the request last, for any fal field the node has no box for), max_concurrent (default 1, one paid fal call at a time across every fal node in the run).

    Outputs

    images → preview or save. image_paths → output/fal/fal-ai_flux-pro_v1.1/. seed, prompt, has_nsfw_concepts, timings, and info - the JSON with the request id, the cost estimate and fal's own answer.

    Install

    cd ComfyUI/custom_nodes
    git clone https://github.com/Hishamahmer/comfyui-arkennemasis
    

    Manager users can search comfyui-arkennemasis instead. Restart ComfyUI, then look under arkennemasis/fal/Image/Flux. No local models, no extra pip packages for the fal provider.

    # .env, in the folder with run_nvidia_gpu.bat
    FAL_KEY=your-key-from-fal.ai/dashboard/keys
    

    What catches people

    No settings to tune, so a bad prompt is a wasted run. Don't go looking for a "steps" box; there isn't one. Rewrite the prompt.

    The size widget is the invoice. custom at 2048×2048 is four megapixels and four times the headline rate, times num_images. Watch the live badge on the title.

    Black images mean the safety checker flagged the output. has_nsfw_concepts will tell you; safety_tolerance is the only thing you can move, and often the prompt is the real problem.

    The key isn't found. The pack reads FAL_KEY from the install's .env only. A shell export won't do; the error message names the file it looked for.

    Categoryarkennemasis/fal/Image/Flux

    Inputs (13)

    NameTypeDefaultDescription
    promptSTRINGThe prompt to generate an image from.
    image_sizeCOMBOlandscape_4_3The size of the generated image. 'custom' uses the width and height below.
    image_size_widthINT102416–14142Width in pixels when image_size is 'custom'.
    image_size_heightINT102416–14142Height in pixels when image_size is 'custom'.
    seedINT-1-1–2147483647The same seed and the same prompt given to the same version of the model will output the same image every time. -1 leaves it to the model.
    num_imagesINT11–4The number of images to generate.
    output_formatCOMBOjpegThe format of the generated image.
    safety_toleranceCOMBO2The safety tolerance level for the generated image. 1 being the most strict and 5 being the most permissive.
    enhance_promptBOOLEANfalseWhether to enhance the prompt for better results.
    max_cost_usdoptFLOAT20.00–100000Safety cap. If the estimated cost of this run is above this many US dollars the node stops BEFORE sending anything to fal. 0 = no cap.
    reuse_identical_runoptBOOLEANtrueIf these exact inputs (the settings AND the same pictures/clips/audio) were already paid for and the files are still in output/fal, return them instead of paying again - also after a ComfyUI restart. Turn off for a fresh take with the same settings.
    extra_jsonoptSTRINGAdvanced: a JSON object merged into the request last, for any fal field this node has no box for. Example: {"seed": 7}. Leave empty normally.
    max_concurrentoptINT11–32How many paid fal calls may run at the same time in one run, across every fal node. 1 (default) = one after another. This node starts its paid part only while fewer than this many fal calls are running. Once any fal node fails, the ones still waiting are not started, so nothing more is billed.

    Outputs (7)

    NameTypeDescription
    imagesIMAGE—
    image_pathsSTRING—
    seedINT—
    has_nsfw_conceptsSTRING—
    promptSTRING—
    timingsSTRING—
    infoSTRINGJSON: request id, cost estimate, saved files and fal's full answer.