Model compatibility check
2025-06-2915 turns9,001 charsgpt-4o
Summary
User verifying model compatibility for text-to-video generation and selecting appropriate model variants.
Messages
Double-check that all your loaded models (wan2.1_2v_720p_14B_fp8_e4m3fn.safetensors, c_umt5_xxl_fp8_e4m3fn_scaled.safetensors, vae_hunyuan_video_vae_bf16.safetensors) are compatible with each other and specifically intended for video generation with the architecture you're using (which seems to be based on Stability Diffusion given "Model/SamplingSD3" and "KSampler").
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
⚙ model reasoning step
gpt-4o
Below is a quick‐check checklist you can run through before you queue another job.
(The file names in **bold** are the ones you said you have on disk.)
---
### 1. Are the three checkpoints drawn from the *same* video-model family?
| File | Belongs to | What it is |
|------|------------|------------|
| **wan2.1_i2v_720p_14B_fp8_e4m3fn.safetensors**<br>(16 GB) | **Wan 2.1** | 14 B *image-to-video* diffusion backbone trained for 720 p output citeturn0search0 |
| **c_umt5_xxl_fp8_e4m3fn_scaled.safetensors**<br>(6.7 GB) | **Wan 2.1** | UMT-5 XXL text encoder that pairs with *all* Wan 2.1 variants citeturn0search1 |
| **hunyuan_video_vae_bf16.safetensors**<br>(493 MB) | **HunyuanVideo** | 3-D VAE trained by Tencent for the Hunyuan family citeturn0search2 |
The first two files are a matched pair; the third comes from a *different* project.
Wan 2.1 ships with its own 2-D VAE (`wan_2.1_vae.safetensors`, 254 MB) and that is what the official ComfyUI workflows load by default citeturn8view0turn9search0.
**Mixing the Hunyuan VAE with Wan 2.1 usually works (the latent shapes match) but costs ~2-3× more VRAM and decode time and can shift colour balance**. If you see any of:
* brown/green colour casts
* very soft details / ringing
* VAE-Decode-Tiled node taking >50 s per frame
…switch to the native Wan VAE or to a lightweight replacement such as TAEHV’s Wan preset citeturn10search4.
---
### 2. Is your sampler/video pipeline expecting a **video** latent grid?
ComfyUI’s generic **KSampler** node is image-centric; for Wan 2.1 you should be using either
* `WanVideoKSampler` (community node) or
* the built-in “Wan 2.1” example workflow (which connects `Model/SamplingSD3` → `KSampler` → `Decode Video`)
Both variants ensure that the sampler runs **3-D denoising** and that the latent shape stays `(B, F, C, H, W)` instead of flattening the time dimension citeturn11search3. A plain KSampler will silently drop the extra frames and you end up with a single still image.
---
### 3. Do your *precision* and *hardware* line up?
* `fp8_e4m3fn` checkpoints **require** NVIDIA Hopper (H100/H200) or Ada‐Lovelace cards with CUDA 12 + torch-compile. If you are on a consumer 30-series or earlier, convert (or download) the **fp16** or **bf16** versions instead; they’re drop-in replacements citeturn8view0.
* Mixed precisions work fine as long as everything is ≥ the VAE precision. Example: fp8 diffusion + fp8 text encoder + bf16 VAE is OK; fp16 diffusion + fp8 VAE will crash.
---
### 4. Quick code probe (optional)
```python
from safetensors.torch import load_file
for f in ["wan2.1_i2v_720p_14B_fp8_e4m3fn.safetensors",
"c_umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan_2.1_vae.safetensors"]:
W = load_file(f, device="cpu", safe_metadata_only=True)
print(f, W.metadata["__class__"])
```
*All three should report a `"transformer"`-based class for the first two and `"AutoencoderKL"` (or similar) for the VAE.
If the VAE reports `"Hunyuan3DVAE"` you’ve still got the Hunyuan file on the path.*
---
### What to do right now
1. **Download / swap in the native Wan VAE** (`wan_2.1_vae.safetensors`) and point your *Load VAE* node to it.
2. Update to the latest ComfyUI nightly (≥ 2025-05-20) so the bundled Wan example flows appear under *Examples → Video → Wan 2.1*.
3. If you must stay FP8, confirm your driver is CUDA 12.4+ and `torch-compile --mode=max-autotune` is enabled; otherwise pick the `*_fp16.safetensors` variants.
4. Use a Wan-aware sampler node (or the reference workflow) rather than a plain KSampler.
Once those four boxes are ticked, all three checkpoints will line up with the SD3-style video architecture and you should be able to render 720 p clips without shape or precision errors.
gpt-4o
pick the *_fp16.safetensors variants.
Here's how to proceed if you're switching to the `*_fp16.safetensors` versions of the Wan 2.1 video generation model:
---
### ✅ Recommended File Set (FP16 versions):
| **Component** | **File Name** | **Size** | **Required?** |
|---------------|----------------|----------|----------------|
| Diffusion backbone | `wan2.1_i2v_720p_14B_fp16.safetensors` | ~26 GB | ✅ Required |
| Text encoder | `c_umt5_xxl_fp16_scaled.safetensors` | ~11 GB | ✅ Required |
| VAE (official) | `wan_2.1_vae.safetensors` | ~254 MB | ✅ Required |
| VAE (alt option) | `taehv_vae_720p_wa.safetensors` | ~110 MB | Optional (smaller, faster) |
---
### 🔧 Where to get them
You can usually find these on:
- [CivitAI](https://civitai.com/models/)—search for `wan2.1_i2v_fp16`
- [Hugging Face](https://huggingface.co/)—e.g., [`ali-vilab/Wan2.1`](https://huggingface.co/ali-vilab/wan2.1)
- GitHub releases from authors like Ali-VILab, TencentARC, or community repackers
Make sure you're **not downloading the `bf16` or `fp8` versions** by mistake.
---
### 🛠️ In ComfyUI
Once downloaded:
1. **Move files into your `models/checkpoints/` and `models/vae/` directories.**
2. **In your ComfyUI flow:**
- Use a **`Load Checkpoint`** node pointing to `wan2.1_i2v_720p_14B_fp16.safetensors`
- Use a **`Load Text Encoder`** or `Load CLIP` (if Wan2.1 flow expects it) for `c_umt5_xxl_fp16_scaled.safetensors`
- Use a **`Load VAE`** node for `wan_2.1_vae.safetensors`
3. Make sure you use a **Wan-compatible sampler**, e.g. `ModelSamplingSD3` → `KSamplerAdvanced` → `DecodeVideo`
---
### 🧠 Why FP16?
The `fp16` versions are:
- Compatible with most GPUs (RTX 3060/3070/3080/3090, A6000, etc.)
- Much more stable than `fp8` which requires Hopper GPUs or complex optimization
- Still VRAM-efficient and performant for batch rendering
---
### 🚨 Caution
- If you're mixing with other models (like SDXL or AnimateDiff), make sure the samplers and VAEs are not clashing.
- Do **not** use the original Hunyuan 3D VAE unless you're working with a Hunyuan-trained video model. It's incompatible with Wan-style latent shapes in subtle ways.
---
Let me know your GPU specs if you’d like an optimized setup (e.g., max resolution per frame, batch size, etc.).
gpt-4o
no I want to do t2v
Perfect — if you're aiming for **text-to-video (T2V)** with **Wan 2.1** at **FP16 precision**, here's the full setup you need to run it properly in **ComfyUI** (or similar SD3-compatible architecture).
---
## ✅ Components You Need (All FP16 T2V-Compatible)
| Component | File | Notes |
|----------|------|-------|
| 🎥 **Video diffusion model** | `wan2.1_t2v_720p_14B_fp16.safetensors` | The *T2V-specific* 720p version of Wan 2.1 in FP16 precision (NOT `i2v`) |
| 🧠 **Text encoder** | `c_umt5_xxl_fp16_scaled.safetensors` | Paired with all Wan 2.1 T2V variants (UMT5-XXL) |
| 🌀 **VAE** | `wan_2.1_vae.safetensors` | Use the official VAE for Wan (2D, fast, color-accurate) |
| 🛠️ Optional VAE | `taehv_vae_720p_wa.safetensors` | Optional lighter alternative (faster, slightly less fidelity) |
---
### ❌ Do NOT use:
- `wan2.1_i2v_720p_14B_fp16.safetensors` ← this is for *image-to-video*, not text-to-video
- Hunyuan VAE (`hunyuan_video_vae_bf16.safetensors`) ← mismatched latent format
- `fp8` versions unless you’re on Hopper GPUs (H100, L40S, etc.)
---
## 🧩 Architecture Flow in ComfyUI (T2V)
If you're using a ComfyUI workflow, the high-level flow looks like:
```
1. Load Text Prompt
↓
2. Load Checkpoint (`wan2.1_t2v_720p_14B_fp16.safetensors`)
↓
3. Load UMT5 XXL Text Encoder (`c_umt5_xxl_fp16_scaled.safetensors`)
↓
4. KSampler / Wan-Specific Sampler (with temporal denoising)
↓
5. Decode latent → RGB using `wan_2.1_vae.safetensors`
↓
6. Save Video / Preview
```
Make sure your sampler **preserves the time dimension (F)** — Wan uses 3D latents of shape `(B, F, C, H, W)`.
---
## 🔌 Download Sources
- **Hugging Face**: [`ali-vilab/Wan2.1`](https://huggingface.co/ali-vilab/wan2.1)
- **CivitAI**: search `wan2.1_t2v_fp16`
- Or use model indexers like [civitai.com](https://civitai.com), [modelscope.cn](https://modelscope.cn), or direct links from GitHub releases (e.g., `WanT2VLoader`)
---
## 🚀 Pro Tips for Better Results
- Stick to **720p (1280×720)** for full support. You can upscale later.
- Use **prompt + negative prompt** to guide coherence.
- Try **10–16 frames** per sample to keep VRAM under control unless you're on 24+ GB cards.
- If using ComfyUI, grab the [official Wan 2.1 T2V example](https://github.com/comfyanonymous/ComfyUI_experiments) from the *Examples → Video → Wan 2.1 Text-to-Video* section in the nightly release (post-May 2024).
---
Want a pre-built `.json` ComfyUI workflow file for T2V with these settings? Or a guide to optimize for your GPU? Just ask.
gpt-4o