Nodes/ComfyUI-fal-API/Flux Pro Kontext (fal)
ComfyUI Node

Flux Pro Kontext (fal)

Edit an image with a sentence

By gokayfem·Created 2 years ago·Updated a day ago· 203
Flux Pro Kontext (fal)
  • image
  • IMAGE
prompt
aspect_ratio
max_qualityfalse
guidance_scale3.5
num_images1
safety_tolerance2
output_formatjpeg
sync_modefalse
seed0

Give it an image and a sentence, get the image back changed. That's Kontext. FluxProKontext_fal runs BFL's instruction-based image editor on fal - "change her dress to blue," "swap the background to a beach," "remove the watermark" - and returns a native IMAGE. No mask, no ControlNet, no adapter. Just the picture, the instruction, and the edit.

Kontext made this kind of editing a commodity. Architecturally it consumes the reference image in-context rather than through adapter embeddings, which is why it holds a subject's identity across successive edits with minimal drift - it became the backbone of character turnaround sheets for exactly that reason. The community also found it, in its own words, "shockingly effective" at watermark removal. This is the Pro tier, API-only, so an API node is how you reach it.

The inputs that matter

  • prompt - the edit instruction, in plain language. Describe the change, not the whole scene: "make the car red," not a full re-description.
  • image - the picture you're editing. Required; this is an editor, not a text-to-image node. (If you want Kontext's look from scratch with no input image, use FluxProKontextTextToImage_fal instead.)

Optional dials: aspect_ratio, guidance_scale (default 3.5, range 1–20), max_quality for a higher-fidelity pass, num_images (up to 4), safety_tolerance (1–6), output_format, seed, and sync_mode. One IMAGE output.

How it works

Everything runs on fal - this is a Pro-tier endpoint, so there's no local model and no steps slider. What makes Kontext hold identity so well is that it feeds your reference image into the model's context alongside the prompt, rather than injecting it as an adapter embedding the way IP-Adapter or PuLID do. Structurally, the subject is preserved rather than approximated, which is why you can run edit after edit and the character mostly stays itself. That's also the recipe for turnaround sheets: same subject, new angle, one instruction at a time.

Installing it

ComfyUI Manager → search ComfyUI-fal-API → install → restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/gokayfem/ComfyUI-fal-API.git
pip install -r ComfyUI-fal-API/requirements.txt

No downloads. Set your fal key (config.ini, or export FAL_KEY=your_key; keys at fal.ai/dashboard/keys), restart, find it under FAL.

Where people get burned

Two real limits worth knowing before you commit budget. First, anatomy degrades at full-body scale: Kontext is happiest on framed, upper-body or object-level edits, and once a full body fills the frame, heads and proportions can skew (heads too big, torsos too small). Keep edits scoped.

Second, and this is the big one for a lot of users: Kontext won't do adult content. BFL's license reads NSFW fine-tunes as circumvention, and the hosted endpoint enforces content policy - a blocked edit comes back as a visible fal error, not silence. If unrestricted instruction editing is what you're after, the community's answer is Qwen-Image-Edit, which is Apache-2.0 and imposes no content terms (look for the Qwen edit nodes in this pack). Otherwise, standard API notes apply: paid per call, identical calls served free from cache, chain edits one at a time and check drift as you go.

CategoryFAL/Image

Inputs (10)

NameTypeDefaultDescription
promptSTRING
imageIMAGE
aspect_ratiooptCOMBO10 options: , 21:9, 16:9, 4:3, 3:2, 1:1, +4
max_qualityoptBOOLEANfalse
guidance_scaleoptFLOAT3.51–20
num_imagesoptINT11–4
safety_toleranceoptCOMBO26 options: 1, 2, 3, 4, 5, 6
output_formatoptCOMBOjpeg2 options: jpeg, png
sync_modeoptBOOLEANfalse
seedoptINT00–4294967295

Outputs (1)

NameTypeDescription
IMAGEIMAGE