Wan 2.2 Fun Sampler for Text to Video
Alibaba PAI's own Wan 2.2 node
- funmodels
- prompt
- negative_prompt
- riflex_k
- images
Wan 2.2 is where Alibaba's Wan-AI team and the PAI ("Fun") team both shipped their own release, and this node is the PAI side of it - built for Wan2.2-Fun-A14B-InP and Wan2.2-Fun-5B-InP, the Fun-branded Wan 2.2 checkpoints, as opposed to the base ones. If that split sounds confusing, it's because there's a near-identical twin node in this same pack, Wan2_2T2VSampler, built for the base checkpoints instead - same fields, different intended model. Load the checkpoint that matches whichever node you're using; the sampler doesn't check for you.
What's different about Wan 2.2
Wan 2.2 moved to a two-expert Mixture-of-Experts architecture: a high-noise expert handles motion and scene composition early in denoising, a low-noise expert refines detail later. You don't configure this split directly through this node's fields, but it's worth knowing it's there, because it's the reason the community's advice around speed LoRAs is so specific - apply a speed-distillation LoRA to the low-noise pass only, and keep the high-noise pass running clean, or you lose the scene composition and emotional expressiveness that's the actual point of upgrading from 2.1. This node doesn't expose separate high/low-noise controls itself, so that guidance applies at the LoadWanLora stage upstream, not here.
Prompt, resolution, and the T2I side door
prompt / negative_prompt follow Wan's now-standard split: describe the still frame plainly and technically, describe the motion separately and simply, don't restate the image in the motion line. width/height default to 832x480 in steps of 16; video_length defaults to 81, up to 161, in steps of 4 - that step matches the Wan VAE's roughly 4x temporal compression, which is why valid lengths land on a 4n+1 grid (81, 121, 161) rather than any arbitrary number.
is_image flips this from video generation to a single still frame. Wan's stills are genuinely strong - the community's read is that training on video gives the model a better handle on 3D space and physical plausibility than image-only models get, and Wan 2.2's still-image quality specifically got a real bump over 2.1. If you just want a high-quality image and happen to have this pipeline loaded, it's not a bad way to get one.
Sampling and speed settings
steps defaults to 50, cfg to 6, scheduler is fixed to Flow (Wan is a flow-matching model, no real alternative on offer). TeaCache (enable_teacache, teacache_threshold, num_skip_start_steps, teacache_offload) trades some speed for quality - the specific cost people report most is softer face consistency, so disable it for close-up or portrait-heavy generations and keep it on for wide shots and B-roll where it barely shows. num_skip_start_steps (default 5) protects the earliest, structure-setting steps from being cached over. cfg_skip_ratio skips computing the negative-prompt branch on some steps for extra speed, at some cost to prompt adherence - a knob worth trying if you're already squeezed on time.
riflex_k (optional) hooks into RIFLEx for pushing past the native frame ceiling. Don't expect much: community testing on Wan 2.2 specifically turned up plenty of "no difference" reports, with the best odds on simple, repeating motion where the subject stays in frame the whole time.
Output is images, your generated clip (or still, if is_image is set) as a frame batch.
Installing VideoX-Fun
ComfyUI Manager: search "VideoX-Fun". Manual: cd ComfyUI/custom_nodes && git clone https://github.com/aigc-apps/VideoX-Fun, restart. Wan2.2-Fun-A14B-InP is a 64GB download; Wan2.2-Fun-5B-InP is 23GB and the more realistic option if you're not on serious hardware. Both go under ComfyUI/models/Fun_Models/ as full diffusers folders.
Common issues
Loading a base Wan 2.2 checkpoint here instead of a Fun one (or vice versa on Wan2_2T2VSampler) won't necessarily error, but you're not getting what the checkpoint was actually trained for - double-check the model name matches the node. Past that, the standard pack-wide issues apply: OOM on the 14B-class A14B model without the right GPU_memory_mode set back at LoadWanModel, and frame counts that don't land on the 4n+1 grid.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| funmodels | FunModels | — | |
| prompt | STRING_PROMPT | — | |
| negative_prompt | STRING_PROMPT | — | |
| video_length | INT | 815–161 | — |
| width | INT | 83264–2048 | — |
| height | INT | 48064–2048 | — |
| is_image | COMBO | false | 2 options: false, true |
| seed | INT | 430–18446744073709550000 | — |
| steps | INT | 501–200 | — |
| cfg | FLOAT | 6.001–20 | — |
| scheduler | COMBO | Flow | 1 options: Flow |
| teacache_threshold | FLOAT | 0.1000–1 | — |
| enable_teacache | COMBO | true | 2 options: false, true |
| num_skip_start_steps | INT | 50–50 | — |
| teacache_offload | COMBO | true | 2 options: false, true |
| cfg_skip_ratio | FLOAT | 0.000–1 | — |
| riflex_kopt | RIFLEXT_ARGS | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |