[toc]
ComfyUI笔记
ComfyUI 介绍
ComfyUI 中文官网 https://comfy.org/zh-CN/

ComfyUI是一款基于节点流程的AI图像生成工具,专为图像生成,视频生成,动画生成等任务设计,支持Windows、macOS、Linux多平台运行。
ComfyUI 是一个基于节点的、可扩展的 Stable Diffusion 图形界面工具。它允许用户通过连接不同的节点来构建复杂的图像生成工作流,从而无需编写代码。
ComfyUI 核心功能和特点
- 节点化工作流:通过拖拽节点并连接它们来创建图像生成流程,直观且灵活
- 高度可扩展:支持大量自定义节点和扩展插件,社区活跃
- 高清修复:内置高清修复功能,可生成更高分辨率的图像
- 模型管理:支持多种模型格式,方便管理和切换不同的生成模型
- 开源免费:完全开源,免费使用,拥有庞大的社区支持
ComfyUI 的使用场景
- AI 图像生成:使用 Stable Diffusion 模型生成各种风格的图像
- AI 视频生成:使用 Stable Diffusion 模型生成各种风格的视频
- 图像编辑与修复:对现有图像进行修改、修复和增强
- 创意设计:设计师可以使用 ComfyUI 创建概念艺术、插画、海报等
- 批量生成:通过自定义工作流实现批量图像生成
简而言之,ComfyUI 是一个强大的 AI 图像生成工具,通过节点化的方式让用户能够灵活地构建和控制图像生成流程,适合从入门到专业的各种用户。
ComfyUI 安装
ComfyUI Desktop 安装

ComfyUI Desktop 是一个ComfyUI官方 推出的基于 Windows 的桌面应用,用户可以在 Windows 系统上直接运行 ComfyUI。
配置需求
强烈建议本地显卡是NVIDIA显卡。并且显卡显存在8GB以上。
安装步骤
- 下载ComfyUI Desktop 安装包
- 双击运行安装包,按照提示安装。
- 安装完成后,会自动打开 ComfyUI Desktop。
ComfyUI Desktop 安装后,会在安装目录下新建三个目录。我是安装在D盘。如图所示。 
- ComfyUI-Cache目录:缓存目录,用于存储临时文件和缓存数据。空间不足时可以清空,不影响模型和软件本体。
- ComfyUI-Installs目录:项目工程目录,用来隔离各个工程之间的文件,避免不同工程之间的文件冲突。例如,你可以创建一个名为"项目1"的工程,专门用于存放项目1的文件。
- 注意:每个工程的文件都是独立的,互不干扰。
- 注意:每个工程中可以创建多个工作流。一个工程就类似一个项目。
- ComfyUI-Shared目录:共享目录,用于存储需要共享的文件。包括各个模型文件等。
注意:你下载的模型文件,就需要放在ComfyUI-Shared目录下。所有工作流共用的模型文件全部存在这里,ComfyUI 会自动检测并加载共享目录下的模型文件。
模型目录
在ComfyUI-Shared目录中的models目录下,可以看到代表各个模型类型的目录。不同的模型文件分别存在对应类型的目录下。

