Every edit in this series is the same nine nodes. Learn this graph once and the rest of the guides are small variations on it.

The whole instruction-edit graph — model in from the left, your image encoded to a latent, sampler in the middle, save on the right

That’s the entire thing. The numbered titles map to what each box is for:

#NodeWhat it does
1UNETLoaderThe edit model itself (qwen_image_edit_2511).
2CLIPLoaderThe text encoder that reads your instruction.
3VAELoaderTranslates between pixels and latents.
4LoadImageYour source photo.
5TextEncodeQwenImageEditPlusThe important one — prompt and image go in together.
6same node, negativeWhat you don’t want.
7VAEEncodeYour source becomes the starting latent.
8KSamplerDoes the work.
9VAEDecodeSaveImageBack to pixels, written to disk.

The node that makes it an edit

The edit encoder up close — clip, vae, and image1/image2/image3 inputs, with the instruction underneath

TextEncodeQwenImageEditPlus is what separates editing from generating. A normal text-to-image graph encodes only words. This node takes your instruction and up to three reference images on the image1 / image2 / image3 inputs, so the model is conditioned on what your picture actually contains — not just on a description of it.

Wire image1 to your LoadImage, type the change you want in plain English, and that’s an edit:

change her jacket to deep forest green

No mask. No selection. No layer. The model works out what “her jacket” refers to.

Measured: 57 seconds on an RTX 5090 for a full-quality pass at these settings.

What it’s good at, and what it isn’t

Whole-object changes are its strength — garments, colours, materials, lighting. It struggles with fine asymmetric control (a wink, one raised eyebrow); it repaints the state of a face rather than nudging a single muscle. For that you want a reference image on image2, not a better sentence.

The settings, and what each one actually does

Four numbers in the KSampler carry an edit. These are the values we ran for every result below.

FieldValueWhy
steps20Below about 12 it stops respecting the instruction properly.
cfg2.5The one people get wrong. On an edit model, high CFG doesn’t mean “obey me more” — it means “destroy the original.” Stay between 2 and 3.
sampler_nameeulerBoring and reliable.
schedulersimpleSame.
denoise1.0Surprising, but correct here: the encoder holds your original, not the noise level.
seedchange itWhen an edit half-works, same prompt + new seed is free.

The rest of the set