00:00 / LOCAL SETUP
Run Wan-Dancer-14B in ComfyUI
Short answer first: yes, you can run Wan-Dancer-14B in ComfyUI today — but not from the Wan-AI repo everyone links to. The ComfyUI-ready weights and the workflow live somewhere else. Here is where, plus the quantized route if 14B won't fit on your card.
Where the ComfyUI files actually are — checked 2026-07-26
This is the part that wastes people's time. The official Wan-Video/Wan-Dancer repo is a DiffSynth-Studio project driven by two shell scripts — 296 files, zero of them ComfyUI. The Wan-AI/Wan-Dancer-14B weights repo has no nodes and no workflow either. If you only look there, you conclude ComfyUI support doesn't exist. It does — in two other places:
- Comfy-Org repackaged weights (FP8) — Comfy-Org/Wan-Dancer ships
wan2.2_dancer_14b_global_fp8_scaled.safetensorsand the matching_local_file, already laid out underdiffusion_models/. Note the naming — ComfyUI treats this as part of the Wan 2.2 family. - GGUF quants + a ready workflow — realrebelai/Wan_Dancer_GGUFs has both stages at Q3_K_M / Q4_K_S / Q4_K_M / Q5_K_M / Q6_K, plus
Wan Dancer (Workflow Subgraph).json. At the time of writing it had ~16.8k downloads against ~4.1k for the original weights repo — in practice, most people run this model through ComfyUI, not through the shell scripts.
Route A — ComfyUI (what most people should do)
The thing that trips everyone up: the diffusion weights are not enough. The workflow also needs a text encoder, a VAE, a CLIP vision model and a distill LoRA — four files that live in other repos entirely. Download only the Wan-Dancer files and the workflow will fail to load. Full list, all paths verified 2026-07-26:
1 — Diffusion weights (pick one)
- FP8: Comfy-Org/Wan-Dancer →
wan2.2_dancer_14b_global_fp8_scaled.safetensors+wan2.2_dancer_14b_local_fp8_scaled.safetensors - GGUF (smaller cards): realrebelai/Wan_Dancer_GGUFs → a matching Global + Local pair at the same quant level (Q3_K_M / Q4_K_S / Q4_K_M / Q5_K_M / Q6_K)
Either way, both files. The repo author puts it in caps for a reason: "YOU NEED BOTH THE GLOBAL AND LOCAL MODEL (SIMILAR TO WAN 2.2 MODEL FILES WITH HIGH AND LOW)". It is a two-pass model — global plans keyframes across the track, local refines. One file alone gives you a broken result.
2 — The four supporting files (not optional)
The first three come from Comfy-Org/Wan_2.1_ComfyUI_repackaged:
text_encoders/ umt5_xxl_fp8_e4m3fn_scaled.safetensors vae/ wan_2.1_vae.safetensors clip_vision/ clip_vision_h.safetensors
The fourth is a distill LoRA from lightx2v/Wan2.1-I2V-14B-480P-StepDistill-CfgDistill-Lightx2v:
loras/ Wan21_I2V_14B_lightx2v_cfg_step_distill_lora_rank64.safetensors
3 — Workflow and custom nodes
Wan Dancer (Workflow Subgraph).json, in the GGUF repo above — drag it onto the ComfyUI canvas.- It uses Rebels Audio Nodes for pre-generation audio editing. Install it first, or the graph will open with missing nodes.
⚠️ If you downloaded the GGUFs early, download them again. The repo carries a notice that an earlier batch of quants was corrupt. Re-pulling costs you bandwidth; debugging a corrupt checkpoint costs you an evening.
One more trap worth knowing: Comfy-Org's README points at Wan-AI/Wan2.2-Dancer-14B as the original repo, which does not publicly resolve. The live weights repo is Wan-AI/Wan-Dancer-14B.
Route B — the official scripts (reference implementation)
Use this if you want the authors' exact pipeline, are batching on a server, or are debugging against the reference. It is the only route the Wan-AI README documents.
Before you start: the environment is pinned hard
This trips up more people than the model itself. The official install pulls a specific PyTorch wheel:
torch-2.6.0+cu124-cp310-cp310-linux_x86_64.whl
Read the filename and you get the real requirements:
- cp310 — Python 3.10. Not 3.11, not 3.12.
- cu124 — CUDA 12.4.
- linux_x86_64 — Linux only. There is no Windows wheel at that URL, and
flash_attn==2.6.3has no prebuilt Windows wheel either. On Windows, use WSL2 or rent a Linux box.
1. Clone and install
git clone https://github.com/Wan-Video/Wan-Dancer.git cd Wan-Dancer python -m venv venv_wan_dancer source venv_wan_dancer/bin/activate pip install -e . pip install moviepy loguru librosa pip install https://mirrors.aliyun.com/pytorch-wheels/cu124/torch-2.6.0+cu124-cp310-cp310-linux_x86_64.whl pip install torchvision==0.21.0 pip install diffusers==0.34.0 pip install yunchang==0.5.0 pip install flash_attn==2.6.3 pip install xfuser==0.4.0 pip install transformers==4.46.2
Those versions are exact on purpose — diffusers, transformers and xfuser all break the run if you let pip resolve them freely.
2. Download the weights
pip install "huggingface_hub[cli]" huggingface-cli download Wan-AI/Wan-Dancer-14B --local-dir ./Wan-Dancer-14B
If Hugging Face is slow or blocked where you are, ModelScope serves the identical repo and needs no login:
pip install modelscope modelscope download Wan-AI/Wan-Dancer-14B --local_dir ./Wan-Dancer-14B
You are pulling global_model.safetensors, local_model.safetensors, Wan2.1_VAE.pth, models_t5_umt5-xxl-enc-bf16.pth and a CLIP checkpoint — budget the disk space before you start.
3. Generate — it's two stages, not one
This is the part that surprises people coming from single-pass video models. Wan-Dancer plans keyframes across the whole track first, then refines. You run two scripts, in order.
Stage 1 — global keyframes:
cd Wan-Dancer ./gen_video_global.sh
Stage 2 — local refinement (needs stage 1's output):
./gen_video_local.sh
Stage 2 takes an extra parameter, global_video_path, pointing at the mp4 stage 1 wrote into outputs/global_video/. Skip it and stage 2 has nothing to refine.
Parameters that matter
image_path— reference photo, e.g.gen_video/ref_image/1001.jpgmusic_path— the audio track, e.g.gen_video/music/ChineseClassicDance.WAVprompt_path— this is how you pick the dance style, and there is a separate file per stage. Five styles ship with the repo:- Chinese Classical —
gen_video/prompt/古典舞_global.txt/古典舞_local.txt - K-Pop —
gen_video/prompt/kpop_global.txt/kpop_local.txt - Street —
gen_video/prompt/街舞_global.txt/街舞_local.txt - Latin —
gen_video/prompt/拉丁舞_global.txt/拉丁舞_local.txt - Tap —
gen_video/prompt/踢踏舞_global.txt/踢踏舞_local.txt
- Chinese Classical —
num_inference_steps— the official examples use 48 for stage 1 and 24 for stage 2. The authors note it should go higher for longer videos.cfg_scale— 5 in every published example.seed— 0 in most examples; the K-Pop stage-2 example uses 100.
Hardware — what the authors actually say
They don't publish a VRAM number. Anyone quoting an exact figure — including this page — is inferring it. What is certain from the release:
- 14B diffusion weights in two separate checkpoints (Global + Local), plus a umt5-xxl text encoder and a CLIP ViT-H model.
- The reference implementation lists
flash_attnandxfuser, i.e. it was written for datacenter cards and multi-GPU sharding. - Two full passes over a minute-scale track, at 48 and 24 steps.
But the format you pick moves this more than the card does. Running the reference implementation unquantized is a datacenter job. Running Q4 or Q3_K_M GGUFs in ComfyUI is a different workload entirely — that is exactly why the GGUF repo has roughly four times the downloads of the original weights. If your card is small, start at Q4_K_S or Q3_K_M and move up until quality stops improving, rather than assuming you need to rent.
Common failures
pip install flash_attnfails / builds forever — you're on Windows or on the wrong Python. Checkpython --versionreads 3.10 and you're on Linux or WSL2.- CUDA version mismatch — the wheel is cu124.
nvidia-smimust show a driver supporting CUDA 12.4. - Stage 2 produces nothing —
global_video_pathisn't set, or points at a file stage 1 never wrote. - Style prompt has no effect — you reused the
_globalprompt file in stage 2. Each stage has its own. - OOM on the second stage — stage 2 works at full resolution. Validate your setup on a 15–20 second clip before committing to a full track.
No GPU? Three options.
1. Use the official free demo. The team hosts Wan-Dancer on ModelScope Studio. Free, no install, queue times vary. Best way to see whether the output quality is worth the setup.
2. Rent a GPU by the hour. The scripts above run unchanged on a rented Linux box with an A100 or H100. RunPod and Vast.ai both rent by the minute — pick a PyTorch 2.6 / CUDA 12.4 template so you skip most of step 1, and give yourself 100 GB+ of volume for the weights. Renting for an evening costs less than the electricity argument you're about to have with yourself.
3. Wait for our browser version. Upload a photo, pick a style, download the video — no install, no GPU. We'll email you once, when it opens. See the hosted API status for where that stands.
Sources: the official model card, the Wan-Video/Wan-Dancer repo, and the Wan-Dancer paper. Commands and parameters transcribed from the official README on 2026-07-26. Wan-Dancer-14B is Apache-2.0. This site is not affiliated with Wan-AI or Alibaba.