Models · family · ← Video generation

Wan

5 aliases · Wan 2.1 / 2.2. Alibaba's open-weights video line through the mlx-video-with-audio runtime. Start with rapid-mlx serve wan2.2-ti2v-5b-q8 on a 32 GB Mac. Output is video-only.

Four converted Wan 2.2 checkpoints and the Wan 2.1 T2V 1.3B Diffusers checkpoint are registered. wan2.2-ti2v-5b-q8 (~19.6 GB) is the smallest Wan download, and TI2V means it does both text-to-video and image-to-video from one checkpoint.

The backend reads each checkpoint's native frame rate rather than accepting an arbitrary one (16 fps for Wan 2.1, 24 fps for Wan 2.2), enforces Wan's 4n+1 temporal shape, and honours the checkpoint's pixel-area ceiling — violations come back as a 400 naming the constraint, not a failure deep in the pipeline. A locally converted Wan 2.1 or 2.2 checkpoint can override the selected alias with RAPID_MLX_WAN_MODEL_DIR.

family
Wan (Alibaba)
aliases
5
audio
none — video-only
install
pip install rapid-mlx==0.16.0
also needs
ffmpeg · Python 3.11+
OpenAI base URL
http://localhost:8000/v1

Download

Every alias on this page downloads with one command — the pull buttons in the tables below copy it. 1 of the 5 aliases on this page is mirrored on the rapid-mlx CDN; the rest pull from Hugging Face directly. Weights land in the standard Hugging Face cache, and rapid-mlx serve pulls automatically on first use. Live mirror status →

Usage

rapid-mlx serve wan2.2-ti2v-5b-q8

# Text-to-video at the checkpoint's native 24 fps
curl http://127.0.0.1:8000/v1/videos \
  -F model=wan2.2-ti2v-5b-q8 \
  -F 'prompt=a fox running through fresh snow, cinematic tracking shot' \
  -F seconds=1 \
  -F size=832x512 \
  -F seed=42

# Image-to-video: add a conditioning first frame
#   -F input_reference=@start.png

Aliases

aliashf repomin RAMnotesget it
wan2.2-ti2v-5b-q8Anes1032/Wan2.2-TI2V-5B-mlx-q832 GBThe starting point. Text-to-video and image-to-video, 5B, 8-bit (~19.6 GB). Video-only.CDN
wan2.2-ti2v-5b-bf16rickylin20260522/Wan2.2-TI2V-5B-mlx40 GBSame checkpoint unquantized (~24.2 GB).HF
wan2.2-i2v-a14b-q8Anes1032/Wan2.2-I2V-A14B-mlx-q864 GBImage-to-video only, 14B MoE, 8-bit (~42.7 GB).HF
wan2.2-t2v-a14b-bf16rickylin20260522/Wan2.2-T2V-A14B-mlx96 GBText-to-video only, 14B MoE, unquantized (~69 GB). Ultra territory.HF
wan2.1-t2v-1.3b-bf16Wan-AI/Wan2.1-T2V-1.3B-Diffusers40 GBWan 2.1 text-to-video, 1.3B, the official Diffusers checkpoint (~28.9 GB), 16 fps.HF

Process-level tuning

Steps, scheduler and VAE tiling are set through environment variables:

RAPID_MLX_WAN_STEPS=8 \
RAPID_MLX_WAN_SCHEDULER=unipc \
RAPID_MLX_WAN_TILING=auto \
rapid-mlx serve wan2.2-ti2v-5b-q8

LoRAs load through RAPID_MLX_WAN_LORA as path[:strength] entries; dual-model checkpoints additionally accept RAPID_MLX_WAN_LORA_HIGH and RAPID_MLX_WAN_LORA_LOW.

Frequently asked questions

Does Wan 2.2 run locally on a Mac?

Yes — four MLX-converted Wan 2.2 checkpoints and the Wan 2.1 T2V 1.3B checkpoint serve through POST /v1/videos, entirely on Apple Silicon. wan2.2-ti2v-5b-q8 is the starting point and does both text-to-video and image-to-video. Output is video-only.

How much RAM do the Wan checkpoints need?

32 GB for TI2V 5B q8, 40 GB unquantized, 40 GB for Wan 2.1 T2V 1.3B, 64 GB for I2V 14B MoE q8, 96 GB for T2V 14B MoE bf16.

Why can't I set fps on Wan?

The backend uses each checkpoint's native rate — 16 fps (2.1) or 24 fps (2.2) — and rejects an arbitrary one rather than resampling badly.

External reading

Where next