ComfyUI-Diffusers 插件完全教程 - 让你的 ComfyUI 用上 Hugging Face 的强大功能
插件简介
插件地址: https://github.com/Limitex/ComfyUI-Diffusers
ComfyUI-Diffusers 是一个让你在 ComfyUI 里使用 Hugging Face Diffusers 库的神奇插件,就像给你的 ComfyUI 装上了一个"万能转换器"。这个插件主要能帮你做这些事情:
- 使用 Hugging Face 模型 - 直接在 ComfyUI 里用 Hugging Face 上的各种模型,不用复杂的转换
- 实时生成图片 - 支持 StreamDiffusion 技术,能实现超快速的图片生成
- 视频处理 - 配合其他插件可以做视频转视频的处理
- 灵活的调度器 - 支持多种不同的生成算法,让你有更多选择
如何安装
安装步骤
- 打开命令行,进入你的 ComfyUI 安装目录
- 进入
custom_nodes文件夹 - 运行以下命令:
git clone https://github.com/Limitex/ComfyUI-Diffusers.git
cd ComfyUI-Diffusers
pip install -r requirements.txt
git clone https://github.com/cumulo-autumn/StreamDiffusion.git
python -m streamdiffusion.tools.install-tensorrt
- 重启 ComfyUI
推荐搭配插件
- VideoHelperSuite:用于视频处理功能
节点详细解析
1. Diffusers Pipeline Loader(模型管道加载器)
这个节点是干嘛的?
就像一个"模型搬运工",它能把你电脑里的模型文件转换成 Hugging Face 格式,然后打包成一个完整的"工具包"。就像把散装的零件组装成一台完整的机器。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Ckpt Name | ckpt_name | 模型文件列表 | 选择你要用的模型 | 选择要加载的模型文件,就像选择要用哪个画笔 | 从checkpoints文件夹中选择模型文件 | 选择你下载的SD模型,比如"v1-5-pruned.ckpt" |
2. Diffusers Vae Loader(图像编码器加载器)
这个节点是干嘛的?
就像一个"图片翻译器",专门负责把图片转换成AI能理解的"密码",或者把AI的"密码"转换回图片。就像一个双向翻译官。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Vae Name | vae_name | VAE文件列表 | 选择对应的VAE | 选择图片编码器,就像选择翻译官的语言能力 | 从vae文件夹中选择VAE模型 | 选择"vae-ft-mse-840000-ema-pruned.ckpt"提升图片质量 |
3. Diffusers Scheduler Loader(调度器加载器)
这个节点是干嘛的?
就像一个"工作计划表制定者",它决定AI生成图片时的工作步骤和节奏。不同的调度器就像不同的工作方式,有的快但粗糙,有的慢但精细。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Pipeline | pipeline | PIPELINE类型 | 连接Pipeline Loader | 需要一个完整的模型工具包 | 输入的模型管道对象 | 连接Diffusers Pipeline Loader的输出 |
| Scheduler Name | scheduler_name | 调度器列表 | DPMSolverMultistep | 选择生成图片的工作方式 | 选择扩散模型的采样调度器 | DPMSolverMultistep速度快质量好 |
可选的调度器类型:
- DDIM - 经典稳定,适合新手
- DDPM - 最原始的方法,慢但稳定
- DPMSolverMultistep - 速度快质量好,推荐使用
- EulerAncestralDiscrete - 创意性强,结果多样
- EulerDiscrete - 平衡速度和质量
- HeunDiscrete - 质量高但速度慢
- UniPCMultistep - 新算法,效果不错
4. Diffusers Model Makeup(模型化妆师)
这个节点是干嘛的?
就像一个"化妆师",它把分散的模型组件(主模型、VAE、调度器)组合在一起,并给它们"化妆"(优化设置),让整个模型准备好工作。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Pipeline | pipeline | PIPELINE类型 | 连接Pipeline Loader | 基础的模型工具包 | 输入的模型管道 | 连接Diffusers Pipeline Loader |
| Scheduler | scheduler | SCHEDULER类型 | 连接Scheduler Loader | 工作计划表 | 扩散采样调度器 | 连接Diffusers Scheduler Loader |
| Autoencoder | autoencoder | AUTOENCODER类型 | 连接Vae Loader | 图片翻译器 | VAE自编码器模型 | 连接Diffusers Vae Loader |
5. Diffusers Clip Text Encode(文字编码器)
这个节点是干嘛的?
就像一个"文字翻译官",它把你写的提示词(比如"美丽的风景")翻译成AI能理解的"密码语言"。还能自动处理超长的提示词,就像把长文章分段处理。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Maked Pipeline | maked_pipeline | MAKED_PIPELINE类型 | 连接Model Makeup | 准备好的完整模型 | 经过组装的模型管道 | 连接Diffusers Model Makeup的输出 |
| Positive | positive | 多行文本 | 写你想要的内容 | 正面提示词,告诉AI你想要什么 | 正向提示词文本 | "beautiful landscape, sunset, mountains" |
| Negative | negative | 多行文本 | 写你不想要的内容 | 负面提示词,告诉AI你不想要什么 | 负向提示词文本 | "blurry, low quality, distorted" |
6. Diffusers Sampler(图片生成器)
这个节点是干嘛的?
就像一个"魔法师",它根据你的提示词和各种设置,真正地"变出"图片来。这是整个流程的核心,所有前面的准备工作都是为了这一刻。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Maked Pipeline | maked_pipeline | MAKED_PIPELINE类型 | 连接Model Makeup | 准备好的完整模型 | 经过组装的模型管道 | 连接Diffusers Model Makeup |
| Positive Embeds | positive_embeds | EMBEDS类型 | 连接Text Encode | 翻译好的正面提示词 | 正向提示词的编码表示 | 连接Diffusers Clip Text Encode的positive_embeds |
| Negative Embeds | negative_embeds | EMBEDS类型 | 连接Text Encode | 翻译好的负面提示词 | 负向提示词的编码表示 | 连接Diffusers Clip Text Encode的negative_embeds |
| Width | width | 1-8192 | 512 | 图片宽度,就像画布的宽度 | 生成图像的宽度像素 | 512是标准尺寸,768更清晰但更慢 |
| Height | height | 1-8192 | 512 | 图片高度,就像画布的高度 | 生成图像的高度像素 | 512是标准尺寸,768更清晰但更慢 |
| Steps | steps | 1-10000 | 20 | 生成步数,就像画画的笔画数 | 扩散采样的迭代步数 | 20步够用,50步质量更好但更慢 |
| CFG | cfg | 0.0-100.0 | 8.0 | 提示词遵循度,数字越大越听话 | 分类器自由引导强度 | 7-12之间,太高会过度饱和 |
| Seed | seed | 0-很大的数 | 0 | 随机种子,相同种子产生相同图片 | 随机数生成器的种子值 | 固定种子可以复现结果 |
7. Create Int List(整数列表创建器)
这个节点是干嘛的?
就像一个"数字收集盒",它能把多个数字打包成一个列表。主要用于StreamDiffusion功能,告诉系统在哪些时间点进行特殊处理。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Elements Count | elements_count | 1-10 | 2 | 要收集多少个数字 | 列表中元素的数量 | 设为3就会收集3个数字 |
| Element 1-9 | element_1到element_9 | 整数 | 0 | 要收集的具体数字 | 列表中的具体数值 | 可以设置为10, 20, 30等 |
8. LCM Lora Loader(LCM增强器加载器)
这个节点是干嘛的?
就像给汽车装上"涡轮增压器",它加载LCM LoRA文件来大幅提升图片生成速度。LCM就像一个"快速通道",让原本需要很多步的生成过程变得超快。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Lora Name | lora_name | LoRA文件列表 | 选择LCM LoRA | 选择速度增强器文件 | 从loras文件夹选择LCM LoRA文件 | 选择"lcm-lora-sdv1-5.safetensors" |
9. StreamDiffusion Create Stream(流式生成创建器)
这个节点是干嘛的?
就像建造一条"高速生产线",它设置StreamDiffusion系统,让图片生成变得超级快。就像从手工作坊升级到自动化工厂。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Maked Pipeline | maked_pipeline | MAKED_PIPELINE类型 | 连接Model Makeup | 准备好的完整模型 | 经过组装的模型管道 | 连接Diffusers Model Makeup |
| T Index List | t_index_list | LIST类型 | 连接Create Int List | 时间点列表,控制生成节奏 | 扩散过程的时间步索引列表 | 连接Create Int List的输出 |
| Width | width | 1-8192 | 512 | 图片宽度 | 生成图像的宽度像素 | 512是标准尺寸 |
| Height | height | 1-8192 | 512 | 图片高度 | 生成图像的高度像素 | 512是标准尺寸 |
| Do Add Noise | do_add_noise | true/false | true | 是否添加噪声,影响生成效果 | 是否在扩散过程中添加噪声 | true让结果更自然 |
| Use Denoising Batch | use_denoising_batch | true/false | true | 是否批量去噪,提升效率 | 是否使用批量去噪处理 | true可以提升速度 |
| Frame Buffer Size | frame_buffer_size | 1-10000 | 1 | 缓冲区大小,影响内存使用 | 帧缓冲区的大小 | 1是最小值,够用就行 |
| CFG Type | cfg_type | none/full/self/initialize | none | 引导类型,影响生成质量 | 分类器自由引导的类型 | none最快,full质量最好 |
| Xformers Memory Efficient | xformers_memory_efficient_attention | true/false | false | 是否启用内存优化 | 是否启用xformers内存优化 | 显存不够时开启 |
| LCM Lora | lcm_lora | LCM_LORA类型 | 连接LCM Lora Loader | 速度增强器 | LCM LoRA模型数据 | 连接LcmLoraLoader |
| Tiny VAE | tiny_vae | 文本 | madebyollin/taesd | 轻量级图片编码器名称 | 轻量级VAE模型的名称 | 使用默认值即可 |
10. StreamDiffusion Sampler(流式采样器)
这个节点是干嘛的?
就像一个"超级快的画家",它使用StreamDiffusion技术快速生成图片。可以处理文字生成图片,也可以处理图片转图片,速度比传统方法快很多。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Stream | stream | STREAM类型 | 连接Create Stream | 高速生产线 | StreamDiffusion流对象 | 连接StreamDiffusion Create Stream |
| Positive | positive | 多行文本 | 写你想要的内容 | 正面提示词 | 正向提示词文本 | "beautiful landscape, sunset" |
| Negative | negative | 多行文本 | 写你不想要的内容 | 负面提示词 | 负向提示词文本 | "blurry, low quality" |
| Steps | steps | 1-10000 | 50 | 生成步数 | 扩散采样的迭代步数 | StreamDiffusion中可以用更多步数 |
| CFG | cfg | 0.0-100.0 | 1.2 | 提示词遵循度 | 分类器自由引导强度 | StreamDiffusion中通常用较低值 |
| Delta | delta | 0.0-1.0 | 1 | 变化程度,控制每次生成的差异 | 扩散过程的变化系数 | 1是最大变化,0.5是中等变化 |
| Seed | seed | 0-很大的数 | 0 | 随机种子 | 随机数生成器的种子值 | 固定种子可以复现结果 |
| Num | num | 1-10000 | 1 | 生成图片数量 | 要生成的图像数量 | 1张够用,多张会更慢 |
| Warmup | warmup | 0-10000 | 1 | 预热次数,让系统准备好 | 预热运行的次数 | 1次预热通常够用 |
| Image | image | IMAGE类型(可选) | 可选输入 | 可选的输入图片,用于图片转图片 | 可选的输入图像 | 连接图片节点进行img2img |
11. StreamDiffusion Warmup(流式预热器)
这个节点是干嘛的?
就像汽车启动前的"热车"过程,它让StreamDiffusion系统预先运行几次,确保后续生成时能达到最佳状态和速度。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Stream | stream | STREAM类型 | 连接Create Stream | 高速生产线 | StreamDiffusion流对象 | 连接StreamDiffusion Create Stream |
| Negative | negative | 多行文本 | 写你不想要的内容 | 负面提示词 | 负向提示词文本 | "blurry, low quality" |
| Steps | steps | 1-10000 | 50 | 生成步数 | 扩散采样的迭代步数 | 与后续采样保持一致 |
| CFG | cfg | 0.0-100.0 | 1.2 | 提示词遵循度 | 分类器自由引导强度 | 与后续采样保持一致 |
| Delta | delta | 0.0-1.0 | 1 | 变化程度 | 扩散过程的变化系数 | 与后续采样保持一致 |
| Seed | seed | 0-很大的数 | 0 | 随机种子 | 随机数生成器的种子值 | 与后续采样保持一致 |
| Warmup | warmup | 0-10000 | 1 | 预热次数 | 预热运行的次数 | 1-3次通常够用 |
12. StreamDiffusion Fast Sampler(流式快速采样器)
这个节点是干嘛的?
就像一个"闪电画家",它使用已经预热好的StreamDiffusion系统,能以最快速度生成图片。特别适合需要实时生成或大量生成图片的场景。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Warmup Stream | warmup_stream | WARMUP_STREAM类型 | 连接Warmup节点 | 预热好的高速生产线 | 经过预热的StreamDiffusion对象 | 连接StreamDiffusion Warmup |
| Positive | positive | 多行文本 | 写你想要的内容 | 正面提示词 | 正向提示词文本 | "beautiful landscape, sunset" |
| Num | num | 1-10000 | 1 | 生成图片数量 | 要生成的图像数量 | 1张最快,多张会累积时间 |
使用技巧和建议
基础使用流程
- 模型准备:Pipeline Loader → Vae Loader → Scheduler Loader → Model Makeup
- 文字处理:Clip Text Encode 处理提示词
- 图片生成:Diffusers Sampler 生成最终图片
StreamDiffusion 高速流程
- 准备阶段:Create Int List → LCM Lora Loader → StreamDiffusion Create Stream
- 预热阶段:StreamDiffusion Warmup(可选但推荐)
- 快速生成:StreamDiffusion Fast Sampler
参数调优建议
- 普通生成:Steps=20-50,CFG=7-12
- StreamDiffusion:Steps=50+,CFG=1.2-2.0,Delta=0.8-1.0
- 图片尺寸:512x512是标准,768x768更清晰但更慢
- 调度器选择:DPMSolverMultistep平衡速度和质量
性能优化技巧
- 启用内存优化:显存不足时开启xformers_memory_efficient_attention
- 合理设置缓冲区:frame_buffer_size=1通常够用
- 预热的重要性:StreamDiffusion使用前一定要预热
- 批量生成:需要多张图时,调整num参数比多次运行更高效
常见问题解答
Q1:安装时出现依赖错误怎么办?
A: 按顺序检查:
- 确保Python版本兼容(推荐3.8-3.11)
- 先安装requirements.txt中的依赖
- 确保CUDA环境正确配置
- 如果TensorRT安装失败,可以跳过这一步,不影响基本功能
Q2:StreamDiffusion生成速度没有明显提升?
A: 检查以下设置:
- 确保使用了LCM LoRA
- CFG值要设置得较低(1.2-2.0)
- 必须进行预热操作
- 确保显卡支持并启用了相关优化
Q3:生成的图片质量不如原版ComfyUI?
A: 调整这些参数:
- 增加Steps数量到30-50
- 调整CFG值到7-12之间
- 尝试不同的调度器
- 确保VAE模型质量良好
Q4:内存不足错误怎么解决?
A: 尝试以下方法:
- 降低图片分辨率到512x512
- 启用xformers内存优化
- 减少frame_buffer_size
- 关闭其他占用显存的程序
Q5:模型转换失败怎么办?
A: 检查以下方面:
- 确保模型文件完整且未损坏
- 检查模型格式是否支持(.ckpt, .safetensors)
- 确保有足够的磁盘空间用于转换
- 尝试使用不同的模型文件
高级应用案例
案例1:实时图片生成系统
- 使用StreamDiffusion Create Stream设置高速生产线
- 配合StreamDiffusion Warmup进行预热
- 使用StreamDiffusion Fast Sampler实现实时生成
- 开启ComfyUI的Auto Queue功能
案例2:批量图片处理
- 使用标准Diffusers流程确保质量
- 调整num参数进行批量生成
- 配合不同的seed值产生多样性
- 使用合适的调度器平衡速度和质量
案例3:视频处理工作流
- 配合VideoHelperSuite插件
- 使用StreamDiffusion处理视频帧
- 设置合适的delta值保持帧间一致性
- 优化内存使用避免处理中断
总结
ComfyUI-Diffusers 插件为ComfyUI带来了Hugging Face生态的强大功能,特别是StreamDiffusion技术让实时图片生成成为可能。虽然设置相对复杂,但一旦配置好就能享受到显著的性能提升。
本次分析完成情况:
- ✅ 已输出全部 12个节点
- ✅ 每个节点的所有参数都已详细解释
- ✅ 包含了完整的使用流程和优化建议
- ✅ 提供了实用的问题解决方案和应用案例
记住,这个插件的核心价值在于速度提升,特别适合需要大量生成图片或实时生成的场景。合理配置参数,你就能体验到前所未有的生成速度!