WanVideo VACE Module Select
Attach a separate VACE module to your Wan model
- extra_model
Small node, specific job: it points your Wan setup at a standalone VACE module file so you can do VACE work without a model that has VACE baked in. VACE is Alibaba's official control framework for Wan - reference-to-video, video extension, and inpainting driven by pose or depth control videos. It's one of the most-used pieces of the whole Wan ecosystem. This node just selects which VACE module to load and hands its path to the model loader.
The node description spells out exactly when you need it: "VACE model to use when not using [a] model that has it included." Some Wan checkpoints ship VACE fused in; if yours doesn't, you attach it separately, and this is how.
How it works
There's not much mechanism here - it's a selector. You pick a VACE module from the diffusion-models folder, and the node outputs a VACEPATH: a typed pointer the WanVideo model loader accepts as an extra module. The loader then wires VACE into the base model at load time. All the actual control behavior - feeding pose/depth control videos, reference images, extension frames - happens in the VACE embedding and sampler nodes downstream. This one just makes sure the VACE weights are in play.
The inputs and outputs that matter
There's exactly one input and one output, which is the whole point.
vace_model- a dropdown of VACE module files it finds inComfyUI/models/diffusion_models. If it's empty, you haven't downloaded a VACE module yet.
Output: extra_model (VACEPATH) → the corresponding "extra model" / VACE input on the WanVideo model loader.
That's it. It's a plumbing node, and it earns its own box because keeping the VACE module selection separate from the base model selection is what lets you mix and match - pair one base Wan checkpoint with different VACE modules without re-downloading fused variants.
How to install it
ComfyUI Manager → search ComfyUI-WanVideoWrapper, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-WanVideoWrapper
pip install -r ComfyUI-WanVideoWrapper/requirements.txt
then restart. The real dependency is the VACE module file itself - download a VACE weight (1.3B or 14B) into ComfyUI/models/diffusion_models so the dropdown can see it. You'll also want your base Wan model, VAE and text encoder, plus a control-video preprocessor (DWPose, depth) for whatever VACE task you're doing.
Common issues & troubleshooting
Dropdown is empty. No VACE module in ComfyUI/models/diffusion_models. This node only lists what's there - download a VACE weight into that exact folder and refresh.
You don't need this node at all. If your Wan checkpoint already includes VACE, wiring in a separate module is redundant and can conflict. Check what you loaded - the node is specifically for the not-included case.
VACE runs but it's painfully slow. That's VACE, not this node. The KB is blunt about it: VACE is slow, 15–40 minutes for a 14B clip on a 4090 at full quality. The community fix is a CausVid or lightx2v speed LoRA to drop it to a handful of steps - expect to need one for any iterative work.
14B module won't fit. VACE 14B is heavy; the KB notes 12GB is "pushing it" and block-swapping is often required. Use the fp8 module and swap blocks, or step down to VACE 1.3B for 16GB-class cards.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| vace_model | COMBO | These models are loaded from the 'ComfyUI/models/diffusion_models' VACE model to use when not using model that has it included |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| extra_model | VACEPATH | — |