修改共享目录路径
你也可以在ComfyUI Desktop 的设置中修改共享目录路径。如图所示。 
ComfyUI 基本概念
实例
如图所示,当一打开ComfyUI Desktop 时,首页出现的就是comfyui的仪表盘界面。 
实例就是一个项目,也是一套独立完整的 ComfyUI 环境(独立文件夹)。当我们新建一个实例的时候,会在"ComfyUI-Installs"目录下新建一个文件夹,用来存放该实例的所有文件。
如图所示,一个实例相当于一个独立的项目工程。环境也是独立的,互不干扰。 
如图所示,某个实例中的standalone-env目录就是该实例的Python环境。 
如图所示,实例中的“ComfyUI/XXX”目录下就存放着属于该实例的模型目录,自定义节点包目录等。 
如图所示,实例中的工作流的存储路径。工作流以json文件格式存储。 
注意事项:
① 每个实例中Python环境是隔离的。你在实例A中安装的Python依赖,不会应用到实例B。
② 每个实例中自定义节点也是隔离的。你可以在实例A中安装自定义节点,不会应用到实例B。同样,你可以在实例B中安装自定义节点,不会应用到实例A。
③ 实例中的模型也是隔离的,不过你也可以将模型文件下载到“ComfyUI-Shared/models”目录下。这个目录下的模型是所有实例共用的。
④ 实例中的工作流也是隔离的。你可以在实例A中创建工作流,不会影响到实例B。同样,你可以在实例B中创建工作流,不会影响到实例A。
工作流(节点图)
ComfyUI 本身是一个用于构建 工作流 的桌面端工具。在这个工具中,工作流被定义为一组称为 节点 的程序对象,它们相互连接,形成一个网络。这个网络也被称为图。
即工作流就是节点与节点之间构建的图。即节点图。
ComfyUI 的工作流可以生成任何类型的媒体:图像、视频、音频、模型等。
工作流包含的步骤
一个典型的工作流包含以下步骤:
- 加载模型和 VAE
- 输入提示词
- 配置采样参数
- 生成图像
- 保存或后处理图像
工作流依赖文件
我们经常可以从社区里获取到各种各样的工作流文件,但往往在运行之后发现工作流无法直接运行。
这是因为一个工作流文件除了工作流自身之外还要依赖于其它文件,比如媒体资产的输入、模型、自定义节点、相关的 Python 依赖等等。
ComfyUI 的工作流只有在所有相关依赖条件都被满足的情况下才能正常运行。
ComfyUI 工作流的依赖文件主要分为以下几类:
- 资产:包括音频、视频、图像等素材文件。
- 模型:包括 Stable Diffusion 模型、VAE、ControlNet 等模型文件。
- 自定义节点:包括自定义的节点、插件、插件等。
- Python 依赖:包括各种各样的 Python 库等。
工作流模板
工作流模板是 ComfyUI 中原生支持的模型工作流及自定义节点提供的模型工作流的模板文件。
如何打开ComfyUI的工作流模板
在侧边栏点击 Templates 图标即可打开工作流模板。你也可以通过菜单 工作流 → 浏览工作流模板 打开。
如何使用工作流模板
- 加载模板: 点击你需要使用的任意模板以加载对应的模板工作流
- 下载模型: 在加载模板时,ComfyUI 会自动检查模型文件是否存在,如果模型文件不完整,则会提示你下载模型
- 使用工作流: 确定工作流的需要的各种要素如模型、输入图片、提示词等是完整的,然后点击运行按钮就可以开始使用工作流
节点(Node)
ComfyUI 是一个基于节点的图像生成工具,通过拖拽节点并连接它们来构建复杂的图像生成工作流。
节点是 ComfyUI 工作流的基本组成单元。每个节点都相当于一个独立的模块,有着自己独特的功能。
节点之间通过连线传递数据,我们可以像搭乐高积木一样搭建起来复杂的功能。最终形成一个网络,即工作流(节点图)。
节点的基本概念
- 节点:工作流的基本组成单元,每种节点都有各自特定的功能
- 输入:节点接收的数据,通常是前一个节点的输出
- 输出:节点处理后产生的数据,传递给下一个节点
- 连接:节点之间通过连线传递数据,形成完整的工作流
常见的节点类型
| 分类 | 功能 | 常见节点 |
|---|---|---|
| 模型加载 | 加载各种模型 | Checkpoint Loader、CLIP Loader、UNet Loader、VAE Loader、LoRA Loader |
| 文本处理 | 处理提示词 | CLIP Text Encode |
| 图像生成 | 生成图像 | KSampler、Empty Latent Image |
| 图像处理 | 处理图像 | VAE Encode、VAE Decode、Load Image、Preview Image |
| 控制网络 | 控制生成过程 | ControlNet Loader、ControlNet Apply |
节点如何运作
在 ComfyUI 中,节点通过对数据进行处理以完成某种功能。
ComfyUI 节点几乎总至少有一个输入或输出,多数情况下同时具有多个输入与输出。
- 输入端口:节点接收外部数据的端口。
- 输出端口:节点将处理后的数据发送到其他节点的端口。
节点状态

在 ComfyUI 中,节点有多种状态,下面是一些常见的节点状态:
- 正常(Normal)状态: 正常状态
- 运行(Running)状态: 运行中状态,通常在你开始运行工作流后,正在执行的节点会显示这个状态
- 错误(Error)状态: 节点错误,如果对应的节点输入存在问题,会导致了节点会显示这个状态,并用红色标识对应出错的输入节点,你需要解决对应出错的输入来保证工作流正常运行
- 丢失(Missing)状态: 这个状态通常在你导入了一些工作流后会出现,存在两种可能:
- ComfyCore 原生节点丢失: 通常是因为 ComfyUI 的版本更新了,而你当前使用的 ComfyUI 版本较旧,你需要更新 ComfyUI 来解决这个问题
- 自定义节点丢失: 工作流中你使用了第三方作者开发的自定义节点,而本地ComfyUI环境中尚未安装对应扩展。
节点之间的连接和取消连接
在 ComfyUI 中,节点通过连线连接,从而让数据类型在不同的节点之间进行流转处理。

