accelerate>=1.6.0 diffusers>=0.33.1 transformers>=4.46.2 scipy>=1.12.0 torchsde>=0.2.6 einops safetensors

English | 中文版
这是一个为 ComfyUI 设计的自定义节点包,旨在通过分段采样(FramePack)的方式,利用 Hunyuan-DiT 类模型高效生成长视频。
https://github.com/user-attachments/assets/01f20678-64fb-4ae0-a9db-c8a15fc09e70
https://github.com/user-attachments/assets/d1d7b687-ae00-44eb-8ed7-02b426b32231
https://github.com/user-attachments/assets/0124aba0-f7a9-445b-bb33-6516c106abf1
LoadFramePackDiffusersPipeline_HY)diffusers 文件夹中的模型,并处理精度设置。model_path (STRING): 模型名称(例如 lllyasviel/FramePackI2V_HY)或模型的本地路径。节点会自动在 ComfyUI 的 diffusers 目录中查找。precision (STRING): 模型加载精度 (auto, fp16, bf16, fp32)。auto 会尝试根据模型名称推断,默认为 bf16。fp_pipeline (FP_DIFFUSERS_PIPELINE): 一个包含已加载模型 (transformer) 和数据类型 (dtype) 的 Pipeline 对象,供采样器使用。FramePackBucketResize_HY)image (IMAGE): 需要调整尺寸的图像。base_resolution (STRING): 用于选择分桶策略的基础分辨率 (例如 “640”, “1024”)。resize_mode (STRING, 可选): 调整尺寸时使用的插值方法 (lanczos, bilinear, bicubic, nearest)。alignment (STRING, 可选): 调整尺寸时的对齐方式 (center, top_left)。resized_image (IMAGE): 调整到最佳分桶尺寸后的图像。width (INT): 调整后的图像宽度。height (INT): 调整后的图像高度。CreateKeyframes_HY)keyframe_1 (LATENT): 必需的起始潜变量,定义视频的第一帧。通常来自文生图或图生图节点。video_length_seconds (INT): 期望生成的视频总时长(秒)。fps (INT): 视频的帧率(每秒帧数)。window_size (INT): 采样上下文窗口的大小。这个参数非常重要,它决定了模型在生成当前帧时会回顾多少历史帧信息,影响视频的时间连贯性。此参数必须与 FramePack Sampler (HY) 节点的 window_size 保持一致。start_latent_out (LATENT): 处理后的起始潜变量,仅包含第一帧。video_length_seconds (video_length_seconds): 传递视频时长。fps (video_fps): 传递视频帧率。window_size (window_size): 传递窗口大小。FramePackDiffusersSampler_HY)fp_pipeline (FP_DIFFUSERS_PIPELINE): 来自加载器节点的 Pipeline 对象。positive / negative (CONDITIONING): 正向和负向文本条件。clip_vision (CLIP_VISION_OUTPUT): CLIP Vision 输出,用于图像引导。steps (INT): 每段采样的步数。cfg (FLOAT): Classifier-Free Guidance (CFG) 强度。guidance_scale (FLOAT): 蒸馏引导强度 (针对 Hunyuan)。seed (INT): 随机种子。width / height (INT): 视频宽高。gpu_memory_preservation (FLOAT): GPU 显存保留量 (GB),用于内存管理。sampler (STRING): 采样器类型(目前仅支持 unipc)。start_latent_out (LATENT): 来自 CreateKeyframes_HY 节点的起始潜变量。video_length_seconds / video_fps / window_size: 从 CreateKeyframes_HY 节点连接,用于确定总帧数、分段数等。shift (FLOAT): 影响运动幅度的参数。use_teacache (BOOLEAN): 是否启用 teacache 加速。teacache_thresh (FLOAT): teacache 阈值。denoise_strength (FLOAT): 去噪强度 (未来可能用于图生视频)。LATENT: 生成的包含所有视频帧的潜变量序列。方法一:通过 ComfyUI Manager (推荐)
ComfyUI-FramePack-HY,点击 “Install”。方法二:手动安装 (Manual Installation)
custom_nodes 目录,然后执行:“`bash
cd /path/to/ComfyUI/custom_nodes
git clone https://github.com/CY-CHENYUE/ComfyUI-FramePack-HY.git
“`
*(请将 /path/to/ComfyUI/custom_nodes 替换为你的实际路径)*
ComfyUI-FramePack-HY 目录,并根据你的系统和环境执行相应的命令:“`bash
cd ComfyUI-FramePack-HY
# 如果你使用 ComfyUI 便携版 (Portable version):
..\..\..\python_embeded\python.exe -m pip install -r requirements.txt
# 如果你使用自己的 Python 环境 (venv, conda 等):
# 确保已激活你的环境
# C:\path\to\your\python.exe -m pip install -r requirements.txt (替换为你的 Python 路径)
pip install -r requirements.txt # 通常在激活环境后可以直接使用 pip
“`
“`bash
cd ComfyUI-FramePack-HY
# 如果 ComfyUI 使用内置 Python (通常在便携版或特定安装脚本中):
# ../../python_embeded/bin/python -m pip install -r requirements.txt
# 如果你使用系统的 Python 或虚拟环境 (venv, conda 等):
# 确保已激活你的环境
python -m pip install -r requirements.txt # 或者 pip install -r requirements.txt
“`
注意 (Troubleshooting):
git。pip: path/to/python -m pip install --upgrade pip (使用你的 Python 路径)。git 和 pip 已正确配置代理。Load FramePack Pipeline (HY) 节点加载所需的视频模型(例如 lllyasviel/FramePackI2V_HY),设置好模型路径和精度,得到 fp_pipeline 输出。KSampler)或加载图像节点生成/加载一张图像。FramePack BucketResize (HY) 节点,选择合适的基础分辨率,获得尺寸优化后的图像 resized_image。resized_image 连接到 VAE 编码器 (VAE Encode),得到起始潜变量。FramePack Create Keyframes (HY) 的 keyframe_1 输入。FramePack Create Keyframes (HY) 上设置期望的视频时长、帧率和关键的 window_size。Load FramePack Pipeline (HY) 的 fp_pipeline 输出连接到 FramePack Sampler (HY) 的 fp_pipeline 输入。positive, negative)。FramePack Create Keyframes (HY) 的 start_latent_out, video_length_seconds, fps, window_size 输出连接到 FramePack Sampler (HY) 对应的输入。FramePack Sampler (HY) 输出的 LATENT 连接到 VAE 解码器 (VAE Decode),得到最终的视频帧序列。Video Combine 或类似节点将解码后的图像帧序列合成为视频文件。window_size 参数对视频连贯性和显存占用有显著影响。较大的窗口会考虑更长的历史信息,可能带来更好的连贯性,但也会增加计算负担和显存需求。请确保 CreateKeyframes 和 Sampler 节点的 window_size 设置一致。gpu_memory_preservation 参数用于尝试保留一定的 GPU 显存,防止在采样过程中因显存耗尽而崩溃。如果遇到显存不足的问题,可以尝试适当增大此值,但这可能会降低采样速度。FramePack BucketResize (HY),请确保后续节点(特别是 VAE Encode 和 FramePack Sampler (HY))使用的宽度和高度与 BucketResize 节点的输出一致。diffusers, transformers, torch 等)。