Flux.1 Kontext [max] Image
Flux.1 Kontext [max]
- input_image
- IMAGE
Flux.1 Kontext is BFL's instruction-editing model - the one that made "swap the background," "change the jacket," and "remove the watermark" a single sentence of work instead of a masked inpainting project. The Kontext [max] node is the API version of the top tier, and it's been in ComfyUI core since the Kontext family landed in May 2025. It's the highest-profile example of what the inpainting doc calls the big shift: since 2025, sentence-based editors took over most of what people used masks for, because they leave the rest of the image alone mostly - the trade being that "mostly" isn't "bit-identical."
The shared partner-node ground applies, briefly: nothing runs locally. No weights, no VRAM - your optional input image and prompt go to Comfy's proxy at api.comfy.org, BFL's servers run Kontext, and credits come off your Comfy account. The [max] tier costs more than [pro] per call; the badge on the node is the current number and it moves as BFL reprices, so don't trust screenshots.
The inputs are the giveaway that this is an editing node rather than a generation node. prompt is the instruction - "specify what and how to edit," per the tooltip - and it's required, because the model is editing something. input_image is optional, which looks odd for an edit node until you realize Kontext Max can also generate from nothing; leave it disconnected and you get text-to-image with Kontext's quality. Wire an image in and it edits that image in-context. aspect_ratio (default 16:9, validated between 1:4 and 4:1) controls the output frame. Then the generation knobs you'd expect: guidance (default 3 here - note it's a much lower scale than the older Flux.1 nodes), steps (default 50), seed, and prompt_upsampling (leave it off; it rewrites your instruction and breaks determinism).
Output is a single IMAGE tensor, already decoded, ready for Save Image or anything downstream. No VAE step.
Where the community's take matters: Kontext (and the whole Kontext Max tier) is the model that killed the local watermark-removal cottage industry - people called it "shockingly effective" at that one job - and it's the backbone of turnaround-sheet and character-consistency workflows because it consumes reference images in-context rather than through adapter embeddings. The same era's license baggage lives on the open-weights side, not this API node. The honest caveat is the instruction-editing one from the inpainting discourse: Kontext emits a whole new image, so unmasked detail comes back close-but-not-identical, and drift compounds across a chain of edits. For single decisive edits - new wardrobe, new backdrop, cleanup - it's the best tool in the family. For surgical one-pixel-correct work, you still want a mask.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Prompt for the image generation - specify what and how to edit. | |
| aspect_ratio | STRING | 16:9 | Aspect ratio of image; must be between 1:4 and 4:1. |
| guidance | FLOAT | 3.00.1–99 | Guidance strength for the image generation process |
| steps | INT | 501–150 | Number of steps for the image generation process |
| seed | INT | 12340–18446744073709550000 | The random seed used for creating the noise. |
| prompt_upsampling | BOOLEAN | false | Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result). |
| input_imageopt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |