【生成模型】【模型介绍】(一)视频生成Wan2.1速度质量简单评测

发布于:2025-06-28 ⋅ 阅读:(15) ⋅ 点赞:(0)

基础模型:FramePack

https://github.com/kijai/ComfyUI-FramePackWrapper

huggingface-cli download Comfy-Org/HunyuanVideo_repackaged --local-dir Comfy-Org/HunyuanVideo_repackaged --resume-download
huggingface-cli download Comfy-Org/sigclip_vision_384 --local-dir Comfy-Org/sigclip_vision_384 --resume-download
huggingface-cli download Kijai/HunyuanVideo_comfy --local-dir Kijai/HunyuanVideo_comfy --resume-download

基础模型:文生视频/图生视频

ComfyUI参考 | 提示词公式建议 | Wan试用

速度评测

  • 测试GPU: A100 40G * 1
  • 工具平台:ComfyUI
  • steps: 20
  • 帧数:52 + 1
  • 生成分辨率:480x856(=>480x848) / 720x1280
  • 评价中的显存数据,有的diffusion生成模型太大,clip与t5都被offload了,因此显得小
  • 总推理时间=(图片/文本encoder时间与生成推理时间及decode时间)+模型加载时间
  • 大致时间:480P 220s, 720P 720s,(720=220*3.27,Attention计算复杂度考虑为O(n^1.7),n变为2倍,计算量为原本的3.3倍);Kijai开TeaCache时间消耗变为85%~75%
类型 参考工作流 模型 生成分辨率 精度 版本 生成推理时间 总推理时间 评价
文生视频 workflow Wan 1.3B 480P bf16 Comfy 37s 44s + 45s 17G
~. workflow Wan 14B 480P bf16 Comfy 205s 210s + 100s 32G
~. workflow Wan 14B 480P fp8 Comfy 207s 215s + 90s 29.3G
~. workflow Wan 14B 720P bf16 Comfy 708s 722s+102s 37.5G
~. workflow Wan 14B 720P fp8 Kijai 475s 542s Kijai workflow可能需研究参数,质量较差
~. workflow Wan 14B 480P fp8 Kijai 143s 155s Kijai workflow可能需研究参数,质量较差
图生视频 workflow Wan 14B (480P) 480P fp8 Comfy 216s 运行时32.5G
~. workflow Wan 14B (480P) 480P bf16 Comfy 213s 220s+xs 运行时37G,offload频次较小,竖版生成质量差
~. workflow Wan 14B (720P) 720P bf16 Comfy 720s 753s+xs 显存>40G需反复offload
~. workflow Wan 14B (720P) 720P fp8 Comfy 720s 744s+xs 运行时显存29.5G(T5/CLIp被offload了)
~. workflow Wan 14B (720P) 720P fp8 Kijai 560s 596s+xs 运行时显存G(TeaCache) Kijai workflow可能需研究参数,质量较差
~. workflow Wan 14B (720P) 480P fp8 Kijai 187s 258s+90s 运行时显存14G(TeaCache) Kijai workflow可能需研究参数,质量较差
~. workflow Wan 14B (480) 480P fp8 Kijai 233s 319s+90s 运行时显存G(TeaCache) Kijai workflow可能需研究参数,质量较差

微调模型:Control / Inpainting

Wan2.1 有三种专门用途的微调版模型:

  • FLF
  • Fun Inpainting
  • Fun Control
  • Fun Camera Control

Fun系列模型:https://huggingface.co/alibaba-pai/Wan2.1-Fun-V1.1-14B-Control-Camera

