ComfyUI Node

Qwen-Image-Edit-Plus

The better-behaved editor

By Runware·Created 2 years ago·Updated about a month ago· 140
Qwen-Image-Edit-Plus
  • referenceImages
  • lora
  • ultralytics
  • acceleratorOptions
  • advancedFeatures.watermark.image
  • image
positivePrompt
width1024
height1024
negativePrompt
seed0
stepsfalse
steps_value1
scheduler(default)
CFGScalefalse
CFGScale_value1.00
numberResults1
advancedFeaturesfalse
advancedFeatures.watermark.bgColor
advancedFeatures.watermark.displayPosition(default)
advancedFeatures.watermark.fontColor
advancedFeatures.watermark.opacityfalse
advancedFeatures.watermark.opacity_value0.10
advancedFeatures.watermark.text
safetyfalse
safety.checkContentfalse
settings.trueCFGScalefalse
settings.trueCFGScale_value0.00
ttlfalse
ttl_value60
outputFormatJPG
outputQuality95

Qwen-Image-Edit-Plus is the upgraded sibling of the standard Qwen-Image-Edit node - same family, same "describe the change" workflow, but tuned for the jobs where the base editor gets loose. Where the original re-emits the whole frame and lets unrelated pixels drift, the Plus line is the one you reach for when you care about keeping the subject intact while changing the scene around it. If you've ever edited a character into a new background and watched their face subtly mutate, this node is the fix.

Think of the two nodes as tiers, not rivals: plain Qwen-Image-Edit for quick, surgical single instructions, and Plus when you want higher fidelity to the reference - more consistent subject identity, cleaner large-scale changes. It still won't do a chain of ten edits without drift (nothing does), but it gets noticeably more of them right on the first pass.

What you set

  • referenceImages (required) - the image(s) to edit, as IMAGE.
  • positivePrompt (required) - the instruction in plain language.
  • width / height (512–2048 - note the higher floor than the base editor, Plus expects a real canvas).
  • steps - off by default; let the model pick. There's no aggressive default here, which is the distilled-editor norm.
  • CFGScale / settings.trueCFGScale - the now-familiar pair: CFG off, trueCFG only if the model ignores you.
  • lora, ultralytics, watermark, acceleratorOptions sockets, negativePrompt (ignored at CFGScale ≤ 1), seed, numberResults (up to 20), outputFormat, outputQuality - the standard spread.

Output is image (IMAGE).

How it works

Same pack machinery - request with model AIR + taskType over REST, IMAGE downloaded back, cost on the title bar. The difference from the base node is the model behind it: a newer, heavier edit checkpoint that trades a little speed for better adherence to your reference and instruction. Both variants run in the cloud, so "heavier" here just means a slightly longer queue and a slightly bigger bill, not a hardware problem on your end.

Installing

ComfyUI Manager → search Runware → install → restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

No model downloads; dependencies are runware-sdk, pillow, soundfile. API key via Settings → Runware API key, RUNWARE_API_KEY, or runware auth login.

Troubleshooting

Set the API key before anything else - it's the #1 failure mode for the whole pack. If Plus still drifts on a hard edit, the tooltip advice holds: keep instructions surgical and don't chain changes. And if a prompt works fine in the base editor but fails here, remember the two models are different checkpoints - Plus has its own sweet spot for phrasing, so rephrase rather than assuming a bug.

CategoryRunware/Image/runware

Inputs (31)

NameTypeDefaultDescription
referenceImagesIMAGE
positivePromptSTRINGText prompt describing elements to include in the generated output.
widthINT1024512–2048Width of the generated media in pixels.
heightINT1024512–2048Height of the generated media in pixels.
loraoptRUNWARE_LORA
ultralyticsoptRUNWARE_ULTRALYTICS
acceleratorOptionsoptRUNWARE_ACCELERATOROPTIONS
advancedFeatures.watermark.imageoptIMAGE
negativePromptoptSTRINGPrompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1).
seedoptINT00–9223372036854776000Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.
stepsoptBOOLEANfalseEnable to set steps. Off uses the model's default.
steps_valueoptINT11–50Total number of denoising steps. Higher values generally produce more detailed results but take longer.
scheduleroptCOMBO(default)Scheduler to use for the diffusion process.
CFGScaleoptBOOLEANfalseEnable to set CFGScale. Off uses the model's default.
CFGScale_valueoptFLOAT1.001–20Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt.
numberResultsoptINT11–20Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
advancedFeaturesoptBOOLEANfalseEnable to set advancedFeatures. Off uses the model's default.
advancedFeatures.watermark.bgColoroptSTRINGBackground color in hex format.
advancedFeatures.watermark.displayPositionoptCOMBO(default)Watermark position.
advancedFeatures.watermark.fontColoroptSTRINGText color in hex format.
advancedFeatures.watermark.opacityoptBOOLEANfalseEnable to set advancedFeatures.watermark.opacity. Off uses the model's default.
advancedFeatures.watermark.opacity_valueoptFLOAT0.100.1–1Watermark opacity.
advancedFeatures.watermark.textoptSTRINGWatermark text.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
settings.trueCFGScaleoptBOOLEANfalseEnable to set settings.trueCFGScale. Off uses the model's default.
settings.trueCFGScale_valueoptFLOAT0.00True Classifier-Free Guidance scale. Higher values increase prompt adherence at the cost of quality.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOJPGFile format for the generated image.
outputQualityoptINT9520–99Compression quality of the output. Higher values preserve quality but increase file size.

Outputs (1)

NameTypeDescription
imageIMAGE