WAN·DANCERGet early access

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.safetensors and the matching _local_ file, already laid out under diffusion_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.3 has 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.jpg
  • music_path — the audio track, e.g. gen_video/music/ChineseClassicDance.WAV
  • prompt_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
  • 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_attn and xfuser, 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_attn fails / builds forever — you're on Windows or on the wrong Python. Check python --versionreads 3.10 and you're on Linux or WSL2.
  • CUDA version mismatch — the wheel is cu124. nvidia-smi must 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 _global prompt 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.