FramePack-F1 是一个 FramePack 模型,它只从历史帧中预测未来的帧。
F1 表示“向前”版本 1,表示其预测方向(它估计向前,而不是向后估计)。
此单向模型比双向默认模型受到的约束更少。
更大的差异和更多的动态将可见。
FramePack 是一种用于逐步生成视频的下一帧(下一帧部分)预测神经网络结构。FramePack 将输入上下文压缩到固定长度,以便生成工作量与视频长度无关。即使在笔记本电脑 GPU 上,FramePack 也能用 13B 模型处理非常多的帧。FramePack 可以用比图像扩散训练更大的批处理大小进行训练。
由于是逐帧(或逐段)预测,您将直接看到生成的帧,因此在整个视频生成之前,您会获得大量的视觉反馈。
二、部署流程
python:3.10(建议使用conda创建虚拟环境)
环境 | 版本 |
---|---|
Python | =3.10 |
Ubtuntu | =22.4.0 |
CUDA | =12.6 |
1.创建虚拟环境
1.1 安装 Miniconda
步骤 1:更新系统
首先,更新您的系统软件包:
sudo apt update
sudo apt upgrade -y
步骤 2:下载 Miniconda 安装脚本
访问 Miniconda 的官方网站或使用以下命令直接下载最新版本的安装脚本(以 Python 3 为例):
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
步骤 3:验证安装脚本的完整性(可选)
下载 SHA256 校验和文件并验证安装包的完整性:
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh.sha256
sha256sum Miniconda3-latest-Linux-x86_64.sh
比较输出的校验和与.sha256 文件中的值是否一致,确保文件未被篡改。
步骤 4:运行安装脚本
为安装脚本添加执行权限:
chmod +x Miniconda3-latest-Linux-x86_64.sh
运行安装脚本:
./Miniconda3-latest-Linux-x86_64.sh
步骤 5:按照提示完成安装
安装过程中,您需要:
阅读许可协议 :按 Enter 键逐页阅读,或者按 Q 退出阅读。
接受许可协议 :输入 yes 并按 Enter。
选择安装路径 :默认路径为/home/您的用户名/miniconda3,直接按 Enter 即可,或输入自定义路径。
是否初始化 Miniconda :输入 yes 将 Miniconda 添加到您的 PATH 环境变量中。
步骤 6:激活 Miniconda 环境
安装完成后,使环境变量生效:
source ~/.bashrc
步骤 7:验证安装是否成功
检查 conda 版本:
conda --version
步骤 8:更新 conda(推荐)
为了获得最新功能和修复,更新 conda:
conda update conda
1.2.创建虚拟环境
conda create -n FramePack python=3.10
2.下载 PyTorch
#进入虚拟环境
conda activate FramePack
#下载pytorch,根据自己的cuda选择对应的torch版本,我这里是cuda-12.6
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
3.克隆项目
git clone https://github.com/lllyasviel/FramePack.git
cd FramePack
2.安装项目所需依赖
pip install -r requirements.txt
三、启动
当全部依赖安装好后,进入/FramePack路径,启动命令为:
python demo_gradio_f1.py
项目所需的模型会在第一次启动时自动下载,请保持网络畅通(需保证网络能正常连接hugging face、github等网站)
下载完整后访问项目给出的提示连接即可,例如:127.0.0.1:8080
该项目支持 PyTorch 注意力机制、xformers、flash-attn、sage-attention。默认情况下,它将仅使用 PyTorch 注意力机制。如果你知道如何安装,可以安装这些注意力内核。
例如,要在 Linux 上安装 sage-attention:
pip install sageattention==1.0.6
不过,强烈建议先尝试不使用 sage-attention,因为它会影响结果,虽然影响很小。