- 连接: 在上一个节点的输出点中拖拽到下一个节点相同颜色的输入中,即可连接。
- 取消连接: 在被输入的端点,点击后鼠标左键拖拽输入,即可取消连接,或者通过连线的中点菜单来取消连接。
节点外观

- 标题:节点的名称,用于标识节点的功能。
- 输入端口:节点接收外部数据的端口。
- 输出端口:节点将处理后的数据发送到其他节点的端口。
- 组件:节点的功能组件,用于配置节点的行为。
节点上下文菜单
通过在节点上点击鼠标右键,你可以展开对应的节点上下文菜单,例如下面是某个节点的上下文菜单截图。

在节点的右键上下文菜单中你可以
- 调整节点的颜色样式
- 修改标题
- 克隆、复制、删除节点
- ....
自定义节点(第三方节点)
当你在安装了 ComfyUI 后,你将会发现 ComfyUI 中已经包含了许多节点,这些原生的节点称为 Comfy Core 节点,这些节点都是由 ComfyUI 官方维护的。
此外还有许多来自 ComfyUI 社区的众多作者带来的各种各样的 自定义节点,这些自定义节点为 ComfyUI 带来了诸多的扩展功能,大大扩展了 ComfyUI 的功能和能力边界。
什么是自定义节点包(第三方节点)?
自定义节点是第三方作者开发的节点,用于扩展 ComfyUI 功能。当comfyui的官方节点无法满足你的需求时,你可以考虑安装自定义节点。
如图所示,你可以在ComfyUI Desktop中,点击管理附属扩展按钮,打开自定义节点管理器。然后再其中搜索并安装自定义节点。 
这个自定义节点管理器,其实就是comfyui-manager。
使用自定义节点(第三方节点)
注意:详细的使用方法,还是需要看这些作者的文档。
例如当你安装了某一个自定义节点包后。如图所示,安装了KJNodes节点包。

你可以通过两个方法找到安装的自定义节点。如图所示。
- 方法1:在左边侧边栏的节点菜单中找到自定义节点。
- 方法2:在主界面点击右键,然后点击添加节点,即可找到自定义节点。
- 方法3:在主界面双击左键,打开节点搜索框,然后从中找到自定义节点。


之后将自定义节点拖拽到工作流中,即可使用。
推荐的自定义节点包(第三方节点包)
ComfyUI controlnet aux 预处理器节点包(使用ControlNet必备)
comfyui_controlnet_aux 是 ComfyUI 生态中最主流、功能最全的第三方 ControlNet 预处理器节点包,由社区开发者 Fannovel16 维护,是绝大多数 ControlNet 工作流的标配组件。
核心优势:
- 全类型覆盖:集成了几乎所有主流 ControlNet 对应的预处理器
- 多架构兼容:同时适配主流模型架构,参数内置对应优化。
- xinsir 专属适配优化:针对 xinsir 系列模型做了专属坐标适配(scale_stick 开关),是使用 xinsir 模型的官方推荐配套节点。
节点包中核心的检测模型、预处理逻辑,核心代码均移植自开发者 lllyasviel 开发的 ControlNet 官方项目中的 annotator 目录,开发者lllyasviel 也是 ControlNet 技术本身的发明者。
ControlNet 官方项目地址: https://github.com/lllyasviel/ControlNet
comfyui_controlnet_aux 预处理器节点包项目地址: https://github.com/lllyasviel/ControlNet
Efficiency Nodes(效率整合懒人节点,可选,建议安装)
由作者:jags111开发,适用:零基础新手搭建简洁工作流、日常快速出图。
核心特色功能:
- 把原生 7~9 个零散节点合并成单个大节点,不用一根根拉线,刚入门第一天就能跑出图,极大降低学习门槛。
- 内置快捷工具:分辨率预设、LoRA 一键开关、种子随机切换、CFG 步数快捷调节,不用反复拖拽原生节点。
- 完美兼容 SDXL、Qwen-Image、Z-Image-Turbo、Flux、Wan 所有新一代架构模型;
- 分组折叠、参数预设保存,新手搭建工作流效率提升一倍。
入门启蒙神器,所有新手第一个安装的实用节点包。
ComfyUI-Custom-Scripts(界面交互增强脚本,使用embedding必备,建议安装)
作者:pythongosssss。本质上不属于节点包,是浏览器前端增强脚本。用于提升ComfyUI的界面交互体验(自动排版节点、大图预览、历史记录、快捷键)。
核心特色功能:
- 一键自动排布杂乱节点、对齐所有连线,拯救乱糟糟画布;
- 大图预览面板、历史生成图片记录回看、提示词收藏夹;
- 快捷键自定义、节点批量复制参数、画布缩放优化;
- 批量导出工作流、参数备份,拖拽作画顺滑度大幅提升。
必装辅助工具,不分新手老手,永久常驻。
当安装了ComfyUI-Custom-Scripts之后,可以从设置之中找到该节点包的相关配置。 
ComfyUI-Impact-Pack(人像修图天花板,工作室标配)
作者:ltdrdata。该节点包适合于,能搭建基础工作流之后,想要解决 AI 通病:脸崩、手畸形、画面模糊等。
核心特色功能:
- FaceDetailer 人脸 / 手部自动修复(最高频):自动修正扭曲五官、畸形手指,人像写真刚需;
- SAM 图像分割、局部重绘、分区细节增强;
静态绘画创作者第二常用插件。
KJNodes(全能进阶效率工具箱 + 新一代大模型专属优化套件)
作者:kijai。该节点包适合于需要跑 Wan 文生视频、搭建超大复杂工作流、多参数统一调控、12G 小显存跑 Qwen/Flux 大模型的进阶用户。
核心特色功能:
- Set/Get 全局变量(复杂分层工作流才用得上,新手简单工作流纯属多余)
- 模型加载加速 & 显存优化。适配新一代模型
- 时序动画曲线、运镜权重渐变、视频帧调度
本身有两百多个节点塞满菜单,新手打开会极度混乱;绝大多数功能半年内都用不到。

