FLUX.1 Kontext [max]
The API-tier instruction editor
- referenceImages
- advancedFeatures.watermark.image
- image
FLUX.1 Kontext [max] is the closed, API-only version of the model that turned instruction-based editing into a commodity. Same family as the Kontext dev you might already know from local workflows - feed it reference image(s) and a sentence, get back an edit that keeps identity - but this one runs on Black Forest Labs' servers with the max-tier quality and none of the license headaches that the dev checkpoint shipped with. You trade away local control for "it just works" at a higher quality ceiling.
If the pack's RunwareArch_flux_1_kontext_dev node is the "bring your own checkpoint" version, this is the turnkey one: the model AIR (bfl:4@1) is baked in and you never think about weights again.
How it works
Kontext is architecturally interesting because it consumes reference images in-context, not through adapter embeddings - which is exactly why character identity survives an edit. This node is a taskType: imageInference REST call; your image goes up as a data URI, the instruction rides in the prompt, and the result comes back as an IMAGE tensor.
Inputs that matter
- positivePrompt - required. This is the instruction: "swap the background to a beach at sunset," "change her coat to a red puffer."
- referenceImages - the source image(s) to edit or reference, wired from Load Image. This is the whole point of the model, so get comfortable feeding it a proper batch.
- width / height - default 1024; no tight range in the schema, so match your reference's aspect roughly.
- providerSettings.bfl.promptUpsampling - the auto-expander; nice for terse instructions.
- providerSettings.bfl.safetyTolerance - 0–5, default 2, the BFL moderation dial.
- seed / numberResults - reproducibility and variants.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt
Or ComfyUI Manager → search Runware → Install → restart. API key in ComfyUI Settings → Runware API key or RUNWARE_API_KEY. Prepaid top-up; per-run cost on the title bar.
Gotchas
- The Kontext family's party trick - clean object/watermark removal - is also its licensing sore spot. The dev tier's license update about circumventing content restrictions pushed a lot of users out; max sidesteps that by being an API you're renting, but you still answer to BFL's moderation.
- Results depend heavily on the reference image quality. Feed it a blurry reference and expect a blurry edit.
- No steps or CFG widgets - provider-fixed. If you need dials, the Kontext dev arch node is the knob-rich alternative.
For character-consistent editing without the 12B-model footprint or the license ambiguity, this is the cleanest path. It's the API version of the model the community called "shockingly effective."
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| positivePrompt | STRING | Text prompt describing elements to include in the generated output. | |
| referenceImagesopt | IMAGE | — | |
| advancedFeatures.watermark.imageopt | IMAGE | — | |
| sizeopt | COMBO | 1K (1:1) | Output size. Only one of resolution or dimensions is sent. |
| seedopt | INT | 00–4294967295 | Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range. |
| numberResultsopt | INT | 11–20 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| advancedFeaturesopt | BOOLEAN | false | Enable to set advancedFeatures. Off uses the model's default. |
| advancedFeatures.watermark.bgColoropt | STRING | Background color in hex format. | |
| advancedFeatures.watermark.displayPositionopt | COMBO | (default) | Watermark position. |
| advancedFeatures.watermark.fontColoropt | STRING | Text color in hex format. | |
| advancedFeatures.watermark.opacityopt | BOOLEAN | false | Enable to set advancedFeatures.watermark.opacity. Off uses the model's default. |
| advancedFeatures.watermark.opacity_valueopt | FLOAT | 0.100.1–1 | Watermark opacity. |
| advancedFeatures.watermark.textopt | STRING | Watermark text. | |
| providerSettings.bfl.promptUpsamplingopt | BOOLEAN | false | Enable automatic enhancement and expansion of the input prompt. |
| safetyopt | BOOLEAN | false | Enable to set safety. Off uses the model's default. |
| safety.checkContentopt | BOOLEAN | false | Enable or disable content safety checking. |
| providerSettings.bfl.safetyToleranceopt | INT | 20–5 | Tolerance level for content moderation. Lower values are stricter; higher values are more permissive. |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | JPG | File format for the generated image. |
| outputQualityopt | INT | 9520–99 | Compression quality of the output. Higher values preserve quality but increase file size. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |