🦊Wan2.1
🏠 | 🦊雑に学ぶComfyUI
👈 | 🦊LTX-Video
👉 | 🦊Wan2.1_VACE
Wan2.1はアリババが開発・オープンソース化した動画生成モデルです
参考
https://docs.comfy.org/tutorials/video/wan/wan-video公式Doc
https://comfyanonymous.github.io/ComfyUI_examples/wan/公式workflow
推奨設定値
解像度
Wan2.1-T2V-14B : 480P/720P 
Wan2.1-T2V-1.3B : 480P(720Pも生成できるが学習データが少ない)
最大フレーム数
81f (5秒 × 16fps + 1)
モデルのダウンロード
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/diffusion_modelswan2.1_t2v_(1.3B or 14B).safetensors
PCスペックに合わせて選ぶ
性能順 : fp16>bf16 > fp8_scaled > fp8_e4m3fn
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/text_encodersumt5_xxl (fp16 or fp8).safetensors
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/vae/wan_2.1_vae.safetensorswan_2.1_vae.safetensors
code:model
📂ComfyUI/
└──📂models/
├── 📂diffusion_models/
│ └── wan2.1_t2v_(1.3B or 14B).safetensors
├── 📂text_encoders/
│ └── umt5_xxl (fp16 or fp8).safetensors
└── 📂vae/
└── wan_2.1_vae.safetensors
text2video
https://gyazo.com/8d830d2e2fc60c771ff35473081d4525
Wan2.1_text2video_14B.json
ModelSamplingSD3ノードのShiftの値を大きくするほど動画の変化が大きくなります
参考: https://replicate.com/blog/wan-21-parameter-sweep#what-is-shiftWan2.1 parameter sweep
【ちょっと脱線】生成動画の品質が上がるかもしれない技術達
https://gyazo.com/382faca5b4a827fe3ae6d8b462259391
Wan2.1_text2video_14B_imp.json
🟦SkipLayerGuidance
通常はDiTのすべての層に一括でCFGを適用しますが、それだと強くかかりすぎるため後半の層はCFGをオフにしてみようというものです
一般的に9,10層をスキップすると良い結果になるとされています
https://www.reddit.com/r/StableDiffusion/comments/1jac3wm/dramatically_enhance_the_quality_of_wan_21_using/?utm_source=chatgpt.comDramatically enhance the quality of Wan 2.1 using skip layer guidance
計算コストが少々上がります
🟦UNetTemporalAttentionMultiply
ChatGPT.iconUNet(Denoiser) の出力特徴マップに対し、別途計算した 時系列注意重み を乗算的に適用し、時間的一貫性を強化するためのものです
🤔🤤nomadoor.icon
🟦CFG-Zero*
CFGが逆に誤った方向に誘導することがあるため、序盤だけCFGを無効にします
計算コストは変わりません
https://gyazo.com/e590874c688541d13542a120b547b160https://gyazo.com/a8baeb7e7e64eceb27f4af7e1cab2cc6
なし / あり
image2video
モデルの追加ダウンロード
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/diffusion_modelswan2.1_i2v_(480p or 720p)_14B.safetensors
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/clip_vision/clip_vision_h.safetensorsclip_vision_h.safetensors
code:model
ComfyUI/
└── models/
├── clip_vision/
│ └── clip_vision_h.safetensors
└── diffusion_models/
└── wan2.1_i2v_(480p or 720p)_14B.safetensors
workflow
https://gyazo.com/52a23f58dae13df7fdecb65c670e534b
Wan2.1_image2video_14B.json
🟩適度にリサイズした画像をCLIP Vision EncodeノードとWanImageToVideoノードに入力
image2video (Anisora)
モデル (好きなのどうぞ)
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan2_1-Anisora-I2V-480P-14B_fp16.safetensorsWan2_1-Anisora-I2V-480P-14B_fp16.safetensors
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan2_1-Anisora-I2V-480P-14B_fp8_e4m3fn.safetensorsWan2_1-Anisora-I2V-480P-14B_fp8_e4m3fn.safetensors
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan2_1-Anisora-I2V-480P-14B_Q8_0.ggufWan2_1-Anisora-I2V-480P-14B_Q8_0.gguf
workflow
https://gyazo.com/13a1b8bae83fb49d61911b8fc9ce0abd
Wan2.1_AniSora_image2video_14B.json
FLF2V (generative interpolation)
モデルの追加ダウンロード
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/diffusion_modelswan2.1_flf2v_720p_14B_(fp16 or fp8).safetensors
$ ComfyUI/models/diffusion_models/wan2.1_flf2v_720p_14B_(fp16 or fp8).safetensors
workflow
https://gyazo.com/d437c38b1eb209c6b12122f196b0d300
Wan2.1_FLF2V_14B.json
🟨少しだけややこしいですが、二枚の画像を一度バッチにしてリサイズ→バッチから取り出して、それぞれ最初・最後のフレームとして🟩WanFirstLastFrameToVideoノードに入力します
GGUF
カスタムノード
https://github.com/city96/ComfyUI-GGUFComfyUI-GGUF
モデルのダウンロード
https://huggingface.co/collections/city96/gguf-image-model-quants-67199ef97bf1d9ca49033234city96's Collections
code:model
ComfyUI/
└── models/
└── unet/
└── Wan2.1-.gguf
workflow
https://gyazo.com/41664eeaeb78fc554cd780fe563b4551
Wan2.1_image2video_14B_gguf.json
image2video
🟪Load Diffusion Modelノードでモデル読み込み
CausVid LoRA
CausVidは蒸留したモデルで、4~6stepsと高速で生成できるようにするものです
こちらはそのLoRA版
モデルのダウンロード
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan21_CausVid_bidirect2_T2V_1_3B_lora_rank32.safetensorsWan21_CausVid_bidirect2_T2V_1_3B_lora_rank32.safetensors
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan21_CausVid_14B_T2V_lora_rank32.safetensorsWan21_CausVid_14B_T2V_lora_rank32.safetensors
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan21_CausVid_14B_T2V_lora_rank32_v1_5_no_first_block.safetensorsWan21_CausVid_14B_T2V_lora_rank32_v1_5_no_first_block.safetensors
https://huggingface.co/Kijai/WanVideo_comfy/blob/main/Wan21_CausVid_14B_T2V_lora_rank32_v2.safetensorsWan21_CausVid_14B_T2V_lora_rank32_v2.safetensors
https://gyazo.com/834efffca0c22e1ae91a9cf67388d077
Wan2.1_text2video_14B_CausVidLoRA.json
🟪LoRAモデルとしてCausVidを読み込み
生成される動画に動きが無くなったらstrengthを徐々に下げる
改良版のv1.5/v2がありますが、それぞれ上手く動作するパラメータが全然違うので使用にはご注意を
cf. CausVid#683d29150000000000744199
推奨step数は4 ~ 6 / CFGは1.0
teacacheのようなキャッシュを使うものやSkipLayerGuidance、CFG-Zero*といったレイヤーをいじる系とは併用できません
Self Forcing
リアルタイムで動画生成するための技術ですが、ComfyUIではCausVidと同様、数ステップ推論のために使います
https://gyazo.com/b1e8add7ed07ad2e9cdee74d37c411b0
Wan2.1_text2video_14B_Self-Forcing.json
NAG
CausVidもSelf ForcingもCFGを蒸留することで推論速度を上げています。それ故、CFGが1に固定、つまりNegative Promptが使えなくなります
NAGはCFGと同じ計算をCFGとは違う場所ですることで、蒸留したモデルであってもNegative Promptの動作を再現します
二倍まではいきませんが、推論時間は多少増えます
🪢ComfyUIカスタムノード
https://github.com/ChenDarYen/ComfyUI-NAGComfyUI-NAG
https://gyazo.com/4c012c03dba9d34914c077109fbfa529
Wan2.1_text2video_14B_Self-Forcing_NAG.json
🟩KSamplerをKSamplerWithNAGノードに変更
NAG関連のパラメータについては → ComfyUI-NAG#686118c10000000000a2b08b