注意:这几个节点包不用全部安装,根据需要选择安装即可。一起安装可能会有冲突,导致工作流运行异常。建议根据需要选择安装。
模型
在 ComfyUI 里,模型一般指真正参与运算的权重文件,例如 checkpoint、VAE、LoRA、ControlNet、放大模型等。
这些模型文件默认不会随ComfyUI安装而附带下载的。常见做法是从网上下载后放进 models 中的对应子文件夹,或按工作流/模板提示补全;
单个模型文件通常是数GB的大小,根据模型的复杂度和参数量而定。因此下载需要预留足够磁盘空间和网络时间。
模型文件格式
常见的模型文件格式:
- .ckpt:传统格式,包含额外训练信息,体积较大。该文件包含模型的所有信息,包括权重、配置、训练记录等。
- .safetensors:推荐使用格式,体积小、加载快、安全。该文件仅包含模型的权重,不包含额外训练信息。
注意:从模型网站下载的模型文件通常是 .safetensors 格式。因为不需要进行模型训练,所以推荐使用 .safetensors 格式。
支持/不支持的模型
ComfyUI 官方支持的模型数量有限,但随着 ComfyUI 与开源社区的发展,支持会持续扩展。一旦某模型纳入支持,通常会在 模型模板库 中增加对应模板,便于一键使用。
另外并非所有模型都能开箱即用。 若你使用的是 ComfyUI 原生支持的模型,请先在 模板库 中确认是否已有匹配的模板与模型提示。
在comfyui中如何使用模型
- 将下载好的模型文件放到正确目录。 例如放入 models 目录下的某个子文件夹中。
- 添加对应的加载器节点。根据模型文件的类型选择对应的加载器(checkpoint、LoRA、VAE 等)节点。
- 在加载器节点中选择要使用的模型文件。
- 把加载器节点连进工作流。若 ComfyUI 一直在运行,重启/刷新应用,以便列表更新。
可视化界面
ComfyUI 提供了一个可供用户操作和组织工作流的可视化界面,用于组织和调试工作流,并生成令人惊叹的作品。
如图是可视化界面 
- ① 主菜单:点击展开功能菜单,含文件操作、帮助菜单等。
- ② 左侧面板入口:显示各个功能面板。
- ASSETS:显示生成的图像、视频等资产。
- Nodes:列出 ComfyUI 原生及第三方节点。
- Models:展示 ComfyUI 启动后检测到的模型信息,启动后若有模型下载等,按快捷键 r 刷新节点定义获取最新模型。
- Workflows:展示本地保存的工作流。
- Templates:提供 ComfyUI 内置工作流模板。
- ③ 底部工具栏:包含一些常用的工具和选项等。
- ④ 顶部区域:显示当前已打开工作流的名称、状态、提示信息等。
- ⑤ 新建工作流按钮:点击新建空白工作流文件。
- ⑥ 右侧控制区:运行和队列控制管理,可运行工作流、查看队列。
- ⑦ 登录状态:默认不显示。
- ⑧ 快捷按钮:打开右侧面板。
- ⑨ 画布导航工具:可切换移动或平移模式,打开小地图、切换节点连线显示。
