ComfyUI Node

Qwen-Image

The open editing model, minus the GPU

By Runware·Created 2 years ago·Updated about a month ago· 140
Qwen-Image
  • seedImage
  • maskImage
  • outpaint
  • lora
  • ultralytics
  • acceleratorOptions
  • advancedFeatures.watermark.image
  • image
positivePrompt
width1024
height1024
negativePrompt
seed0
steps20
scheduler(default)
CFGScalefalse
CFGScale_value1.00
strengthfalse
strength_value0.80
maskMarginfalse
maskMargin_value32
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 is Alibaba's open-weights image model - Apache 2.0, no non-commercial rider - and the thing that made it famous in the ComfyUI world is that it's an editing model, not just a generator. Feed it an input image and a prompt and it will restyle, modify, and composite the way FLUX's Kontext used to be the only open model that could. This node (runware:108@1) runs it on Runware's cloud, so you get the model's strengths without a single checkpoint download or a VRAM budget.

The "no local run required" part matters more here than it usually does. Qwen-Image locally is an ecosystem project - fine-tunes, ControlNet variants, the works - but all of that is a setup project. This node is the shortcut: install the Runware pack (ComfyUI Manager → Runware, or git clone https://github.com/Runware/ComfyUI-Runware into custom_nodes/), add an API key in ComfyUI Settings, and Qwen-Image is a node you can queue from a fresh install.

How it works

Standard cloud image inference under the hood, with a twist in the tuning: Qwen-Image is guidance-distilled. The node's CFGScale_value defaults to 1, and the negative prompt is ignored when guidance is disabled (CFG ≤ 1) - the tooltip says it outright. This is the 2026 model-class behavior that still trips up anyone with SDXL muscle memory: guidance is baked into the weights, so cranking CFG doesn't buy adherence, it overcooks. The editing power comes from the seedImage socket - wire in an image, prompt the change, and the model rewrites it.

Inputs that matter

  • positivePrompt (required) - descriptive prose; Qwen-Image's LLM-encoded prompt path understands sentences, and that's what unlocks the editing behavior.
  • seedImage - the editing input. This is the input that makes Qwen-Image Qwen-Image.
  • width / height - 256–2048. Unlike some SD-derived models, it isn't locked to 1024 multiples.
  • maskImage / outpaint - for inpainting and extending; maskMargin adds context pixels around the masked region for cleaner blends.
  • steps - direct INT, default 20 (no toggle - Qwen-Image exposes it plainly).
  • CFGScale - toggle-gated; the CFGScale_value default of 1 is the guidance-distilled sweet spot. settings.trueCFGScale exists for true CFG if you insist.
  • lora / acceleratorOptions / watermark / ultralytics - builder sockets.

The image output is a native IMAGE into Preview or Save, with per-run cost on the title bar.

Where people get burned

  • CFG 1 is not broken, it's the design. Raising CFG on Qwen-Image past a small range burns the image and roughly doubles render time (that's what the unconditional pass costs). Leave the gate off.
  • Negative prompts do nothing at CFG ≤ 1. There's nothing for the negative to attach to when guidance is off. If you need exclusion, that's not this model's tool.
  • Editing needs a good seedImage. Qwen-Image edits what it can see; a low-res or muddy input image caps how good the result gets.
  • The toggle pattern - CFGScale, strength, maskMargin are "enable to set X" booleans with paired _value widgets. Flip the toggle, set the value.

If you've been eyeing Qwen-Image for its editing chops but the local setup felt like a project, this is the zero-effort way in. It won't replace a fine-tuned local stack, but it's the model's core behavior with none of the maintenance.

CategoryRunware/Image/runware

Inputs (36)

NameTypeDefaultDescription
positivePromptSTRINGText prompt describing elements to include in the generated output.
widthINT1024256–2048Width of the generated media in pixels.
heightINT1024256–2048Height of the generated media in pixels.
seedImageoptIMAGE
maskImageoptIMAGE
outpaintoptRUNWARE_OUTPAINT
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.
stepsoptINT201–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.
strengthoptBOOLEANfalseEnable to set strength. This setting has usage rules in this model, so it is off unless you enable it.
strength_valueoptFLOAT0.800–1Strength of the transformation. Lower values result in more influence from the original input.
maskMarginoptBOOLEANfalseEnable to set maskMargin. Off uses the model's default.
maskMargin_valueoptINT3232–128Extra context pixels around the masked region during inpainting. The model zooms into the masked area with these additional pixels for better integration.
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