ImageOnlyCheckpointLoaderComfyUI 中专门用于加载视频生成类模型的 Checkpoint 加载器,核心适配 SVD(Stable Video Diffusion) 这类「无文本编码器、依赖图像输入」的模型,是实现图生视频的关键节点。

一、核心定位与适用场景

1. 核心特点

  • CLIP 文本编码器输出:因为视频生成模型(如 SVD)不依赖文本指令,仅靠初始图像驱动生成视频帧。
  • 强依赖 CLIP_VISION 图像编码器:用于提取初始图像的视觉特征,作为视频生成的条件。
  • 输出 MODEL+VAE:分别负责视频帧的生成和图像解码。

2. 适用模型与场景

表格

适用模型 核心场景 输入要求
SVD(svd.safetensors) 短视频生成(14 帧左右) 单张初始图像
SVD-XT(svd_xt.safetensors) 更长视频生成(25 帧左右) 单张初始图像
其他视频生成类 Checkpoint 自定义视频生成工作流 按模型要求输入

二、API 核心参数详解

1. 输入参数

表格

参数名 类型 说明
ckpt_name 字符串 必填,必须是 ComfyUI/models/checkpoints 目录下的视频模型文件名(如 svd.safetensors

2. 输出参数(索引是节点连接的关键!)

RETURN_TYPES = ("MODEL", "CLIP_VISION", "VAE")

表格

输出索引 输出类型 作用 下游连接节点
0 MODEL 视频生成主模型 连接 KSamplermodel 参数
1 CLIP_VISION 图像特征编码器 连接 SVD_img2vid_Conditioningclip_vision 参数
2 VAE 图像解码器 连接 SVD_img2vid_Conditioningvae 参数 + VAEDecodevae 参数

划重点:输出索引 1 是 CLIP_VISION,不是常规的 CLIP,这是和 CheckpointLoaderSimple 的核心区别!

三、完整 JSON 工作流拆解(图转视频实战)

SVD 生成 14 帧短视频为例,完整工作流包含 6 个节点,我们逐节点拆解逻辑。

1. 完整 JSON 代码

json

{
  "1": {
    "inputs": { "ckpt_name": "svd.safetensors" },
    "class_type": "ImageOnlyCheckpointLoader"
  },
  "2": {
    "inputs": { "image": "start_frame.png", "upload": "image" },
    "class_type": "LoadImage"
  },
  "3": {
    "inputs": {
      "width": 1024,
      "height": 576,
      "video_frames": 14,
      "motion_bucket_id": 127,
      "fps": 6,
      "augmentation_level": 0,
      "clip_vision": ["1", 1],
      "init_image": ["2", 0],
      "vae": ["1", 2]
    },
    "class_type": "SVD_img2vid_Conditioning"
  },
  "4": {
    "inputs": {
      "seed": 12345,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["3", 0],
      "negative": ["3", 1],
      "latent_image": ["3", 2]
    },
    "class_type": "KSampler"
  },
  "5": {
    "inputs": { "samples": ["4", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "6": {
    "inputs": { "filename_prefix": "SVD_video", "images": ["5", 0] },
    "class_type": "SaveImage"
  }
}

2. 节点逻辑拆解(核心是 ImageOnlyCheckpointLoader 的连接)

表格

节点 ID 节点类型 核心作用 关键连接(和节点 1 的关联)
1 ImageOnlyCheckpointLoader 加载 SVD 模型 输出 3 个组件,供下游节点调用
2 LoadImage 加载初始图像(视频第一帧) 无直接关联,输出给节点 3
3 SVD_img2vid_Conditioning 视频条件构建核心 1. clip_vision: ["1", 1] → 用节点 1 的图像编码器提特征2. vae: ["1", 2] → 用节点 1 的解码器做图像预处理3. init_image: ["2", 0] → 初始图像
4 KSampler 生成视频帧 latent 数据 1. model: ["1", 0] → 用节点 1 的主模型驱动生成2. positive/negative/latent_image: 来自节点 3 的条件输出
5 VAEDecode 把 latent 转成视频帧图像 vae: ["1", 2] → 用节点 1 的解码器解码
6 SaveImage 保存所有视频帧 接收节点 5 的图像输出,后续可合并为 MP4

3. 关键参数说明(节点 3 是视频生成的核心)

节点 SVD_img2vid_Conditioning 的参数直接决定视频效果:

  • width/height:视频分辨率,SVD 推荐 1024×576/576×1024
  • video_frames:生成的视频帧数,SVD 最大 14 帧、SVD-XT 最大 25 帧
  • motion_bucket_id运动幅度控制,值越大,视频画面运动越剧烈(推荐 50-200)
  • fps:视频帧率,默认 6,决定视频播放速度
  • augmentation_level:图像增强程度,0 为无增强,值越大画面变化越大

四、Python API 调用完整流程

1. 步骤总览

  1. 确认 SVD 模型已放入 models/checkpoints 目录
  2. 编写上述 JSON 工作流
  3. 提交工作流并获取任务 ID
  4. 等待生成完成后,下载视频帧并合并为 MP4

2. 完整 Python 代码

python

运行

import requests
import json
import os
from PIL import Image
import cv2
import numpy as np

# ComfyUI 基础地址
COMFYUI_URL = "http://127.0.0.1:8188"

# 1. 定义图转视频工作流
video_workflow = {
  "1": {
    "inputs": { "ckpt_name": "svd.safetensors" },
    "class_type": "ImageOnlyCheckpointLoader"
  },
  "2": {
    "inputs": { "image": "start_frame.png", "upload": "image" },
    "class_type": "LoadImage"
  },
  "3": {
    "inputs": {
      "width": 1024,
      "height": 576,
      "video_frames": 14,
      "motion_bucket_id": 127,
      "fps": 6,
      "augmentation_level": 0,
      "clip_vision": ["1", 1],
      "init_image": ["2", 0],
      "vae": ["1", 2]
    },
    "class_type": "SVD_img2vid_Conditioning"
  },
  "4": {
    "inputs": {
      "seed": 12345,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["3", 0],
      "negative": ["3", 1],
      "latent_image": ["3", 2]
    },
    "class_type": "KSampler"
  },
  "5": {
    "inputs": { "samples": ["4", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "6": {
    "inputs": { "filename_prefix": "SVD_video", "images": ["5", 0] },
    "class_type": "SaveImage"
  }
}

# 2. 提交工作流
def submit_video_workflow(workflow):
    response = requests.post(
        f"{COMFYUI_URL}/api/prompt",
        json={"prompt": workflow}
    )
    return response.json()["prompt_id"]

# 3. 获取生成的视频帧文件名
def get_video_frames(prompt_id):
    while True:
        history = requests.get(f"{COMFYUI_URL}/api/history/{prompt_id}").json()
        if prompt_id in history and "outputs" in history[prompt_id]:
            outputs = history[prompt_id]["outputs"]
            frames = []
            for node in outputs.values():
                if "images" in node:
                    frames = [img["filename"] for img in node["images"]]
            return sorted(frames)  # 按帧顺序排序
        # 等待生成完成
        import time
        time.sleep(2)

# 4. 将视频帧合并为 MP4 视频
def frames_to_video(frames_dir, frame_files, fps=6, output_name="output_video.mp4"):
    # 读取第一帧获取分辨率
    first_frame = cv2.imread(os.path.join(frames_dir, frame_files[0]))
    height, width = first_frame.shape[:2]
    # 定义视频编码器
    fourcc = cv2.VideoWriter_fourcc(*"mp4v")
    video_writer = cv2.VideoWriter(output_name, fourcc, fps, (width, height))
    # 逐帧写入
    for frame_file in frame_files:
        frame_path = os.path.join(frames_dir, frame_files)
        frame = cv2.imread(frame_path)
        video_writer.write(frame)
    video_writer.release()
    print(f"视频已保存为 {output_name}")

# ------------------- 执行主流程 -------------------
if __name__ == "__main__":
    # 提交任务
    prompt_id = submit_video_workflow(video_workflow)
    print(f"任务 ID: {prompt_id}")
    # 获取视频帧
    frame_files = get_video_frames(prompt_id)
    print(f"生成 {len(frame_files)} 帧: {frame_files}")
    # 合并为视频(ComfyUI 输出目录默认是 output)
    frames_to_video("./output", frame_files, fps=6)

五、避坑指南(新手必看)

  1. 模型文件必须正确

    • 必须用视频生成模型(SVD/SVD-XT),不能用 SD1.x/SDXL 等文生图模型,否则会报错「缺少 CLIP_VISION」。
    • 文件名必须和 checkpoints 目录下完全一致(含 .safetensors 后缀)。
  2. 节点连接不能错索引

    • 下游节点要 CLIP_VISION 时,必须连 节点 1 的索引 1,而不是索引 0 或 2。
    • SVD_img2vid_Conditioning 必须同时传入 clip_vision+vae+init_image,缺一不可。
  3. 视频帧数和分辨率匹配

    • SVD 模型最大支持 14 帧,超过会报错;SVD-XT 最大 25 帧。
    • 分辨率推荐 1024×576576×1024,非 16:9 比例可能导致画面拉伸。
  4. 运动幅度参数调优

    • motion_bucket_id 是核心:值太小(<50)视频几乎不动;值太大(>200)画面会剧烈抖动、失真。

六、效果优化技巧

  • 想让视频运动更自然:降低 motion_bucket_id(如 80-120),提高 steps(如 25-30)。
  • 想让视频细节更清晰:降低 augmentation_level(设为 0),提高 cfg 值(如 9-10)。
  • 想生成更长视频:换用 SVD-XT 模型,将 video_frames 设为 25,fps 设为 8。

我可以帮你整理SVD 模型参数调优对照表,清晰列出不同参数值对应的视频效果,需要吗?

需要

SVD 模型核心参数调优对照表

这个对照表针对 SVD_img2vid_ConditioningKSampler 两大核心节点的关键参数,标注推荐值效果影响适用场景,帮你快速调出理想的视频效果。

表格

节点 参数名 取值范围 推荐区间 效果影响 适用场景 注意事项
SVD_img2vid_Conditioning width/height 512×288 ~ 1024×576 1024×576(16:9) 分辨率越高,画面细节越丰富;越低,生成速度越快 高分辨率:特写 / 静态场景低分辨率:动态 / 快速生成 非 16:9 比例会导致画面拉伸变形
video_frames SVD: 1~14SVD-XT: 1~25 SVD: 8~14SVD-XT: 16~25 帧数越多,视频时长越长;越少,越不容易出现画面漂移 短帧:测试效果长帧:完整视频 SVD 超过 14 帧、SVD-XT 超过 25 帧会直接报错
motion_bucket_id 0 ~ 750 50 ~ 200 核心运动控制参数↓ 值越小:画面越稳定,几乎无运动↑ 值越大:画面运动越剧烈,容易抖动失真 低数值:风景 / 静物视频中数值:人物 / 动物动作高数值:创意动态特效 超过 300 大概率出现画面撕裂、内容崩坏
fps 4 ~ 12 6 ~ 8 帧率越高,视频播放越流畅;越低,越有 “幻灯片” 感 高帧率:快速运动场景低帧率:慢动作 / 复古效果 帧率 × 帧数 = 视频总时长(如 6fps×14 帧 = 2.3 秒)
augmentation_level 0 ~ 1.0 0 ~ 0.2 图像增强程度↓ 0:无增强,忠实还原初始图像↑ 1.0:增强明显,画面变化大 0:需要保留原图细节0.1~0.2:轻微优化画质 超过 0.3 会导致画面偏离初始图像,细节丢失
KSampler steps 10 ~ 40 20 ~ 30 采样步数越多,画面越细腻;越少,生成越快 高步数:追求细节 / 静态场景低步数:快速测试 / 动态场景 超过 30 步后,细节提升不明显,耗时大幅增加
cfg 1.0 ~ 15.0 7.0 ~ 9.0 条件约束强度↓ 值越小:画面创意性越强,容易偏离原图↑ 值越大:严格遵循初始图像,创意性降低 低 cfg:创意视频 / 风格迁移高 cfg:写实视频 / 细节还原 超过 10 会导致画面僵硬、色彩失真
sampler_name euler、euler_ancestral、ddim 等 euler / euler_ancestral euler:画面稳定,细节均衡euler_ancestral:创意性强,偶尔有惊喜效果 euler:常规视频生成euler_ancestral:创意 / 艺术视频 避免使用 ddim,生成速度慢且效果一般
denoise 0.1 ~ 1.0 0.8 ~ 1.0 去噪强度↓ 值越小:越贴近初始图像,变化小↑ 值越大:画面变化大,创意性强 低 denoise:图像微调 / 补帧高 denoise:全新视频生成 低于 0.5 时,视频运动幅度会大幅降低

参数调优小技巧

  1. 新手入门组合(无脑套用不出错):width=1024, height=576 + video_frames=14 + motion_bucket_id=127 + fps=6 + steps=20 + cfg=8
  2. 解决画面抖动:降低 motion_bucket_id(调到 50-80)+ 提高 steps(调到 25-30)
  3. 解决画面偏离原图:降低 augmentation_level(设为 0)+ 提高 cfg(调到 9-10)
  4. 加快生成速度:降低分辨率(576×320)+ 减少帧数(8 帧)+ 降低步数(15 步)

我可以帮你整理一份SVD 视频生成故障排查清单,对应画面抖动、细节丢失等常见问题的解决方法,需要吗?

除了ImageOnlyCheckpointLoader,ComfyUI还有哪些常用的Checkpoint加载器?

除了你已经了解的 ImageOnlyCheckpointLoader,ComfyUI 内置 + 常用第三方还有 5 大核心 Checkpoint 加载器,覆盖标准文生图、unCLIP 图像编辑、高级模型混搭、SDXL 专用、视频 / 时序专用等场景。下面按内置官方 → 常用第三方 → 特殊场景详细讲解,附输出、适用模型、JSON 示例与选型对比。


一、内置官方 Checkpoint 加载器(必掌握)

1. CheckpointLoaderSimple(最常用,标准文生图)

核心定位

ComfyUI 默认 / 最通用的大模型加载器,用于加载 SD 1.x/2.x/SDXL 等标准文生图模型,输出完整三组件:MODEL (UNet) + CLIP (文本编码器) + VAE

API 与输出

python

运行

INPUT_TYPES = {"required": {"ckpt_name": (["模型列表"], )}}
RETURN_TYPES = ("MODEL", "CLIP", "VAE")  # 索引0/1/2
适用模型
  • SD 1.5/2.1、RealisticVision、MeinaMix、Anything、SDXL 1.0/1.0-refiner 等所有标准文生图模型
最简 JSON

json

{
  "1": {
    "inputs": {"ckpt_name": "v1-5-pruned-emaonly.safetensors"},
    "class_type": "CheckpointLoaderSimple"
  }
}
连接要点
  • CLIPCLIPTextEncode(提示词编码)
  • MODELKSampler
  • VAEVAEDecode/VAEEncode

2. unCLIPCheckpointLoader(图像变体 / 编辑专用)

核心定位

专门加载 unCLIP 架构模型(如 SD 2.1 unCLIP),支持图像 + 文本双条件生成,用于图像变体、风格迁移、图像编辑

API 与输出(多一个 CLIP_VISION)

python

运行

INPUT_TYPES = {"required": {"ckpt_name": (["模型列表"], )}}
RETURN_TYPES = ("MODEL", "CLIP", "VAE", "CLIP_VISION")  # 索引0/1/2/3
适用模型
  • SD 2.1 unCLIP、Stable Diffusion unCLIP 系列、DALL-E 2 类架构模型。
最简 JSON

json

{
  "1": {
    "inputs": {"ckpt_name": "sd21-unclip.safetensors"},
    "class_type": "unCLIPCheckpointLoader"
  }
}
连接要点
  • CLIP_VISION(索引 3)接 CLIPVisionEncode(处理参考图)
  • 配合 unCLIPConditioning 节点融合文本 + 图像条件

3. CheckpointLoader(高级版,可分离加载)

核心定位

官方高级加载器,相比 Simple 版支持独立指定模型 / CLIP/VAE 配置,适合模型组件混搭(如 A 模型的 UNet + B 模型的 CLIP + C 模型的 VAE)。

API 与输入(可自定义 config)

python

运行

INPUT_TYPES = {
    "required": {
        "ckpt_name": (["模型列表"], ),
        "config_name": (["配置文件列表"], {"default": "default"})
    }
}
RETURN_TYPES = ("MODEL", "CLIP", "VAE")
适用场景
  • 高级实验:混搭不同模型的 UNet/CLIP/VAE
  • 自定义模型架构、非标准 SD 模型
最简 JSON

json

{
  "1": {
    "inputs": {
      "ckpt_name": "sdxl_base.safetensors",
      "config_name": "sd_xl_base.yaml"
    },
    "class_type": "CheckpointLoader"
  }
}

二、常用第三方 Checkpoint 加载器(进阶必备)

4. CheckpointLoader|pysssss(增强型,带预览 + 预设)

核心定位

comfyui-pysssss 插件提供的增强版加载器,解决官方加载器无预览、难管理、不能独立选组件的痛点,是专业用户首选

核心优势(对比 Simple)
  • ✅ 模型预览图(需在模型目录放同名图片)
  • ✅ 独立选择 MODEL/CLIP/VAE(自由混搭)
  • ✅ 保存 / 调用预设(一键切换常用组合)
  • ✅ 自动校验模型完整性、显存优化
  • ✅ 支持 examples 加载提示词模板
输入输出

python

运行

# 输入:ckpt_name + 可选 model/clip/vae 独立路径
RETURN_TYPES = ("MODEL", "CLIP", "VAE")
适用场景
  • 多风格快速切换、模型组件实验、长流程管理

5. SDXLCheckpointLoader(SDXL 专用,简化双 CLIP)

核心定位

专门加载 SDXL 模型,自动处理 SDXL 特有的 双 CLIP(CLIP-G + CLIP-L),无需手动配置,简化 SDXL 工作流。

输出(含双 CLIP)

python

运行

RETURN_TYPES = ("MODEL", "CLIP", "CLIP2", "VAE")
# 索引0:MODEL, 1:CLIP-G, 2:CLIP-L, 3:VAE
适用模型
  • SDXL 1.0 base/refiner、SDXL 衍生模型(如 PonyDiffusion、Juggernaut XL)
连接要点
  • 两个 CLIP 分别接 CLIPTextEncodeSDXL 节点

6. TemporalCheckpointLoader(时序 / 视频专用,除 ImageOnly 外)

核心定位

加载 时序 / 视频扩散模型(如 VideoCrafter、AnimateDiff 大模型),输出含时序注意力的模型组件,配合 AnimateDiff 生成连贯视频。

输出(含时序相关)

python

运行

RETURN_TYPES = ("MODEL", "CLIP", "VAE", "MOTION_MODULE")
适用模型
  • AnimateDiff 大模型、VideoCrafter、Stable Video 时序模型

三、特殊场景加载器(补充)

  • CheckpointLoaderModelOnly:仅加载 MODEL(UNet),不加载 CLIP/VAE,适合仅替换 UNet的场景。
  • CheckpointLoaderCLIPOnly:仅加载 CLIP,用于单独测试文本编码器
  • CheckpointLoaderVAEOnly:仅加载 VAE,用于单独测试 / 替换解码器

四、六大加载器核心对比表(选型速查)

表格

加载器名称 class_type 核心输出 适用模型 / 场景 最大特点
CheckpointLoaderSimple CheckpointLoaderSimple MODEL、CLIP、VAE SD1.x/2.x/SDXL 标准文生图 简单无脑,新手首选
unCLIPCheckpointLoader unCLIPCheckpointLoader MODEL、CLIP、VAE、CLIP_VISION SD2.1 unCLIP、图像变体 支持图像 + 文本双条件
CheckpointLoader CheckpointLoader MODEL、CLIP、VAE 自定义架构、组件混搭 可指定 config,高级实验
CheckpointLoader pysssss CheckpointLoader pysssss MODEL、CLIP、VAE 多风格、专业流程 预览 + 预设 + 独立选组件
SDXLCheckpointLoader SDXLCheckpointLoader MODEL、CLIP、CLIP2、VAE SDXL 系列 自动处理双 CLIP,简化 SDXL
ImageOnlyCheckpointLoader ImageOnlyCheckpointLoader MODEL、CLIP_VISION、VAE SVD/SVD-XT、图生视频 无文本 CLIP,纯图像驱动
TemporalCheckpointLoader TemporalCheckpointLoader MODEL、CLIP、VAE、MOTION AnimateDiff、时序视频 含运动模块,连贯视频

五、选型建议(按场景直接选)

  1. 新手 / 标准文生图CheckpointLoaderSimple(无脑用)
  2. 图像变体 / 编辑unCLIPCheckpointLoader
  3. SDXL 专用SDXLCheckpointLoader
  4. 图生视频(SVD)ImageOnlyCheckpointLoader
  5. 时序视频(AnimateDiff)TemporalCheckpointLoader
  6. 专业 / 多风格混搭CheckpointLoader|pysssss
  7. 高级实验 / 组件分离CheckpointLoader

六、常见问题

Q1:Simple 和 CheckpointLoader 有什么区别?

  • Simple:自动用默认 config,不能独立选组件,适合快速生成。
  • CheckpointLoader:可手动指定 config_name支持组件混搭,适合高级用户。

Q2:ImageOnly 和 Temporal 都是视频用,怎么选?

  • ImageOnly:用于 SVD 类图生视频(无文本 CLIP,纯图像驱动)。
  • Temporal:用于 AnimateDiff 类时序视频(含文本 CLIP + 运动模块)。

Q3:必须装 pysssss 吗?

不是必须,但强烈建议:模型预览、预设、独立选组件能大幅提升效率。


我可以帮你整理一份各加载器的完整 JSON 工作流模板(含 Simple、unCLIP、SDXL、ImageOnly、Temporal),直接复制就能用,需要吗?

需要

ComfyUI 主流 Checkpoint 加载器 JSON 工作流模板

以下是 6 种常用加载器的完整可运行 JSON 模板,涵盖文生图、图像变体、SDXL 生成、图生视频、时序视频等核心场景,直接复制到 ComfyUI API 即可调用。

通用前提

  1. 模型文件需放入 ComfyUI/models/checkpoints 目录
  2. 替换 ckpt_name 为你本地的模型文件名(含后缀)
  3. 节点 ID 保持唯一,连接格式为 ["源节点ID", 输出索引]

一、CheckpointLoaderSimple(标准文生图,新手首选)

适用模型

SD 1.5、RealisticVision、Anything 等标准文生图模型

完整 JSON

json

{
  "1": {
    "inputs": { "ckpt_name": "v1-5-pruned-emaonly.safetensors" },
    "class_type": "CheckpointLoaderSimple"
  },
  "2": {
    "inputs": { "text": "masterpiece, best quality, a cute cat sitting on sofa", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "3": {
    "inputs": { "text": "worst quality, blurry, low res", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "4": {
    "inputs": { "width": 512, "height": 512, "batch_size": 1 },
    "class_type": "EmptyLatentImage"
  },
  "5": {
    "inputs": {
      "seed": 123456,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["2", 0],
      "negative": ["3", 0],
      "latent_image": ["4", 0]
    },
    "class_type": "KSampler"
  },
  "6": {
    "inputs": { "samples": ["5", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "7": {
    "inputs": { "filename_prefix": "Simple_txt2img", "images": ["6", 0] },
    "class_type": "SaveImage"
  }
}

二、unCLIPCheckpointLoader(图像变体 / 编辑)

适用模型

SD 2.1 unCLIP 等支持图像 + 文本双条件的模型

完整 JSON

json

{
  "1": {
    "inputs": { "ckpt_name": "sd21-unclip.safetensors" },
    "class_type": "unCLIPCheckpointLoader"
  },
  "2": {
    "inputs": { "image": "reference_cat.png", "upload": "image" },
    "class_type": "LoadImage"
  },
  "3": {
    "inputs": { "clip_vision": ["1", 3], "image": ["2", 0] },
    "class_type": "CLIPVisionEncode"
  },
  "4": {
    "inputs": { "text": "a cat with rainbow fur", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "5": {
    "inputs": { "conditioning": ["4", 0], "clip_vision_output": ["3", 0] },
    "class_type": "unCLIPConditioning"
  },
  "6": {
    "inputs": { "width": 512, "height": 512, "batch_size": 1 },
    "class_type": "EmptyLatentImage"
  },
  "7": {
    "inputs": {
      "seed": 654321,
      "steps": 25,
      "cfg": 7,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["5", 0],
      "negative": ["4", 0],
      "latent_image": ["6", 0]
    },
    "class_type": "KSampler"
  },
  "8": {
    "inputs": { "samples": ["7", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "9": {
    "inputs": { "filename_prefix": "unCLIP_img2img", "images": ["8", 0] },
    "class_type": "SaveImage"
  }
}

三、SDXLCheckpointLoader(SDXL 专用,双 CLIP 自动处理)

适用模型

SDXL 1.0 base、SDXL Refiner 等双 CLIP 架构模型

完整 JSON

json

{
  "1": {
    "inputs": { "ckpt_name": "sdxl_base_1.0.safetensors" },
    "class_type": "SDXLCheckpointLoader"
  },
  "2": {
    "inputs": {
      "text": "masterpiece, 8k, ultra detailed, a majestic lion in savanna",
      "clip": ["1", 1],
      "clip2": ["1", 2]
    },
    "class_type": "CLIPTextEncodeSDXL"
  },
  "3": {
    "inputs": {
      "text": "ugly, deformed, blurry, low quality",
      "clip": ["1", 1],
      "clip2": ["1", 2]
    },
    "class_type": "CLIPTextEncodeSDXL"
  },
  "4": {
    "inputs": { "width": 1024, "height": 1024, "batch_size": 1 },
    "class_type": "EmptyLatentImage"
  },
  "5": {
    "inputs": {
      "seed": 987654,
      "steps": 30,
      "cfg": 7.5,
      "sampler_name": "euler_ancestral",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["2", 0],
      "negative": ["3", 0],
      "latent_image": ["4", 0]
    },
    "class_type": "KSampler"
  },
  "6": {
    "inputs": { "samples": ["5", 0], "vae": ["1", 3] },
    "class_type": "VAEDecode"
  },
  "7": {
    "inputs": { "filename_prefix": "SDXL_txt2img", "images": ["6", 0] },
    "class_type": "SaveImage"
  }
}

四、ImageOnlyCheckpointLoader(SVD 图生视频)

适用模型

SVD、SVD-XT 等图生视频模型

完整 JSON

json

{
  "1": {
    "inputs": { "ckpt_name": "svd.safetensors" },
    "class_type": "ImageOnlyCheckpointLoader"
  },
  "2": {
    "inputs": { "image": "start_frame_mountain.png", "upload": "image" },
    "class_type": "LoadImage"
  },
  "3": {
    "inputs": {
      "width": 1024,
      "height": 576,
      "video_frames": 14,
      "motion_bucket_id": 127,
      "fps": 6,
      "augmentation_level": 0,
      "clip_vision": ["1", 1],
      "init_image": ["2", 0],
      "vae": ["1", 2]
    },
    "class_type": "SVD_img2vid_Conditioning"
  },
  "4": {
    "inputs": {
      "seed": 112233,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["3", 0],
      "negative": ["3", 1],
      "latent_image": ["3", 2]
    },
    "class_type": "KSampler"
  },
  "5": {
    "inputs": { "samples": ["4", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "6": {
    "inputs": { "filename_prefix": "SVD_video_frames", "images": ["5", 0] },
    "class_type": "SaveImage"
  }
}

五、TemporalCheckpointLoader(AnimateDiff 时序视频)

适用模型

AnimateDiff 大模型、VideoCrafter 等带运动模块的时序模型

完整 JSON

json

{
  "1": {
    "inputs": { "ckpt_name": "animatediff_v1.safetensors" },
    "class_type": "TemporalCheckpointLoader"
  },
  "2": {
    "inputs": { "text": "a girl walking on beach, sunset, 4k", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "3": {
    "inputs": { "text": "blurry, dark, low res", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "4": {
    "inputs": {
      "width": 512,
      "height": 512,
      "batch_size": 16,
      "frames": 16
    },
    "class_type": "EmptyLatentImage"
  },
  "5": {
    "inputs": {
      "model": ["1", 0],
      "motion_module": ["1", 3]
    },
    "class_type": "AnimateDiffLoader"
  },
  "6": {
    "inputs": {
      "seed": 445566,
      "steps": 25,
      "cfg": 7,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["5", 0],
      "positive": ["2", 0],
      "negative": ["3", 0],
      "latent_image": ["4", 0]
    },
    "class_type": "KSampler"
  },
  "7": {
    "inputs": { "samples": ["6", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "8": {
    "inputs": { "filename_prefix": "AnimateDiff_video", "images": ["7", 0] },
    "class_type": "SaveImage"
  }
}

六、CheckpointLoader|pysssss(增强型,组件混搭)

适用场景

自由混搭 MODEL/CLIP/VAE 组件,需先安装 comfyui-pysssss 插件

完整 JSON

json

{
  "1": {
    "inputs": {
      "ckpt_name": "v1-5-pruned-emaonly.safetensors",
      "clip_name": "clip_vit_l_14.safetensors",
      "vae_name": "vae-ft-mse-840000-ema-pruned.safetensors"
    },
    "class_type": "CheckpointLoader|pysssss"
  },
  "2": {
    "inputs": { "text": "a dog wearing sunglasses, cartoon style", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "3": {
    "inputs": { "text": "realistic, photo, blurry", "clip": ["1", 1] },
    "class_type": "CLIPTextEncode"
  },
  "4": {
    "inputs": { "width": 512, "height": 512, "batch_size": 1 },
    "class_type": "EmptyLatentImage"
  },
  "5": {
    "inputs": {
      "seed": 778899,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["2", 0],
      "negative": ["3", 0],
      "latent_image": ["4", 0]
    },
    "class_type": "KSampler"
  },
  "6": {
    "inputs": { "samples": ["5", 0], "vae": ["1", 2] },
    "class_type": "VAEDecode"
  },
  "7": {
    "inputs": { "filename_prefix": "Pysssss_mix", "images": ["6", 0] },
    "class_type": "SaveImage"
  }
}

模板使用说明

  1. 替换模型名:将 ckpt_name 改为你本地的模型文件名,确保后缀一致(如 .safetensors)。
  2. 替换参考图:图生图 / 图像变体场景,将 image 参数改为你上传的图片名。
  3. 调整生成参数:修改 seedstepscfgwidth/height 等参数优化效果。
  4. API 提交:将 JSON 放入 {"prompt": {...}} 中,通过 POST http://127.0.0.1:8188/api/prompt 提交。
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