EmAySee_TextEncodeQwenImageEditPlus_noRS
Up to seven references, one instruction
- clip
- vae
- image1
- image2
- image3
- image4
- image5
- image6
- image7
- CONDITIONING
This is the multi-reference sibling of the noRS encoder: same idea - encode an edit instruction plus reference images into conditioning for Qwen-Image-Edit - but with seven image inputs instead of one. If the single-image version is "edit this picture," the Plus version is "here are several pictures; do this across all of them." That unlocks the workflows people actually build with Qwen-Image-Edit for character work: keep a character consistent across a batch of poses by feeding reference frames of the same character, then give one instruction that applies to all of them.
The noRS in the name is the same contract as its sibling: no built-in resolution selector, you own resolution. If you came here from the stock Qwen-Image "Text Encode Qwen Image Edit Plus" node, this is that node with the selector wiring removed.
How it works
Each connected image (image1 through image7) is handled in two ways at once, mirroring how Qwen-Image-Edit natively dual-encodes its input: the image is passed to the tokenizer as vision tokens, and - if a vae is supplied - VAE-encoded into a reference_latents list attached to the conditioning. The prompt is then wrapped in a llama-style template with the images marked up as Picture 1: <|vision_start|>...<|vision_end|> placeholders, so the model knows which image each part of the instruction refers to.
image_prompt += "Picture {}: <|vision_start|><|image_pad|><|vision_end|>".format(i + 1)
tokens = clip.tokenize(image_prompt + prompt, images=images_vl, llama_template=llama_template)
Unconnected image slots are skipped entirely - you can feed one, three, or seven.
The inputs that matter
clip- the Qwen-Image-Edit CLIP.prompt- the instruction that applies to the reference images. Multiline, dynamic prompt syntax supported.image1…image7(all optional) - the reference images. Any subset works.vae(optional) - the Qwen VAE; without it there are no reference latents, and the multi-image anchoring collapses.
Output is a single CONDITIONING for the sampler's positive input.
Installing it
Same pack as everything else here: ComfyUI_EmAySee_CustomNodes via ComfyUI Manager or git clone https://github.com/EmAySee/ComfyUI_EmAySee_CustomNodes into custom_nodes/, then restart. No extra deps in the repo, but you need the Qwen-Image model pack for the CLIP/VAE and, obviously, a Qwen-Image-Edit checkpoint to sample with.
Where people get burned
Same traps as the single-image version, amplified. Missing vae is the big one - with seven images and no reference latents, the model has nothing to anchor pixel consistency to, and Qwen-Image-Edit's known drift problem (faces move, unchanged pixels get re-emitted) gets much worse across multiple references. Also keep the resolution story straight: noRS means you're responsible for it, and with several images, mismatched resolutions between them will confuse the vision encoding. If you're using this for character consistency, the model's own docs and users recommend the same discipline as ever: feed clean, consistent references and expect to verify the unchanged areas after the edit rather than trusting them.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| prompt | STRING | — | |
| vaeopt | VAE | — | |
| image1opt | IMAGE | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — | |
| image4opt | IMAGE | — | |
| image5opt | IMAGE | — | |
| image6opt | IMAGE | — | |
| image7opt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |