StableAvatar_LoadModel
The one node that turns a pile of Wan files into a talking head
- model
- info
StableAvatar is an audio-driven avatar pipeline - feed it a photo of a person plus an audio file and it generates a talking-head video that matches the lips, indefinitely long. The whole thing ships as three nodes, and this is the one that loads the models. StableAvatar_LoadModel is the entry point: point it at a transformer, a VAE and an optional LoRA, and it hands you the two wires that the other two nodes actually run on.
The underlying model is StableAvatar (arXiv 2508.08248), which is built on Wan 2.1's 1.3B "Fun-InP" transformer - the lightweight, low-VRAM tier of Wan rather than the 14B that everyone actually uses for general video. That matters: you're getting the speed and VRAM footprint of the little Wan, at the cost of the 14B's quality. For lip-sync close-ups that trade is usually fine, but go in with eyes open. The pack is a wrapper by smthemex, a prolific author who ports talking-head and portrait models into ComfyUI quickly (EchoMimic, SenseNova U1, TwinFlow and a dozen more come from the same person).
What it actually loads
Internally the node reads three things out of your ComfyUI/models/ tree:
- the transformer -
diffusion_pytorch_model.safetensorsplusconfig.jsonfromComfyUI/models/StableAvatar/transformer/. The README stresses the filename: it must stay exactlydiffusion_pytorch_model.safetensorsor the loader won't find it. - the VAE - the standard
Wan2.1_VAE.pthfromComfyUI/models/vae/. - an optional LoRA - Kijai's
lightx2vspeed LoRA fromComfyUI/models/loras/. It cuts you from 25–50 steps down to 10, at the usual speed-LoRA quality cost.
Outputs are two custom types that only exist inside this pack: model (MODEL_PIPE_SA) feeds the sampler, and info (MODEL_INFO_SA) feeds the predata node. If you see "model type not found" errors, it means the pack isn't installed - these aren't standard ComfyUI types.
The inputs that actually matter
A beginner sets three things:
- transformer / vae - dropdowns, populated from your model folders. If a dropdown is empty, the file is in the wrong place.
- lora - leave
Nonefor your first runs. Addlightx2vonce it works, and drop steps to 10. - GPU_memory_mode / use_mmgp - the memory story.
use_mmgppresets (LowRAM_LowVRAM, HighRAM_HighVRAM, …) pick a GPU/RAM offload balance;GPU_memory_modeoffersmodel_cpu_offloadandsequential_cpu_offloadplusmodel_cpu_offload_and_qfloat8(fp8 weights). The README's tip: settingGPU_memory_modetoNonedisables mmgp's fp8 quantization. There are two offload systems here and the author recommends mmgp. If you have ~12GB+ VRAM, tryNonefirst and only reach for offload when it OOMs.
enable_teacache defaults to false - keep it that way. The README is blunt: don't enable teacache yet, it makes things "花" (breaks/bloats). weight_dtype (bfloat16 default) you can ignore until you're chasing NaNs.
Installing it
Via ComfyUI Manager, search "ComfyUI_StableAvatar". Or the manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/smthemex/ComfyUI_StableAvatar.git
cd ComfyUI_StableAvatar
pip install -r requirements.txt
Then restart ComfyUI. The heavy lift is models, not code - you need the Wan transformer + config, Wan VAE, a umt5_xxl text encoder in models/clip, a CLIP vision model in models/clip_vision, wav2vec2-base-960h in models/StableAvatar/, and Kim_Vocal_2.onnx for vocals. The audio-separator pip package is optional and only needed for separating vocals out of songs. One nice touch from the README: if you also run EchoMimic V3, this pack detects it and reuses its shared models instead of double-downloading.
Common tripping points: wrong folder → empty dropdown; renamed transformer file → load failure; and assuming the pack's custom node types are standard ComfyUI. All three are just "check your model paths" in disguise.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| transformer | COMBO | 0 options: | |
| vae | COMBO | 0 options: | |
| lora | COMBO | 1 options: None | |
| enable_teacache | BOOLEAN | false | — |
| use_mmgp | COMBO | 6 options: LowRAM_LowVRAM, None, VerylowRAM_LowVRAM, LowRAM_HighVRAM, HighRAM_LowVRAM, HighRAM_HighVRAM | |
| GPU_memory_mode | COMBO | 4 options: None, model_cpu_offload_and_qfloat8, model_cpu_offload, sequential_cpu_offload | |
| weight_dtype | COMBO | 3 options: bfloat16, float16, float32 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| model | MODEL_PIPE_SA | — |
| info | MODEL_INFO_SA | — |