1000 步、约 11 美元租一夜,这个 LoRA 在 H3 上干成了「换人保场景」

最近在 Hugging Face 上刷到一个不太起眼、但挺有意思的东西:Akatz Labs 给 MiniMax 的 H3 视频模型训了一个 1000 步的角色替换 LoRA。H3 是 MiniMax 那边做视频生成、参考视频转动画那套(Ref2VA),这个 LoRA 干的事是「把指定视频里的某个人换成图里那个角色,同时尽可能保住原场景、背景和镜头」。说白了就是视频版换人,但方式不是抠像、不是重渲染,而是直接在生成链路里让模型自己把角色换掉。

先把它是个什么讲清楚。这是个 adapter(LoRA 适配器),不是独立模型,也不是 Turbo 蒸馏 LoRA,得挂在 H3 的 Ref2VA 运行时上,base 权重和 VAE 要自己另外拿。用法不复杂:把那个 .safetensors 丢进 ComfyUI/models/loras/(或你配置的共享 LoRA 目录),用兼容的 model-only LoRA loader 以 1.0 强度挂到 H3 上,源视频走 <Video 1>,参考图走 <Picture 1>,然后在提示词里点名要换谁。材料里给了整段示例提示词,要求只换那个紫衬衫的男人、保持参考图的身份/服装/画风、保住原视频的镜头背景光影和其他人。有个细节值得记一下:训练时用的字幕其实很短,就「把紫衬衫男人换成图里那个角色」这种一句话级别,后面那堆保真描述是作者自己加进去评估用的,效果也不稳,有的加狠了反而把整个替换抑制掉。所以提示词写得多好不保证严格对齐,文档里自己也没打包票。

让人来兴趣的是它的训练成本。训练只跑 1000 步,每 250 步存一版,单卡 RTX PRO 4500 Blackwell 32GB 的量级,LoRA rank/alpha 都是 16(adaln_proj 除外),AdamW8bit、学习率 5e-5、BF16,跑在 RunPod 上,作者估的一夜租机成本大概 11 美元。作者特意标注这不是实测的成本基准,就是自己估的,说话挺老实。背后数据集也很小:94 组合成的图片编辑三元组,加 40 个未改动的视频音频样本,优化阶段用了 76 个编辑和 32 个正则化片段,18 个编辑和 8 个片段留作验证。这不是拿长视频当训练目标,替换对象只是单个静止图片加五帧静态源视频控制,而且只监督单角色替换,多角色场景没被训练目标覆盖。

效果上它不算惊艳,但定位很清楚。作者的横向对比说,相比 base 模型,这个 LoRA 往往能把背景和场景保得更接近,但动作时间点、表情和硬切仍不可靠:长窗口会漂移,硬切可能被处理成推镜或缓移,特写表情对不上原表演,加表情提示词也不一定有用。还有个容易踩的坑:文档提到生成的音频在某些对比里更接近,但在续写测试里会跳过或漂移,后面展示的效果实际是拿原始源音频直接贴回生成视频上的——那是后处理,不是这个 LoRA 的音频保真能力,重封装也修不了口型漂移。它把这些限制全部列在文档里,没有吹成全能。

最后是许可证,这是想做商业化的人最容易栽跟头的地方。这个 adapter 走的是 MiniMax H3 Community License Agreement,不是 Apache-2.0,可接受用途、分发、商用和地域条款都归它管,而且标准地域授权明确排除了美国、欧盟、英国和韩国,要另走单独授权。作者也压了一句:别指望这个 repo 帮你扩展条款,上游完整条款得自己读。倒是它单独发的那个数据集用的是 Apache-2.0(仅限 Akatz Labs 自己的贡献部分),同时保留上游 VidGen 的来源与许可证。真拿去做产品,模型和数据集的授权得分开算清楚。

这玩意儿上个月下载量过了一万,还有 9 个 Space 在用,说明确实有人拿它试活儿。我的用法是先丢进 ComfyUI 跑一条四五秒的短连续镜头,别一上来就上 14 秒长片,看看背景保得住不、硬切到底会不会变成推镜。真要往产品里塞,先把 H3 社区许可的地域限制翻明白再说。它是真能干点活,但干的是「短窗口里换个角色、场景别崩」这种边角料的活,指望它做严格对口型的多角色长镜头,还是等作者下一轮实验——材料里也列了,后面打算做对齐的运动替换目标、显式硬切样本、表情监督和更长的序列。