Qwen Image 2 Edit (fal.ai)
Qwen Image 2's editor, minus the weights drama
- image
- image2
- image3
- image
Qwen-Image-Edit became the open community's default instruction editor back in late 2025 - the model you hand a picture and a sentence, and the thing happens. Qwen Image 2 folds that editing ability into a single 7B model, with native 2K output, and it's API-only. FAL_QwenImage2Edit is how you touch it from ComfyUI: up to three input images plus an instruction, sent to fal's fal-ai/qwen-image-2/edit endpoint, edited result returned as a normal IMAGE.
The headline is that this is the new architecture - the unified one the community keeps hoping will get open weights someday. Via fal you don't wait. The trade is the usual one for this pack: hosted, metered, no local compute, and the model's edit behavior is tuned by a prompt rather than diffusion dials.
How it works
Your connected image tensors are uploaded and passed as image_urls - the first is the subject, image2/image3 are optional references. The prompt drives the edit, the endpoint regenerates the frame, and the result downloads back as an IMAGE tensor.
The inputs that matter:
- image (required) and prompt (required) - everything else is optional.
- image2 / image3 - optional reference images for multi-image edits, up to three total.
- num_images - note this one goes to 6, unlike the v1 edit node's 4. If you want variations on an edit, this is the knob.
- enable_prompt_expansion (default true) - the model rewrites your edit instruction internally before acting. Leave it on for short instructions; turn it off when your wording is precise and you want it obeyed literally.
- image_size presets (
square_hddefault) orcustom(512–2048px), negative_prompt, enable_safety_checker (default on), seed, output_format, private_mode.
One IMAGE output. Each image port takes the first frame of its tensor - no batch processing per port.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/elle-trudgett/fal-ai-comfyui-nodes
pip install -r fal-ai-comfyui-nodes/requirements.txt
or ComfyUI Manager → ComfyUI fal.ai Nodes. No model downloads. Set your key - export FAL_KEY="..." or a config.ini with [API] / FAL_KEY in the node folder for ComfyUI Desktop - from fal.ai/dashboard/keys, then restart.
Gotchas
- "FAL_KEY not set" is the standard first-run error; env var or config.ini, restart.
- No steps or guidance knobs - the 2.0 unified model doesn't expose them. Your prompt and the expansion toggle are the tuning surface.
- The full-frame re-emission caveat still applies. Like every generative editor, pixels you didn't mention can drift; chain enough edits and identity wobbles. The v1 Edit's drift work mostly carried over, but it's not a surgical tool.
- Metered and upload-heavy. Every connected image is uploaded and every generation billed; six variations of a three-image edit is a real charge.
- Errors come back as
fal.ai error: ..., unwrapped for you.
If you liked the v1 editor but want the newer model's behavior and 2K output without running a 20B model, this is the version to reach for. If you need pixel-exact edits, keep a mask-based local workflow around too.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| prompt | STRING | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — | |
| num_imagesopt | INT | 11–6 | — |
| image_sizeopt | COMBO | square_hd | 7 options: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9, +1 |
| custom_widthopt | INT | 1024512–2048 | — |
| custom_heightopt | INT | 1024512–2048 | — |
| seedopt | INT | -1-1–2147483647 | — |
| negative_promptopt | STRING | — | |
| output_formatopt | COMBO | png | 3 options: png, jpeg, webp |
| enable_prompt_expansionopt | BOOLEAN | true | — |
| enable_safety_checkeropt | BOOLEAN | true | — |
| private_modeopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |