Nodes/arkennemasis - ChatGPT / Codex / fal AI nodes/arkennemasis fal · Flux Pro Kontext Multi · $0.04/image
ComfyUI Node

arkennemasis fal · Flux Pro Kontext Multi · $0.04/image

Six image sockets, one instruction that can reference them

By Hishamahmer·Created 3 months ago·Updated 9 days ago· 11
arkennemasis fal · Flux Pro Kontext Multi · $0.04/image
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • images
  • image_paths
  • seed
  • has_nsfw_concepts
  • prompt
  • timings
  • info
◄prompt►
◄seed-1►
◄guidance_scale3.50►
◄num_images1►
◄output_formatjpeg►
◄safety_tolerance2►
◄enhance_promptfalse►
◄aspect_ratio(not set)►
◄max_cost_usd20.0►
◄reuse_identical_runtrue►
◄extra_json►
◄max_concurrent1►

The regular Kontext Pro node takes one reference image. This one takes up to six, numbered, and lets your instruction talk about them - "put the person from image 1 into the room from image 2, wearing the jacket from image 3". It's fal's own description that calls it experimental, so treat it that way, and it's priced like Pro at $0.04 per image.

When you want it

The obvious case is compositing references: subject from one shot, background from another, a prop from a third. The second case is consistency across a set - feed the same reference into the same socket for every generation in a run and you get the model's in-context identity handling applied to the whole series rather than a single picture. Kontext's structural advantage is that reference images go into the model's context instead of arriving as adapter embeddings, which is why it holds a subject better than the IP-Adapter school does.

The costs of that: six images is a lot of pixels for the model to reconcile, and cross-referencing instructions get less reliable the more sockets you fill. Two or three references with a clear division of labour works. Six competing ones gives you mush and a bill.

The six sockets

image_1 is required; image_2 through image_6 are optional. The tooltip for all of them is the same, and it's worth reading: each socket may carry a batch, and the pictures are sent in socket order, with the first picture of socket 1 counting as number 1. So "image 2" in your prompt refers to a position in the flattened list, not to a socket number - connect a batch of four to image_1 and your "image 3" is the third picture of that batch.

The rest of the node is Kontext Pro's shape: prompt (the instruction), aspect_ratio ((not set) by default, or 21:9 through 9:21), guidance_scale 3.5 (1–20), seed, num_images 1–4, output_format, enhance_prompt (off by default), and safety_tolerance default 2 (1 strictest, 6 most permissive).

The shared four sit at the bottom as they do on every fal node here: max_cost_usd (default 20, evaluated before upload), reuse_identical_run (on - same settings and same pixels returns the cached result rather than billing again), extra_json, max_concurrent (default 1 across the whole run).

Outputs

images, image_paths into output/fal/fal-ai_flux-pro_kontext_multi/, plus seed, prompt, has_nsfw_concepts, timings and info.

Install

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

Or ComfyUI-Manager → comfyui-arkennemasis. Restart after. The node lands under arkennemasis/fal/Image/Flux, and the key is one line in .env next to run_nvidia_gpu.bat:

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

Practical warnings

Numbering surprises. Because batches flatten into the list, the picture the model thinks is "number 2" may not be the one you meant. Keep batches out of these sockets unless you're deliberately indexing into them.

Unused sockets still count. A reference you connected but never referenced in the prompt still occupies a slot in the model's context and can bleed into the output. Disconnect what you don't need.

Experimental means experimental. fal labels this endpoint experimental, so its behaviour can change underneath you. Pin your expectations with seed and keep a copy of anything you rely on.

Paying per image, per take. Four images at $0.04 is 16 cents a queue click. Drop to one while you're working out which socket is which.

Categoryarkennemasis/fal/Image/Flux

Inputs (18)

NameTypeDefaultDescription
promptSTRINGThe prompt to generate an image from.
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.
guidance_scaleFLOAT3.501–20The 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.
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.
aspect_ratioCOMBO(not set)The aspect ratio of the generated image. '(not set)' leaves it to the model.
image_1IMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
image_2optIMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
image_3optIMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
image_4optIMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
image_5optIMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
image_6optIMAGEImage prompt for the omni model. Each socket may carry a batch; they are sent in socket order (the first picture of socket 1 is number 1).
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.