Everything shoved into single node.
Pros:
Independent of any workflow, can be used anywhere.
Versatile. Can be chained for whatever effect: T2V+I2V extensions (unlimited)+FLF2V loop+V2V Upscale+Face Inpaint, whatever else, in a single workflow.
Cons:
Newbie unfriendly - you have to know what and how Wan does to better understand how to use it.
Lora selection - have to be performed inside the subgraph. Easy to forget and miss when they were used, but also easy to copy to the next part.
Easy to mess up inputs and parameters
RAM bloat - using multiple features with different checkpoint means comfyUI will not unload them from RAM, eventually spilling to swap file. For me, even 128GB is not enough sometimes.
Workflow json file bloat - inner wflow is massive with all the branching.
To start using, select your models (ckpts and lightning loras) inside subgraph (relevant nodes highlighted by red in top left corner), install triton and sageattention, or bypass/remove torch.compile and sageattention nodes (be a quitter and lose ~40% speed boost). Publish subgraphs (book icon) to use anywhere.
When using merges with lightning loras included, bypass or remove lightning lora loaders inside subgraph.
There's a pdf manual in the archive to help navigate subgraph's parameters. Also contains short instruction about triton and sageattention installation.
Changelog
v4 2.11.2025
Combined all Wan 2.2 and 2.1 basic features into single subgaphs.
Gathered most of VACE features into sigle subgraphs.
v3.1 17.08.2025
Added:
FunControl 2.2 - inner wflow and subgraph
Changed:
How loras added; initially i opted to using lora stacks, as only 2.1 loras were availible, to select lora once and apply to both ckpts, but now it's no longer relevant, so back to PowerLoraLoader
FunInpaint was very disappointing, so i won't be adding it. I2V is same in function and has no risk of conflicts with loras.
v3.0 01.08.2025
Added:
Wan2.2 model profiles and new nodes utilizing it's MoE capabilities
Changed:
Group nodes replaced with subgraphs
Removed:
1.3b control loras
v2.8 14.07.2025
Added:
VACE seamless extension - wflow and group node
VACE seamless loop - wflow and node
Removed:
HunYuan
LTX
v2.7 17.05.2025
WanWrapper workflow updated
VACE 14b and 1.3b
Phantom
FantasyTalking
CausVid (3step) lora
Spline dot control example
v2.6 24.04.2025
Wrapper IV2V node - crank up blocks to swap and upscale to XL resolution
FLF2V - official start-to-end frame model that rocks
Skyreels V2 DF - video extention model that takes last frames of provided video and seamlessly extends it - pretty much FramePack, but Wan
v2.5 7.04.2025
Wan wrapper consolidated - separate workflows are likely better, keeping it as proof of concept
v2.1. 4.04.2025
InterpV2V nodes added.
v2. 3.04.2025
HunYuan - standard tools: T2V, V2V, I2V (including LeapFusion), IV2V (performs poorly)
introduction of Group Nodes
v1. 31.03.2025
initial release
Description
Wrapper flow updated with
VACE 14b
Phantom
CausVid
FAQ
Comments (6)
I keep getting this error with vace 14b
KeyError: 'vace_blocks.8.modulation'
are you using vace 1.3b on wan 14b or vice-versa?
Same error occurred:
In the "WanVideo Model Loader" node, I selected "Wan2_1-T2V-14B_fp8_e5m2.safetensors", and in the "WanVideo VACE Model Select" node I chose "Wan2_1-VACE_module_14B_bf16.safetensors". Then the "WanVideo Model Loader" immediately threw this error:
!!! Exception during processing !!! 'vace_blocks.8.modulation'
Traceback (most recent call last): File "/root/ComfyUI/execution.py", line 347, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/root/ComfyUI/execution.py", line 222, in get_output_data return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/root/ComfyUI/execution.py", line 194, in mapnode_over_list process_inputs(input_dict, i)
File "/root/ComfyUI/execution.py", line 183, in process_inputs results.append(getattr(obj, func)(**inputs)) File "/root/ComfyUI/custom_nodes/ComfyUI-WanVideoWrapper/nodes.py", line 663, in loadmodel
set_module_tensor_to_device(transformer, name, device=transformer_load_device, dtype=dtype_to_use, value=sd[name]) KeyError: 'vace_blocks.8.modulation'
Same, I'm also using 14B fp8 e4mf3n for both. I believe it may be due to a change in the "WANVideo VACE model select" node. I don't think it used to list the vace_blocks settings e.g. "0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28" and now it defaults to this string for the 1.3B model in workflows when the new node is loaded.
Unsure though this is the only thing that stands out to me currently. I'll do some more digging.
AH found it. I TLDR; update your kijai ComfyUI-WanVideoWrapper custom nodes.
Long version. It was not that we are using a new node; We are using an old node. New version doesn't prompt for vace_blocks string and works without the error described. I simply opened a terminal in the custom_nodes/ComfyUI-WanVideoWrapper folder and ran git pull to pull the latest files.
All working fine for me now, hope this helps anyone
unsure why my comment got yeeted, but TLDR; update your kijai ComfyUI-WanVideoWrapper nodes
New version of the node doesn't prompt for vace_blocks string and works fine