Wan VACE将这三种能力统一到一个模型了:
Wan2.1 VACE
VACE模型除了支持基本的文本和图像作为控制条件输入,还支持将视频和视频mask作为输入控制。简单理解就是视频版本的ControlNet和Flux-Fill

  • video控制实现各种条件控制(参考comfyui_controlnet_aux),本质就是将图片上的控制移动到了视频上,并不是通过文本能修改视频的能力。
    • pose
    • edge(candy)
    • depth
    • 灰度图视频(上色任务)
    • layout
  • video mask控制实现时空inpaiting
    • 空间Inpainting:实现video inpainting,就是将输入视频,以及inpainting的mask作为输入控制实现的。
    • 时间Inpainting: 实现首尾帧视频生成,就是将首尾帧中间插入n-2帧黑帧构成输入输入视频,插入的黑帧构成mask区域作为mask输入,实现控制的。因此理论上,他是可以基于任意帧生成视频的。
    • 理论上上面两者是可以兼容的
    • 关于图生视频有两种方式,一种是参考上面的时间Inpainting通过输入视频控制,另一种是通过传入参考图控制;
  • 参考图控制
    • 可以和上面的video / video_mask的方式组合起来,为内容提供形象的参考。
    • 按论文的呈现,应该可是实现多主体参考,但是没有找到对应的工作流

测试设定:

  • 测试GPU: A100 40G * 1
  • 工具平台:ComfyUI
  • steps: 20 for VACE; 4 for Wan VACE CasVid lora
  • Wan VACE CasVid lora是step蒸馏后的一个lora模型,测试起来生成质量还是有点问题
  • 帧数:52 + 1
  • 分辨率:720P
  • 精度:bf16
模型/参考工作流 类型 生成推理时间 总推理时间 评价
首尾帧生视频(FLF) 首尾帧生视频(FLF) 366s 742s
Fun Inpainting Video Inpainting 965s 1015s
Fun Control video control 1011s 1174s
Fun Camera Control 相机运动控制 710s 948s
~ ~ ~ ~ ~
Wan VACE(step=20) 图生视频 982s 1017s
[Wan VACE CasVid lora(step=4)] 文生视频(T2V) 98s 176s +166s
Wan VACE CasVid lora(step=4) 参考图生视频(I2V) 94s 166s+166s
Wan VACE CasVid lora(step=4) 首尾帧生视频(FLF) 99s 166s+166s
Wan VACE CasVid lora(step=4) Video Inpainting/Outpainting 95s 166s+166s
Wan VACE CasVid lora(step=4) video control 95s 166s+166s
[Wan VACE CasVid lora(step=4)] 图生视频(多主体参考)

Wan2.1模型结构

基本结构

与图片生成的结构很像,VAE encode->Diffusion->VAE decode的形式,只是多了一个时间维度(T+1, H, W, C)

  • T+1是因为第一帧会单独处理,为了和图片输入的形式更兼容;
  • VAE将采样比例为4x8x8,通过多个2倍降采样的结构串联形成,C=16(和图片生成类似)
    基本结构图
def generate_text2video(wan, sample_scheduler, input_prompt, n_prompt="", guide_scale=5.0):
	F, H, W, = 81, 1280, 720 # F: frame_num
	vae_stride = (4, 8, 8) # (T, H, W)
	
	context = wan.text_encoder([input_prompt])
	context_null = wan.text_encoder([n_prompt])
	
	latents = torch.randn(vae.z_dim, (F - 1) // vae_stride[0] + 1, H // vae_stride[1], W // vae_stride[2])
	for _, t in enumerate(tqdm(timesteps)):
        latent_model_input = latents
        timestep = torch.stack([t])

		# CFG Infrence
		noise_pred_cond = wan.model(latents, t=timestep, **arg_c)[0]
		noise_pred_uncond = wan.model(latents, t=timestep, **arg_null)[0]
        noise_pred = noise_pred_uncond + guide_scale * (noise_pred_cond - noise_pred_uncond)

		# sheduler step
        temp_x0 = sample_scheduler.step(
        	noise_pred.unsqueeze(0), t, latents[0].unsqueeze(0), return_dict=False,
            generator=seed_g)[0]
       	latents = [temp_x0.squeeze(0)]
    return self.vae.decode(latents)[0]

model inference

scheduler

条件注入

参数含义

质量对比

  • 720P的模型也能生成480P的视频;480P的模型和720P的模型生成的480P视频那个效果更好?

LoRA使用与训练

加速策略

BiliBili
TeaCache
WaveSpeed
Nachaku

特定任务:运镜工作流

ATI

Runninghub | liblib | workflow

1) 安装

