“老板只给我一张证件照,却想要 5 秒 4K 短片,还要换场景、换表情、换机位,渲染预算 0 元。”
如果你也被这样折磨过,下面这段魔法值得逐帧拆解。
故事开场:当“脸”成为最昂贵的变量
过去两年,AI 视频把“ prompt 出片”卷到飞起,却迟迟搞不定一张人脸——
-
DreamBooth 派:微调 10 GB 权重,脸是保住了,动作却像 PPT; -
逐帧重绘派:GPU 烧到 90 ℃,嘴角还在抽风; -
拼贴派:干脆把原图背景一抠,换个滤镜当“新片”,结果一动就穿帮。
Lynx 的做法是:底座不动,外挂两张“小抄”——ID-Adapter 记五官,Ref-Adapter 记皮肤纹理,全程不碰原始权重,却能让主角在东京雨夜到撒哈拉黄昏无缝转场,还不掉帧。
一、模型架构:14 B 底座 + 2.8 %“外挂”
模块 | 作用 | 参数量 | 是否训练 |
---|---|---|---|
Wan2.1-DiT 14 B | 时空双注意力,出片+出动作 | 14 B | ❌ 冻结 |
ID-Adapter | 把 512-d 人脸向量压缩成 16 个身份 Token | 180 M | ✅ |
Ref-Adapter | 把参考图 VAE 特征逐层送回网络 | 220 M | ✅ |
核心公式一句话:
“冻结的底座保证通用运动,可插拔的 Adapter 只负责让脸不被撞变形。”
图:双 Adapter 并行插入每一层 DiT Block,交叉注意力与文本 Token 平级对待
二、身份 Token 的诞生:ArcFace → Perceiver Resampler
-
证件照过 ArcFace,拿 512-d 向量; -
Resampler(也就是 Q-Former)用 16 个可学 Query 做交叉注意力,输出 16×5120 矩阵; -
再拼 16 个“寄存器 Token”防止过拟合; -
最终 32×5120 向量与视频 Patch 一起做 Cross-Attention。
为什么要压缩?
Transformer 的 Cross-Attention 复杂度是 O(L×N)
,L 越小越省显存。16 个 Token 就能把 50 万像素的脸部语义塞进每一帧,推理时只增加 4 % 延迟。
三、Ref-Adapter:把“毛孔”也搬上屏幕
ID-Adapter 负责“长得像”,Ref-Adapter 负责“质感一样”:
-
参考图先过 VAE Encoder,拿到 8× downsample 的 latent; -
把 latent 喂给冻结的 DiT 副本(噪声=0,文本=“face”),抽取每一层特征图; -
主分支在对应层做 Cross-Attention,像素级对齐痣、胡茬、高光。
好处:不用像素空间的高分辨率图,全程在 latent 完成,显存占用只有图像方案的 1/4。
四、训练流水线:先学会“像”,再学会“动”
阶段 | 数据规模 | 目标 | 关键配置 |
---|---|---|---|
① 图像预训练 | 21.5 M 图 | 让脸可识别 | 40 k iters,lr=1e-4,batch=2048 |
② 视频微调 | 28.7 M 视频 | 让头能动 | 60 k iters,lr=5e-5,batch=1024 |
③ 数据增强 | 50 M 对 | 防过拟合 | X-Nemo 换表情 + LBM 换光照 |
NaViT 打包:把不同分辨率、不同帧数的视频拼成一条“长序列”,用 3D-RoPE 给每段视频独立位置编码,训练时 0 填充、0 裁剪,推理却支持任意宽高比。
五、30 分钟上手:从安装到出片
1. 环境
conda create -n lynx python=3.10 -y && conda activate lynx
pip install -r requirements.txt
pip install flash_attn==2.7.4.post1 # 显存省 30 %
2. 拉模型
# 底座
git lfs install
git clone https://huggingface.co/Wan-AI/Wan2.1-T2V-14B-Diffusers models/Wan2.1-T2V-14B-Diffusers
# Lynx 外挂
git clone https://huggingface.co/ByteDance/lynx models/lynx_full
3. 一行出片
python infer.py \
--subject_image me.png \
--prompt "我在暴雨中的夜市烤鱿鱼,烟雾缭绕,镜头从特写拉到全身" \
--seed 42 \
--out_len 121 # 5 秒 24 fps
RTX 4090 上 12 GB 显存即可,2 分钟 5 秒 720 p 视频到手。
六、常见问题解答
Q:证件照角度很偏,还能用吗?
A:ArcFace 支持俯仰 45°、水平 60°,但侧脸超过 90° 会掉精度,建议正脸或轻微侧脸。
Q:能否一次生成多人?
A:目前仅支持单 ID;官方 Roadmap 透露 2025 Q4 会放多 ID 分支,已内部跑通。
Q:商用授权怎么算?
A:模型权重 Apache 2.0,可商用;但人脸原图需确保获得肖像权,字节不提供法律兜底。
Q:显存实在不够?
A:用 lynx_lite
版,去掉 Ref-Adapter,6 GB 可跑 24 fps,身份精度下降约 6 %,仍优于 SkyReels-A2。
七、写在最后:当“脸”不再是瓶颈
Lynx 把个性化视频生成从“重训练”变成“即插即用”,让创作者把注意力放回故事本身——而不是显卡温度。
下一步,等音频口型、多 ID 互动、实时推理的蒸馏版就位,AI 短片或许真的迎来“单人制片厂”时代。
所以,下次老板再甩来一张证件照,你可以淡定地回复:
“给我一句 prompt,两分钟出片,特效管够。”