FramePack:实现单图一次性生成 60 秒视频

AI 视频生成一直面临着计算资源需求高、生成长视频时会造成质量衰减的问题。斯坦福大学研究者 Lvmin Zhang 和 Maneesh Agrawala 提出了一个解决以上问题的新方法:FramePack。

FramePack 的核心思想在于重新思考如何处理输入帧的上下文。传统的 “下一帧” 预测模型在处理多帧输入时通常需要消耗大量 GPU 算力。而 FramePack 通过为每个输入帧分配不同的重要性,并据此调整其对 GPU 算力的占用,实现了更高效的资源利用。

具体来说,FramePack 对不同帧应用不同的 "patchifying kernel",使得更重要的帧(比如最接近预测目标的帧)获得更多的上下文长度,而较远的帧则被更高效地压缩。这种方法使得计算复杂度保持在 “O(1)” 常数级别,非常适合流式处理。

更令人惊喜的是,FramePack 还提供了灵活的调度机制。研究者设计了多种压缩模式,可以根据具体需求调整各帧的重要性分配。例如,对于图像转视频的任务,可以让起始帧获得同等的高重要性,以保证生成质量。

除了解决资源问题,论文还着重解决了视频生成中的 "漂移" 问题。漂移指的是随着视频时长增加,画面质量逐渐下降的现象。研究者发现,要从根本上解决漂移,需要打破因果性,采用双向采样。论文提出了 "反漂移采样" 和 "反转反漂移采样" 两种方法,后者特别适合图像到视频的生成场景,因为它在所有推理过程中都将第一帧作为近似目标。

而 FramePack 的效果相当显著,它能够使用 6GB 显存的笔记本 GPU,就能运行 13B 参数的模型生成 30fps 的视频。个人级别的 RTX 4090 显卡可以达到 1.5-2.5 秒每帧的生成速度。在单个 8×A100/H100 节点上,可以以 64 的批次大小微调 13B 视频模型。

以下8个演示视频展示了 FramePack 可以轻松生成 5 秒甚至 60 秒的高质量视频,每秒 30 帧,可一次性生成 1800 帧长度的视频,这在以往是难以想象的。

这项技术的意义不仅在于降低了视频生成的门槛,更重要的是为研究人员和创作者提供了更实用的工具,使他们能够在普通硬件上进行视频生成实验。随着 FramePack 的开源,我们可以期待看到更多创新的视频生成应用涌现。

示例视频

FramePack 项目地址:https://lllyasviel.github.io/frame_pack_gitpage/
FramePack 论文地址:https://arxiv.org/abs/2504.12626