# base on Wan2.1-14B-480P
huggingface-cli download Kijai/WanVideo_comfy --local-dir Kijai/WanVideo_comfy --resume-download

# 使用最新版本的ComfyUI-WanVideoWrapper
cd custom_nodes/
git clone https://github.com/kijai/ComfyUI-WanVideoWrapper

2)使用

  • ATI在工作流中,通过Spline Editor 节点控制轨迹方案,可以使用多组Spline Editor 并通过Append Strings To List 将所有轨迹坐标合并一起,实现多种轨迹控制。
  • Spline Editor 节点使用,需要注意,可以通过数标右键菜单栏切换背景图,点击NewSpline新增轨迹线。 在轨迹线控制中,可以通过Shift + 鼠标左键配合点击线条形成轨迹曲线。 通过鼠标右键单击轨迹线删除轨迹点。
  • ATI配合CausVid加速,全程生成速度很快,大约5分钟左右。

Remade-AI/Rotate

youtube | lora站点remade showcase | huggingface | workflow

cd model_hub
huggingface-cli download Remade-AI/Rotate --local-dir Remade-AI/Rotate --resume-download
cd ../models/lora/
ln -s ../../model_hub/Remade-AI Remade
cd ../models/clip_vision/
ln -s ../../model_hub/Kijai/WanVideo_comfy/open-clip-xlm-roberta-large-vit-huge-14_visual_fp16.safetensors Kijai_open-clip-xlm-roberta-large-vit-huge-14_visual_fp16.safetensors

Fun Camera Control

workflow

ReCamMaster

workflow | RunningHub

# download Kijai/WanVideo_comfy
cd models/diffusion_models
ln -s ../../model_hub/Kijai/WanVideo_comfy/Wan2_1_kwai_recammaster_1_3B_step20000_bf16.safetensors
cd -

# download MiaoshouAI/Florence-2-large-PromptGen-v2.0: for image caption
huggingface-cli download MiaoshouAI/Florence-2-large-PromptGen-v2.0 --local-dir MiaoshouAI/Florence-2-large-PromptGen-v2.0 --resume-download
# https://github.com/miaoshouai/ComfyUI-Miaoshouai-Tagger
cd models/LLM
ln -s ../../model_hub/MiaoshouAI/Florence-2-large-PromptGen-v2.0/model.safetensors Florence-2-large-PromptGen-v2.0.safetensors

代码推理

git clone https://github.com/KwaiVGI/ReCamMaster
cd ReCamMaster

# DiffSynth-Studio: https://github.com/modelscope/DiffSynth-Studio
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | bash
. "$HOME/.cargo/env"
pip install -e .  # transformers==4.46.2

# Wan2.1 文生图预训练模型
ln -s ../../../model_hub/Wan-AI/ models/Wan-AI
# ReCamMaster-Wan2.1 
cd ../../model_hub/
huggingface-cli download KwaiVGI/ReCamMaster-Wan2.1 --local-dir KwaiVGI/ReCamMaster-Wan2.1 --resume-download
cd - && cd models/ReCamMaster/checkpoints/
ln -s ../../../../../model_hub/KwaiVGI/ReCamMaster-Wan2.1/step20000.ckpt

python inference_recammaster.py --cam_type 1
python inference_recammaster.py --cam_type 1 --dataset_path path/to/your/data

数据集

huggingface-cli download HuggingFaceH4/ultrachat_200k --repo-type dataset

网站公告

今日签到

点亮在社区的每一天
去签到