Nodes/arkennemasis - ChatGPT / Codex / fal AI nodes/arkennemasis fal · Flux Krea LoRA · $0.035/MP
ComfyUI Node

arkennemasis fal · Flux Krea LoRA · $0.035/MP

Stack your Civitai downloads onto a model you never download

By Hishamahmer·Created 3 months ago·Updated 9 days ago· 11
arkennemasis fal · Flux Krea LoRA · $0.035/MP
    • images
    • image_paths
    • timings
    • seed
    • has_nsfw_concepts
    • prompt
    • info
    ◄prompt►
    ◄image_sizelandscape_4_3►
    ◄image_size_width1024►
    ◄image_size_height1024►
    ◄num_inference_steps28►
    ◄seed-1►
    ◄loras►
    ◄guidance_scale3.50►
    ◄num_images1►
    ◄enable_safety_checkertrue►
    ◄output_formatjpeg►
    ◄accelerationnone►
    ◄max_cost_usd20.0►
    ◄reuse_identical_runtrue►
    ◄extra_json►
    ◄max_concurrent1►

    Krea's aesthetic plus LoRA support, hosted, $0.035 per megapixel. Node-wise this is the Krea text-to-image endpoint with one extra box - loras - and that box is where all the confusion lives. Everything else behaves exactly like the plain Krea node.

    The loras box

    It's a multiline string holding JSON, and the tooltip tells you the shape: any number of LoRAs, merged together to make the final image. What it wants is a JSON list of LoRA entries, each naming the weights and a scale - the same convention fal's own API uses. Practically that means a URL to a .safetensors file fal can fetch, plus a strength. Empty leaves it out entirely, which is why the field can sit there harmlessly while you test a prompt.

    The gotcha is the one you'd expect from a text field: it's not a dropdown of your local models/loras folder. These are LoRAs fal loads on its side, so your local files are invisible to it unless they're reachable over the internet. The usual pattern is registering them with fal, or pointing at a Civitai/Hugging Face URL. If you paste a local path, nothing happens or you get a request error, and you'll spend ten minutes blaming the prompt.

    The rest of the node

    • prompt - natural language, full sentences.
    • image_size, plus image_size_width / image_size_height when it's set to custom (16–14142, step 16).
    • num_inference_steps default 28 (1–50). guidance_scale default 3.5, range 0–35 - note that's lower than the plain Krea node's 4.5, which is the LoRA endpoint's own default rather than a mistake.
    • num_images 1–4. The tooltip notes this is always 1 for streaming output, so don't plan on four in one call.
    • seed, enable_safety_checker, output_format (jpeg/png), acceleration.

    And the four widgets every fal node in this pack carries: max_cost_usd (default $20, caps the run before upload; 0 = off), reuse_identical_run (default on - identical settings and input files return the already-paid results instead of billing again), extra_json (a JSON object merged into the request last, for fal fields this node has no box for), and max_concurrent.

    Outputs

    images for the preview/save path, image_paths for where it wrote them (output/fal/fal-ai_flux-krea-lora/), plus timings, seed, has_nsfw_concepts, prompt (the echoed prompt) and info (request id, cost estimate, saved files, fal's full answer). That info string is the one to open when something looks odd - it's the only place the actual request id is easy to grab.

    Install

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

    Manager users: search comfyui-arkennemasis, or Install via Git URL with the repo URL and let it pull httpx for you. The fal nodes need nothing beyond the standard library, so a manual install works with no pip step at all. Restart ComfyUI, then look under arkennemasis/fal/Image/Flux.

    Key setup is one line in the .env beside run_nvidia_gpu.bat:

    FAL_KEY=your-key-from-fal.ai/dashboard/keys
    

    No key box on the node - the pack reads the file and nowhere else, so setting the variable in your shell won't work.

    Troubleshooting

    "is not valid JSON". The node validates loras before anything is uploaded, so a trailing comma or single quotes gets you a free, unbilled error. Build the string in a text editor, not by hand-typing brackets.

    Nothing changed after adding the LoRA. Either the entry doesn't resolve on fal's side, or the scale is too low to show. Raise the scale before you go hunting for other causes.

    Same output twice. That's reuse_identical_run doing its job. Turn it off, or change the seed, when you want a fresh sample for the same settings.

    Price creep. $0.035/MP on a custom 1536×1536 (2.25MP) is 2.25× the per-image line on the title, and num_images multiplies on top. The node's live badge has already done that arithmetic for you.

    Categoryarkennemasis/fal/Image/Flux

    Inputs (16)

    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'.
    num_inference_stepsINT281–50The number of inference steps to perform.
    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.
    lorasSTRINGThe LoRAs to use for the image generation. You can use any number of LoRAs and they will be merged together to generate the final image. JSON. Empty leaves it out.
    guidance_scaleFLOAT3.500–35The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.
    num_imagesINT11–4The number of images to generate. This is always set to 1 for streaming output.
    enable_safety_checkerBOOLEANtrueIf set to true, the safety checker will be enabled. Disabling it requires account authorization; unauthorized requests are always checked, and images flagged as unsafe are returned as black images.
    output_formatCOMBOjpegThe format of the generated image.
    accelerationCOMBOnoneAcceleration level for image generation. 'regular' balances speed and quality.
    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—
    timingsSTRING—
    seedINT—
    has_nsfw_conceptsSTRING—
    promptSTRING—
    infoSTRINGJSON: request id, cost estimate, saved files and fal's full answer.