ποΈ DiffsynthUnionLora Apply
Structural control the DiffSynth way
- conditioning
- vae
- image
- conditioning
- latent
This is a niche, advanced node, and worth saying so up front: it's for people already working with DiffSynth-style pipelines. It applies a DiffSynth "union" control-LoRA - structural conditioning delivered as a LoRA-shaped adapter rather than a classic ControlNet file - using a control image to steer the generation. The pack lists it alongside its Diffsynth Controlnet Apply node as an extra "for users who work with Diffusynth workflows." If that sentence didn't mean anything to you, you almost certainly want the regular SDVN Controlnet Apply instead; this one assumes a specific setup.
The idea it's built on is a real trend, though. As new base architectures arrived, the community increasingly reached for control-LoRAs - cheaper to train than a full ControlNet, and often the route taken when nobody's built a proper ControlNet for a given base yet. This node is SDVN's hook into that approach for DiffSynth-compatible models.
How it works
It takes your conditioning, a VAE, and a control image, optionally inverts the image (the preprocessor), processes it at the chosen resolution, and folds the structural guidance into the conditioning the DiffSynth union-control way - handing back modified conditioning plus a prepared latent to sample from. The heavy lifting is the union control-LoRA doing structure-aware conditioning; this node is the ComfyUI wrapper that wires it into your graph.
The inputs and outputs that matter
conditioning(CONDITIONING) - your prompt conditioning to steer.image(IMAGE) - the control reference.vae(VAE) - needed to move between pixel and latent space here.preprocessor-NoneorInvertImage(invert the control map when the model expects the opposite polarity).resolution(INT, default 1024) - the working resolution for the control image; higher is more faithful but costs more VRAM.
Outputs: modified conditioning and a latent - wire both toward your sampler.
How to install it
Comes with the SDVN pack. ComfyUI Manager, search SDVN_Comfy_node; or:
cd ComfyUI/custom_nodes
git clone https://github.com/StableDiffusionVN/SDVN_Comfy_node
pip install -r custom_nodes/SDVN_Comfy_node/requirements.txt
from the ComfyUI root, then restart.
Common issues & troubleshooting
This isn't the general ControlNet node. If you just want canny/depth/pose control on a normal SD, SDXL, or Flux workflow, use SDVN Controlnet Apply. This node targets DiffSynth union-control specifically and expects a compatible model/pipeline; pointing it at an ordinary setup won't do what you want.
The preprocessor here only inverts. Like the pack's other apply nodes, actual structural preprocessing (extracting a depth map or pose) happens upstream - this field just flips the image when needed. Prepare your control map before this node.
Resolution vs VRAM. Pushing resolution up sharpens the control but eats memory. If you're hitting out-of-memory errors, drop it back toward the 1024 default.
It's thinly documented. This is a specialist node in a large pack, and the public docs are light on it. Lean on the pack's examples folder and the DiffSynth workflow you're adapting rather than expecting a lot of hand-holding here.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| conditioning | CONDITIONING | CΓ’u lα»nh Δα» chαΊ‘y reference image | |
| vae | VAE | Mô hình VAE | |
| image | IMAGE | αΊ’nh ΔαΊ§u vΓ o cho ControlNet. | |
| preprocessor | COMBO | Tiα»n xα» lΓ½ αΊ£nh cho ControlNet, cαΊ§n cΓ i ΔαΊ·t ControlNet Aux. | |
| resolution | INT | 1024512β4096 | Δα» phΓ’n giαΊ£i cho preprocessor. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | β |
| latent | LATENT | β |