Concurrent Submit | Zhenzhen_Flux_Kontext_bfl
Kontext through BFL's own door, now queueable
- input_image
- task
Kontext is Black Forest Labs' instruction-based image editor - feed it an image and a sentence ("change the coat to leather, keep everything else") and it edits in-context rather than via adapter embeddings, which is why it holds identity across successive edits so well. The Dev weights are open, but the Pro and Max tiers only ever exist as an API. This node is the bfl official-endpoint version of that API - the author of the Comfyui-zhenzhen pack added it specifically as the "official BFL channel" node - wrapped so you can batch several Kontext edits at once.
If you've ever tried to keep a character consistent across ten outfit variations locally, you know why Kontext earned its reputation. The KB's flux-kontext panel calls it the strongest character-consistency tool of the Flux 1 era. This node hands you that same editing behavior without downloading the 12B model.
How the concurrent bit works
The plain Comfly_Flux_Kontext_bfl node blocks until BFL answers. The Submit variant runs it in the pack's shared image pool (30 workers) and returns a task immediately. Collect with Concurrent Collect Images (30): wire task_1 … task_30, and it waits for the batch, returning images in slot order plus a status string. failure_mode = fail-fast (default) or placeholder.
Practical use: eight Kontext edits with different prompts and reference images, all in one run. That's the workflow the concurrent nodes exist for.
The inputs that matter
prompt(required) - the edit instruction, in plain language.model-flux-kontext-pro(default) orflux-kontext-max. This official endpoint exposes both; the max tier is the pricier top end.input_image- your source image. One reference here, unlike the multi-image Kontext nodes.aspect_ratio- 21:9 through 9:21, default 1:1.output_format- png (default) or jpeg.prompt_upsampling- off by default on this node (the Flex nodes default it on). Turn it on if you want BFL to expand your instruction.safety_tolerance- 0–6. Kontext sits on BFL's moderation; this is your dial.
Output: a single task (COMFLY_IMAGE_FUTURE) → Collector → edited image.
Installing it
Ships in Comfyui-zhenzhen:
- ComfyUI Manager → Install Custom Nodes → search "Comfyui-zhenzhen" → install → restart.
- Or
cd ComfyUI/custom_nodes && git clone https://github.com/T8mars/Comfyui-zhenzhenand restart.
No weights to download; dependencies are the standard requests/Pillow stack. You need a paid token from the author's storefront (ai.t8star.org), in api_key.
Gotchas
BFL's moderation is real - Kontext was the model whose license update triggered the anti-circumvention crackdown, so don't expect the API to do the NSFW things the open-weights community eventually managed locally. And the usual pack notes apply: overseas endpoint needs a proxy from mainland China, and a 500 is often upstream load - retry. The seed input is ComfyUI-cache-only here, so don't treat it as a way to get deterministic edits.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| model | COMBO | flux-kontext-pro | 2 options: flux-kontext-pro, flux-kontext-max |
| api_keyopt | STRING | — | |
| input_imageopt | IMAGE | — | |
| seedopt | INT | -1-1–2147483647 | — |
| aspect_ratioopt | COMBO | 1:1 | 9 options: 21:9, 16:9, 4:3, 3:2, 1:1, 2:3, +3 |
| output_formatopt | COMBO | png | 2 options: png, jpeg |
| prompt_upsamplingopt | BOOLEAN | false | — |
| safety_toleranceopt | INT | 20–6 | — |
| skip_erroropt | BOOLEAN | false | 开启后,节点失败时不报错、按旧行为返回默认空结果;关闭时(默认)失败直接抛出错误。 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| task | COMFLY_IMAGE_FUTURE | — |