Skip to content

Qwen-Image 2.1 Reference Edit

Qwen-Image 2.1 makes a new image from one to three reference images and a plain-English instruction, such as putting the shirt from <image2> on the person in <image1>. Say what changes and what stays. Qwen Research License: non-commercial use only.

Workflow id: qwen_image_21_edit · Image → Image

Calling it

POST /api/image/generate
{
  "workflow": "qwen_image_21_edit",
  "image": "...",
  "prompt": "..."
}

Params

Every input this workflow takes. Your install is the source of truth:GET /api/workflows/qwen_image_21_edit returns these as they are on your machine.

  • image · str · required
    First reference (image 1).
  • prompt · str · required
    An instruction, not a scene description. Name what changes, then what stays, and refer to references as <image1>, <image2> in the order they were sent: image is <image1>, then images in order ('Keep the person and pose in <image1> unchanged, put the jacket from <image2> on them').
  • image_2 · str · optional
    Optional second reference. Send it through the request's images list rather than setting it directly, so Studio stages it on the node.
  • image_3 · str · optional
    Optional third reference, sent the same way as image_2.
  • negative_prompt · str · optional
    Only read when cfg is above 1.
  • reference_resolution · int · default 1024
    Each reference is resized to about this many pixels squared, keeping its aspect ratio; the output comes out at the first reference's size. 0 keeps each reference at its own size.
  • seed · int · optional
    Optional. Leave it out and every run is a new random take. Send a seed only to remake an image exactly: the seed a job used is in its record.
  • steps · int · default 25
    ComfyUI's template runs 25; Qwen's own examples run 40.
  • cfg · float · default 1
    Keep at 1 for the official path. Raise it only to use a negative prompt.
  • sampler · str · default euler
  • scheduler · str · default simple
  • unet · str · default qwen_image_2.1_int8_convrot.safetensors
  • clip · str · default qwen3vl_8b_int8_convrot.safetensors
    Text encoder file on the node. The default is the int8 build; qwen3vl_8b_w4a8.safetensors (6.31 GB) is a smaller one from the same repo for nodes short on system RAM.
  • vae · str · default qwen_image_2.1_vae_bf16.safetensors