Conditioning Add Image Reference (Dual)
The dual version of Conditioning Add Image Reference — refs on both your positive and negative
- positive
- negative
- vae
- image1
- image2
- image3
- positive
- negative
ConditioningAddImageReferenceDual is ConditioningAddImageReference with one more input and one more output: it takes a positive and a negative conditioning, VAE-encodes your reference images once, and attaches those same reference_latents to both sides.
Why would you want the reference on the negative? Because if you run an edit model with CFG above 1, the negative side is doing real work - it's telling the sampler what to pull away from. If the negative has no idea what image you started from, it's steering blind. Attaching the refs to both sides keeps the two in agreement about what the source image is.
Reach for this one when you're actually using a negative. Lots of Qwen Edit and Klein workflows run CFG 1 with an empty negative, in which case the single version is enough and this is just a node you never need. But the moment you're tuning CFG, or your model genuinely wants a negative prompt, having both conditionings come out of one node with matching references is tidy and hard to get wrong.
How it works
Identical machinery to the single version: each connected image is encoded with the VAE (full resolution - no resizing happens here), collected up to max_images_allowed, and attached to both conditionings via the reference_latents key. If no VAE is connected, nothing gets encoded and both conditionings pass through untouched, so a missing VAE fails silently. Same gotchas as its sibling: scale your inputs upstream (the author's workflows use ImageScaleToTotalPixels around 1 MP), because oversized inputs feed the offset and proportion problems Kontext and Qwen Edit are known for.
Inputs and outputs
- positive / negative (required) - the two conditionings from your text-encode nodes.
- vae (optional) - the model's VAE;
qwen_image_vae.safetensorsfor Qwen, the Flux VAE for Klein. - image1 / image2 / image3 (optional) - up to three references, processed in order.
- max_images_allowed -
"0"–"3", default"3".
Outputs are positive and negative CONDITIONING, wired straight into your sampler's two inputs.
Install and troubleshooting
Install as usual: search ComfyUi-TextEncodeQwenImageEditAdvanced in ComfyUI Manager, or
cd ComfyUI/custom_nodes
git clone https://github.com/BigStationW/ComfyUi-TextEncodeQwenImageEditAdvanced
then restart. No extra Python dependencies - the pack only uses core ComfyUI utilities, so the model downloads are the only heavy part.
If it looks like the references aren't doing anything, check the VAE connection first. And if the node doesn't show up at all, the usual culprit with this author's nodes is an outdated ComfyUI core - update that before reinstalling anything.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| max_images_allowed | COMBO | 3 | Maximum number of images to process. Images are processed in order: image1, image2, image3 |
| vaeopt | VAE | — | |
| image1opt | IMAGE | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |