美团开源了 LongCat-Video-Avatar 1.5,而它做的事,恰好就是 VisionStory 的核心——把一张静态照片 + 一段音频,变成口播虚拟人视频。这让我们好奇到决定亲自跑一遍。本文是一次动手拆解:它是什么、真实效果到底怎样、我们踩到的 5 个搭建坑,以及自己跑和用托管工具相比要付出多少成本。来源:github.com/meituan-longcat/LongCat-Video(MIT)。

LongCat-Video-Avatar 是什么?谁做的?

LongCat-Video-Avatar 1.5 是一款来自美团(LongCat 团队)的开源权重音频驱动真人视频模型。它基于 LongCat-Video 基座模型,并以宽松的MIT许可发布——商业用途也是真正免费。截至 2026-07,该代码仓库约有5,200 个 GitHub stars,而 1.5 权重也属于 Hugging Face 上近期更受欢迎的发布之一。

它原生支持 3 个任务:Audio + Text to Video(AT2V,无参考图)、Audio + Text + Image to Video(ATI2V——用参考照片来锁定身份,更贴近真实虚拟人工作流),以及视频续写(video continuation),用于把片段延长到不止一个段落。1.5 版本换用了 Whisper-Large 音频编码器,这也是它嘴型运动的来源。重要的是,它根据你提供的任意音频来驱动嘴型和表情——它不会生成或克隆音色。

我们真的跑了(单张 A800-40GB)

不打太极——我们在单张NVIDIA A800-SXM4-40GB(torch 2.8+cu128,driver 550)上跑完了全部 3 个任务,并使用模型的INT8 量化 + 8-step 蒸馏配置——这是把这种体量的视频扩散模型塞进 40 GB 显卡所必需的做法。下面是我们最真实的实测过程。

我们踩到的 5 个坑

  • 缺少人声分离依赖。音频流水线需要通过 audio-separator 调用 Kim_Vocal_2 模型,但默认依赖里没写——第一次运行直接挂了,直到执行 pip install audio-separator==0.30.2 才解决。
  • 视频写入器炸了。保存帧时出现 TiffWriter got an unexpected keyword argument fps,原因是 imageio 找不到 ffmpeg writer——通过 pip install imageio-ffmpeg==0.6.0 修复。
  • 多 GPU 死锁。把一个任务跨多张卡跑(context-parallel size 2 或 8)会卡在 NCCL collective 不同步——两个 rank 互相等到 600s 超时才中止。我们只能跑单卡。INT8 权重确实能塞进一张 40 GB 卡,所以多 GPU 只适合并行跑多个任务,而不是加速单个任务。
  • 第二段直接 OOM。长视频是靠一段接一段续写出来的,而续写步骤会常驻一个 48 层 KV-cache。在 40 GB 卡上,第二段峰值把显存顶爆并崩溃——大概就差 160 MiB 才能塞下。我们不得不暴露并启用 --offload_kv_cache(把 cache 挪到 CPU 内存,每步再分页回传),并设置 PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True。能跑通,但段落会更慢。
  • 分辨率对齐。在多卡并行下,480p 会触发高宽必须能被 64 整除的限制;单卡则不会。

速度与显存(实测)

这才是关键数字:一段82 秒的片段在 A800 上跑了3,586 秒——不到 1 小时——相当于每生成 1 秒成片,要 44 秒计算(26 个 segment,平均每段生成约 138s)。哪怕是 10 秒短片,也大概需要 7 分钟。而且这不是轻负载:显存在几秒内拉满,然后全程钉在 40,500 MiB——占 40 GB 显卡的 98.9%——直到渲染结束。下面是我们每秒采样一次的实际使用情况:

VRAM usage over an 82-second LongCat-Video-Avatar render, pinned near the 40 GB ceiling for the full hour

我们渲染的样例

以下每段片段都是我们在上文所述的 A800 上渲染完成的。为了在模型的目标使用场景下进行基准测试,我们使用该项目官方演示提供的输入(参考人像和音频)来驱动,而不是自行挑选素材 — 因此这些都是诚实、未经过精挑细选的输出,不是精华集锦。前两段片段各自由各自的参考照片驱动:

两张参考照片:用于“照片 + 音频”片段的独唱歌手,以及用于“多说话人”片段的双人录音室场景

左:用于“照片 + 音频”片段的参考图。右:用于“多说话人”片段的参考图(同一张图,两个人)。下面第 3 段片段在没有参考照片的情况下用文本 + 音频来驱动 — 人物由模型自行生成,这也是它表现最弱的地方。

照片 + 音频(ATI2V)——典型虚拟人流程。身份稳定,嘴型能跟上歌声。
多说话者——2 个人、2 条音轨,嘴型分别独立驱动。
仅文本 + 音频、无参考照片(AT2V)——弱项:注意脸部变形与漂移。

由 VisionStory 于 2026-07-15 在 NVIDIA A800 上使用 LongCat-Video-Avatar 1.5 渲染,分辨率为 480p 级(768×512 / 832×480),输入采用模型官方 demo 素材。

真实结论:有照片很强,没照片就比较拉

真正让我们惊喜的点:

  • 身份能稳住。在照片驱动的片段里,这个人在完整 82 秒里都保持是同一个人——发型、衣着、脸——同时嘴型能跟上音频。这才是虚拟人最关键的场景,而它做到了。
  • 多说话者确实能用。同一个画面里的 2 个人,各自被自己的音轨驱动嘴型,整体还能保持一致——这其实很难。
  • MIT + 可商用级。开源权重、无需按次渲染计费,短片输出质量也足够过关。

它掉链子的地方——而且都是真的:

  • 纯文本生成会漂。没有参考照片时,模型会“编”出一个人;片段一长,脸会逐渐扭曲成诡异、蜡像般的特写,场景也会飘——上面的第三个样例就能看到。
  • 又慢又重。每 1 秒视频约要 44 秒计算,全程把 40 GB 显卡钉死;82 秒成片就是 1 小时。
  • 40 GB 只是门槛。我们这次是 INT8 + 蒸馏才刚好塞下,多段视频还得把 KV-cache offload 到 CPU 才能活下来;更小的卡基本没戏。
  • 实际基本只能单卡。我们机器上的多 GPU context-parallel 会死锁,所以没什么简单办法“加卡就加速”来缩短单条视频时间。
  • 不含音色。它只会用你提供的音频来驱动嘴型——不做 文本转语音 也不做音色克隆,所以你仍需要单独的音频来源。
  • 就这硬件,也只能 480p。我们在单张 40 GB 显卡上能稳定跑的就是 480p 级输出。

自托管 LongCat vs 托管工具:该选哪个?

两者产出的东西是一样的——照片 + 音频变成口播视频。差别完全在于你为此要付出什么成本。像 VisionStory 这样的托管工具会替你跑模型;下面是最真实的取舍对比。

 LongCat(自托管)VisionStory(托管)
硬件40 GB 的 A100/A800(几千美元级)不需要——浏览器里就能跑
搭建CUDA、flash-attn、INT8、依赖修补、OOM 调参登录就能用
每条视频耗时每 1 秒视频约 44 秒计算(82 秒 ≈ 1 小时)托管 GPU 上,几秒出片
分辨率(我们的实测)480p 级高清视频及以上
音色你提供音频(无 TTS/克隆)内置音色与音色克隆
商用可以(MIT)可以(按方案)
维护你自己修依赖、处理 OOM、驱动问题不需要
最适合你有 GPU,且必须自托管/离线/本地部署你想要快速拿到成片的口播视频

选 LongCat 的情况:你有硬件,而且需求确实必须自托管——本地部署、离线,或完全由你掌控——并且你愿意维护一整套 CUDA 技术栈。选托管工具的情况:你想要同样的“照片 + 音频”口播视频,但不想付出 1 小时计算和一张五位数价格的 GPU。

LongCat 给我们的启示

跑完 LongCat-Video-Avatar 的真正结论是:开源的虚拟人视频质量已经到位了——只要有参考照片,这个免费模型就能生成足够“能上场”的片段。模型本身不再是最难的部分。

最难的是模型之外的一切:把视频扩散模型塞进你买得起的显卡、扛住第二段的 OOM、为 82 秒等上 1 小时、再给它配上音频。这道鸿沟——从一个能用的 checkpoint,到任何人都能做出来的成品口播视频——正是我们在解决的问题。如果你想看“另一边”长什么样,VisionStory 可以在浏览器里把一张照片和一段脚本,几秒变成口型同步的口播虚拟人;如果你也需要音频,我们对 开源 TTS 的拆解也更新了那半边目前的进展。

常见问题

  • 可以。LongCat-Video-Avatar 1.5 采用 MIT 许可证发布,允许商业用途,也不按每次渲染收费。你只需为它消耗的 GPU 算力付费。