参数名称 | 说明 |
---|---|
model | 加载好的 FramePackTransformer 模型对象。 |
positive | 正向提示词的嵌入(如文本或图像引导)。 |
negative | 反向提示词的嵌入,用于去除不希望出现的内容。 |
image_embeds | 起始图像的视觉引导嵌入。 |
start_latent | 初始 latent 编码,通常来自图像或起始帧。 |
end_latent | 终止图像 latent,用于渐变过渡。 |
end_image_embeds | 终止图像嵌入。 |
initial_samples | 初始 latent 输入(视频 to 视频)。可用于视频重建或风格迁移。 |
FramePackSampler
输入参数
输出参数
参数名称 | 说明 |
---|---|
samples | 最终生成的视频 latent 编码序列。 |
控件参数
参数名称 | 说明 |
---|---|
steps | 采样步数,越高细节越多,推理时间越长。 |
use_teacache | 是否启用 TeaCache 加速机制。 |
teacache_rel_l1_thresh | TeaCache 相对 L1 阈值。控制跳帧保留策略,默认 0.15,一般无需修改。 |
cfg | 提示词引导系数。 |
guidance_scale | 图文双引导强度(如 StableDiffusion 中 CFG)。 |
shift | 动作偏移控制参数。控制镜头移动或视频动态感,常设为 0。 |
seed | 随机种子,用于复现生成结果。相同配置下种子一致将生成相同视频。 |
latent_window_size | 每段时间窗口的 latent 数量。 |
total_second_length | 视频总时长(秒)。 |
gpu_memory_preservation | GPU 显存保留容量(GB)。控制 Transformer 模型加载时预留显存,防 OOM。建议值:4~8。 |
sampler | 采样算法类型。unipc_bh1 速度快且平衡;unipc_bh2 收敛更稳定,适用于长视频。 |
embed_interpolation | 图像嵌入插值方式。 disabled 关闭插值; linear 分段线性过渡; weighted_average 基于权重混合。 |
start_embed_strength | 起始图像嵌入强度。仅当启用插值时生效。默认 1.0 表示全图像控制。 |
denoise_strength | 去噪强度,影响 v2v 模式稳定性。值越小越保留原始风格,默认 1.0。 |
teacache加速,teacache_rel_l1_thresh值越大,速度越快,但质量会有所降低
teacache_rel_l1_thresh是一个相对 L1 距离的阈值:
- 在每一步采样时,模型会判断当前输入和上一步缓存的差异(L1 loss)
- 如果差异 小于这个阈值,说明变化不大 ⇒ 可以直接用缓存跳过当前计算
- 阈值越大,就越容易满足“差异小”这个条件 ⇒ 跳得越多,速度越快
teacache_rel_l1_thresh=0.1
teacache_rel_l1_thresh=0.15
teacache_rel_l1_thresh=0.25
teacache_rel_l1_thresh值越大,速度更快了,左边teacache_rel_l1_thresh=0.1,中间0.15,右边0.25,0.1时还有眨眼的动作
teacache_rel_l1_thresh=0.1的细节更多,比如衣服的褶皱细节
左边guidance_scale=1,中间guidance_scale=5,右边guidance_scale=10。
- 高值:强制生成内容贴近 image_embeds 的视觉特征(如参考图风格),但可能降低动态多样性。
- 低值:允许更多随机性,适合创意性变化,但可能减弱帧间连贯性。
shift 控制的是“AI 要多自由地重新开始想象这个视频”。
- shift = 0:像导演严格照剧本拍,女孩从头自然跑,动作连贯。
- shift = 50:导演说“中段自由发挥一下”,结果视频像是从中间插入的一段。
- shift = 100:导演放飞了,AI 随便开场,结果女孩可能一开始发呆、闪现、乱动,全靠 AI 自编自导。
在这个场景中,左边(shift=0)和中间(shift=10)的画面中,女孩的奔跑依然保持从左到右的自然连贯感,动作顺畅,具备明显的时间推进逻辑。
但到了右边(shift=20),女孩的动作更像是在原地踏步,缺乏方向性的移动,整体时间感变得模糊。而背景中的海水细节也明显减少,原本有层次的波浪被简化成一条模糊的线条,视觉复杂度下降。
latent_window_size决定了在生成视频 latent(潜变量)时,每个时间帧可以“看到”前后多少帧的上下文信息。值越大,则可以提供更多时序上下文信息,提升视频的连贯性。左边latent_window_size=5,中间latent_window_size=9,右边latent_window_size=12,latent_window_size=5时可以明显的看出人物动作不连贯。
gpu_memory_preservation 用于预留一定的 GPU 内存,以确保有足够的内存来解码生成的视频。如果预留的内存越少,可以将更多的 GPU 内存分配给视频采样,从而减少采样时间。然而,预留内存过少可能导致解码时显存不足,从而引发错误。
gpu_memory_preservation =4
gpu_memory_preservation=6
unipc_bh1:使用简单的线性时间步长调整。 B_h = hh
unipc_bh2:使用指数增长的时间步长调整。 B_h = torch.expm1(hh)
如果目标是平稳、自然的过渡,unipc_bh1是更好的选择;如果需要更为复杂和动态的表现,unipc_bh2可能会带来更好的效果。