Nodes/ComfyUI Seedance/Qwen Image Global 2.1 文生图/图像编辑
ComfyUI Node

Qwen Image Global 2.1 文生图/图像编辑

Alibaba's editor you can only call, never download

By T8mars·Created 3 months ago·Updated 3 days ago· 37
Qwen Image Global 2.1 文生图/图像编辑
  • image1
  • image2
  • image3
  • image4
  • image5
  • image6
  • image7
  • image8
  • image9
  • image10
  • api_config
  • image
  • image_url
  • task_id
  • response
◄prompt►
◄resolution2k►
◄ratio3:4►
◄seed-1►
◄skip_errorfalse►

What it is, and the annoying bit

The Qwen-Image family is why a lot of people stopped fighting Flux Kontext. The 20B base and the Edit line that followed (2509, then 2511) became the default open instruction-editing stack, all of it Apache 2.0 - which matters more than it sounds, because Apache 2.0 carries no anti-circumvention clause and so none of the takedown machinery aimed at NSFW fine-tunes. That's the moat.

Then February 2026: Qwen-Image-2.0 shipped as a 7B unified generate-plus-edit model, API-only, no weights, and the top comment on the announcement was a two-word review - "Not open, not interested" (+88). Qwen Image Global 2.1 is the follow-on in that closed line. You can't download it, only call it, which is precisely why this node exists.

So it's the API on-ramp for a model with no local substitute. If what you want is open weights you can LoRA and run offline, go use Qwen-Image-Edit locally and keep your money.

How it works

Single-model client node - qwen-image-global-2.1 - with no model dropdown. The mechanism is the standard four steps the pack shares:

  1. Any connected image1-image10 reference is converted to PNG and uploaded.
  2. A payload goes to the image endpoint: model, prompt, metadata: {ratio, resolution}, images only if you connected references, metadata.seed only if the seed is 0 or higher.
  3. The task is polled until done.
  4. The result downloads and returns as a ComfyUI IMAGE.

The behaviour that trips people up: the node picks your mode for you. No references connected, it's text-to-image. Connect any of image1 through image10 and it becomes an editing request, in wired order. No mode switch, and no prompt-only path once a reference is attached.

The inputs that matter

  • prompt - required, multiline, and strictly validated. Empty prompt is an error, not a default.
  • resolution - 1k, 2k (default), 4k.
  • ratio - eight options: 1:1, 2:3, 3:2, 3:4 (the default), 4:3, 9:16, 16:9, 21:9. Note the default is portrait 3:4; if your first test comes back tall and you wanted landscape, that's why.
  • seed - this one is real, not cosmetic. -1 omits the seed from the request entirely, 0 is a valid seed (a surprisingly common off-by-one), and any value ≥ 0 is sent. It's also your ComfyUI cache control: fixed reuses the cached image when nothing else changed, while randomize/increment/decrement fires a new call - and each call is billable.
  • image1 … image10 - up to ten references, each one image. Batch a node's output into any of these and validation stops you; the pack requires exactly one image per socket.
  • skip_error - swaps a failure for a placeholder image so a batch run keeps going.

Outputs: image (wire to Preview Image / Save Image), image_url, task_id, response.

One image per run. There's no n field here - if you want three candidates, run the node three times with different seeds, or reach for the concurrent submit version and let the pool do it.

Install

comfy node install seedance

or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/ComfyUI_Seedance.git
cd ..
python -m pip install -r custom_nodes/ComfyUI_Seedance/requirements.txt

The only dependency is requests. Restart ComfyUI; everything shows up under the Seedance category. Then add a Seedance API Config node (base_url = https://api.seedance.nz, plus your key) and connect api_config - or set SEEDANCE_API_KEY, or write a config/.env. examples/qwen-image-global-2.1文生图.json and ...图像编辑.json are drop-in starters with the key left blank.

Where people get burned

Nothing runs without the key, and a missing one surfaces as a config error rather than a nice message - the number one issue across this whole pack. Your references get uploaded. Ten PNGs leave your machine for every edit call; the pack is explicit that it sends prompts and connected media to the configured endpoint. Read the security section of external-api-nodes.md once - this category already shipped malware once, and the honest defence is "read what the pack does" plus "don't send what you can't afford to leak."

Then the mundane stuff. Custom nodes must live at ComfyUI/custom_nodes/ComfyUI_Seedance or they silently never load. On portable Windows builds with a busted certificate store you'll get TLS errors - pip install -U requests certifi, or point SEEDANCE_CA_BUNDLE at a CA file. Result links expire. And every execution is a paid call, which is exactly why fixed seed plus ComfyUI's cache is your friend while iterating on a prompt.

The take

For a greenfield text-to-image or a ten-reference composite edit, this is a clean node - three knobs and a prompt, no mode confusion, correct seed semantics. Just don't mistake it for the Qwen you can own. The open 20B lineage is still sitting on HuggingFace, and for a lot of editing jobs it's the better trade.

CategorySeedance

Inputs (16)

NameTypeDefaultDescription
promptSTRING—
resolutionCOMBO2k3 options: 1k, 2k, 4k
ratioCOMBO3:48 options: 1:1, 2:3, 3:2, 3:4, 4:3, 9:16, +2
seedINT-1-1–9007199254740991-1 omits API seed; 0 is valid | -1 不发送种子,0 是有效种子。 Fixed reuses the cached result while all inputs stay unchanged; randomize/increment/decrement starts a new execution. | Fixed 在输入不变时复用缓存;随机、递增或递减会触发新任务。
image1optIMAGEReference image 1/10 | 参考图 1/10
image2optIMAGEReference image 2/10 | 参考图 2/10
image3optIMAGEReference image 3/10 | 参考图 3/10
image4optIMAGEReference image 4/10 | 参考图 4/10
image5optIMAGEReference image 5/10 | 参考图 5/10
image6optIMAGEReference image 6/10 | 参考图 6/10
image7optIMAGEReference image 7/10 | 参考图 7/10
image8optIMAGEReference image 8/10 | 参考图 8/10
image9optIMAGEReference image 9/10 | 参考图 9/10
image10optIMAGEReference image 10/10 | 参考图 10/10
api_configoptSEEDANCE_CONFIGConnect Seedance API Config or use SEEDANCE_API_KEY.
skip_erroroptBOOLEANfalseReturn a placeholder on failure | 出错时输出占位图。

Outputs (4)

NameTypeDescription
imageIMAGE—
image_urlSTRING—
task_idSTRING—
responseSTRING—