Nodes/ComfyUI Assistant Node/PVL Qwen Image Edit Inpaint (fal.ai)
ComfyUI Node

PVL Qwen Image Edit Inpaint (fal.ai)

Qwen editing, but with a mask so it leaves the rest alone

By pvlprk·Created about a year ago·Updated 8 months ago· 1
PVL Qwen Image Edit Inpaint (fal.ai)
  • image
  • mask
  • images
  • prompt
prompt
negative_prompt
num_inference_steps30
guidance_scale4.00
num_images1
enable_safety_checkertrue
output_formatpng
accelerationregular
strength0.93
sync_modefalse
seed0

Qwen-Image-Edit is great at changing your picture to match a sentence - and famously bad at leaving the rest alone. It re-emits the whole frame, so the pixels you didn't ask about drift. This node is the fix for that: it's the same Qwen editing model wrapped as fal-ai/qwen-image-edit/inpaint, which means you hand it a mask and it only rewrites the area you drew. The community noticed the exact same thing - "QwenEdit don't have inpaint," people kept saying, right before they bolted a mask back on around it. This is that workflow, pre-bolted.

It's one of the many fal.ai API nodes in the pvlprk/comfyui-pvl-api-nodes pack, which is a grab bag of ~80 nodes despite the modest "ComfyUI Assistant Node" name. Everything here is paid-per-call cloud inference: you give it an image, a prompt, and optionally a mask, it ships them to fal's servers and comes back with the result. No local GPU needed, no model download - but no free lunch either, since every run spends fal credits.

The inputs that matter

  • prompt and image are the only required inputs. This is where you say "replace the cat with a dog" or "remove the sign."
  • mask is the whole reason this node exists. It's an IMAGE input - draw it white where you want changes, black where the model should keep its hands off. Leave it empty and you've got plain Qwen editing again.
  • strength (default 0.93) controls how aggressively the masked region is rewritten. Lower it toward 0.5 if the edit is overreaching.
  • The rest are the usual diffusion knobs: num_inference_steps (30), guidance_scale (4), num_images, seed, negative_prompt, enable_safety_checker, output_format (jpeg/png), acceleration (none/regular/high - the "high" level costs more, so don't assume it's free speed).

Two outputs: images (the edited image, ready to wire into a preview or Save node) and prompt (the prompt you used, handy for logging).

Installing and using it

Grab the pack via ComfyUI Manager (search "ComfyUI Assistant Node" or "pvlprk"), or:

cd ComfyUI/custom_nodes
git clone https://github.com/pvlprk/comfyui-pvl-api-nodes

Restart ComfyUI, then make sure FAL_KEY is set in the environment that launches ComfyUI - the node reads FAL_KEY, FAL_API_KEY, or FAL_CLIENT_KEY (grab one at fal.ai/dashboard). No per-node key field here. The pack's requirements.txt is heavy (diffusers, scikit-image, google-genai and friends) even though the fal nodes just use requests, so let Manager sort it out and don't be alarmed by the install size.

Where people get burned

  • The mask is an IMAGE, not a MASK. If you're used to ComfyUI's mask-type output from an auto-masker, you may need to convert. Actually - the node accepts a plain IMAGE, so a black-and-white image tensor works fine.
  • Every run costs money, and mistakes cost twice. Iterate on num_images = 1 until the prompt is right, then crank it.
  • It's cloud Qwen, so it inherits Qwen's weaknesses. It's strong at instruction editing, but a tightly-drawn mask is still your best tool when you only want one region changed. Keep the prompt scoped to the masked area or it will happily relight the whole image anyway.
CategoryPVL_tools

Inputs (13)

NameTypeDefaultDescription
promptSTRING
imageIMAGE
maskoptIMAGE
negative_promptoptSTRING
num_inference_stepsoptINT301–100
guidance_scaleoptFLOAT4.000.1–20
num_imagesoptINT11–8
enable_safety_checkeroptBOOLEANtrue
output_formatoptCOMBOpng2 options: jpeg, png
accelerationoptCOMBOregular3 options: none, regular, high
strengthoptFLOAT0.930–1
sync_modeoptBOOLEANfalse
seedoptINT0

Outputs (2)

NameTypeDescription
imagesIMAGE
promptSTRING