Z-Image i2L v2 — Sample (Img2Img)
Restyle an existing image — 'make my photo look like this' without training a thing
- pipe
- lora
- input_image
- negative_lora
- image
The most immediately fun node in the pack. Sample (Img2Img) takes an existing image, applies the i2L style LoRA to it, and hands you the restyled result. That's the "make my photo look like this artist's style" workflow, minus any training - which is the entire point of this pack.
How it works: it's Sample with an extra input_image and a denoising_strength knob. Low strength (around 0.3) keeps the output close to the source - structure, composition, and subject all survive, only the surface treatment changes. High strength (0.8) leans hard into the LoRA and lets the style win. 0.6 is the default and a genuinely good starting point. Everything else - pipe, lora, prompt, seed, cfg_scale (4), num_inference_steps (50), sigma_shift (8) - matches the plain Sample node.
Two details from the source worth knowing. First, width/height default to 0, which means "match the input image," rounded down to a multiple of 16. Set both to nonzero values to override - and note the code only applies your override when both are set, so don't change one, leave the other at 0, and wonder why nothing happened. Second, the optional negative_lora and negative_prompt behave exactly like Sample's: wire in the gray-image branch (Gray Images → Extract LoRA) for the paper's asymmetric CFG if you want the best quality.
Why you'd reach for it: this is the same shape as the community's favorite Z-Image character workflows - the "three-dial" setup where denoise, CFG, and LoRA strength are the only things you touch. It's a fast way to give an existing image a new look while keeping its content. Pair it with a character LoRA you've saved and it becomes the core of a "this character, new style" pipeline; pair it with a style LoRA and it's "toonify my photo."
Troubleshooting: denoising_strength at 1.0 is effectively full regeneration (you've thrown away the source image); at 0.0 nothing changes at all. If results ignore the source, your strength is too high; if they ignore the style, it's too low. And the usual pack gotchas apply - DiffSynth installed from git, first-run model download through the Loader, 24 GB cards running with low_vram on.
Install
Installs as part of the pack: ComfyUI Manager (search ComfyUI_ZImageI2L_v2) or git clone https://github.com/jzhang-POP/ComfyUI_ZImageI2L_v2 into ComfyUI/custom_nodes/. The dependency that bites is DiffSynth-Studio, which must come from git because v2 needs its Diffusion Templates API:
git clone https://github.com/modelscope/DiffSynth-Studio.git
cd DiffSynth-Studio && pip install -e . && cd ..
pip install -r ComfyUI/custom_nodes/ComfyUI_ZImageI2L_v2/requirements.txt
Restart ComfyUI, run the Loader once for the model download, and this node is ready.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| pipe | ZIMAGE_PIPE | — | |
| lora | ZIMAGE_LORA | — | |
| input_image | IMAGE | Source image to restyle. | |
| prompt | STRING | — | |
| denoising_strength | FLOAT | 0.600–1 | — |
| seed | INT | 00–18446744073709550000 | — |
| cfg_scale | FLOAT | 4.00–30 | — |
| num_inference_steps | INT | 501–200 | — |
| sigma_shift | FLOAT | 8.00–20 | — |
| width | INT | 00–4096 | — |
| height | INT | 00–4096 | — |
| negative_loraopt | ZIMAGE_LORA | — | |
| negative_promptopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |