ComfyUI 是 Stable Diffusion 的一个基于节点的用户界面,相比 AUTOMATIC1111 更加强大和高效。本文将全面介绍 ComofoUI 的安装、使用和工作流程,帮你快速上手玩转ComfyUI。

ComfyUI 由 Comfyanonymous 开发,目的是学习 Stable Diffusion 的工作原理。Stability AI 已聘请 Comfyanonymous 帮助开发内部工具。

其他工具,如Auto111非常简单易用,我也依然会使用。但是随着我逐渐使用ComfyUI,我发现除了某些特定场景,其他大部分情况已经不再需要Auto111了。这主要是因为ComfyUI的功能太强大了。

ComfyUI vs AUTOMATIC1111

许多新用户从 AUTOMATIC1111 等简单界面转到 ComfyUI,可能会觉得它比较复杂。但 ComfyUI 更加可配置和优化,可以做到:

  • 在图像生成的任意阶段输出预览图片
  • 同时运行两个生成过程以比较取样方法
  • 将文本转图像、图像转图像、补全图像等任务组合到一个流程中,一键完成
  • 由于高度优化,生成速度可达 AUTOMATIC1111 的 3-5 倍
  • 通过学习 ComfyUI,你可以深入理解 Stable Diffusion 的工作原理

ComfyUI 安装

快速安装(Windows, NVIDIA)

  1. 点击此链接下载压缩包
  2. 解压到任意目录,得到 ComfyUI_windows_portable 文件夹
  3. 双击 run_nvidia_gpu.bat 运行(若无 NVIDIA 显卡,运行 run_cpu.bat)

从 Github 克隆安装(Windows、Linux)

  1. Windows 打开命令行提示符,Linux 打开终端
  2. 运行以下命令克隆 ComfyUICopy codegit clone https://github.com/comfyanonymous/ComfyUI cd ComfyUI # NVIDIA GPU pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 xformers -r requirements.txt # AMD GPU python -m pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/rocm5.4.2 -r requirements.txt
  3. 运行 python main.py 启动 ComfyUI

从 Github 克隆安装(Mac)

  1. 按照本指南安装 PyTorch
  2. 终端运行以下命令克隆 ComfyUICopy codegit clone https://github.com/comfyanonymous/ComfyUI cd ComfyUI pip install -r requirements.txt python main.py --force-fp16

ComfyUI的基本控制

使用鼠标滚轮或触控板上的两个手指捏合来放大和缩小。

拖动并按住输入或输出的点以形成连接。您只能在相同类型的输入和输出之间连接。

按住左键并拖动可在工作区中移动。

右键空白处选择 Add Node 添加节点。双击空白处可以搜索节点。

CTRL + 拖动可多选节点,SHIFT + 拖动可移动节点。

右键节点 > Color 可更改节点颜色。

按Ctrl-0(Windows)或Cmd-0(Mac)显示队列面板。

点击 Queue Prompt 后,流程从左到右执行节点,最终输出结果。

ComfyUI 节点解析

了解节点的作用,可以更好地使用 ComfyUI。

Load Checkpoint

使用Load Checkpoint节点选择一个模型。一个Stable Diffusion模型有三个主要部分:

  • MODEL:潜在空间中的噪声预测模型。
  • CLIP:语言模型预处理正向和反向提示。
  • VAE:变分自动编码器在像素空间和潜在空间之间转换图像。

CLIP Text Encode

使用 CLIP 对提示词编码为模型可理解的格式。CLIP文本编码节点获取提示并将其馈送到CLIP语言模型。CLIP是OpenAI的语言模型,将提示中的每个单词转换为嵌入。

KSampler

KSampler是Stable Diffusion中图像生成的核心。采样器将随机图像降噪为与您的提示匹配的图像。

以下是KSampler节点中的参数。

  • Seed:随机种子值控制潜在图像的初始噪声,从而控制最终图像的构成。
  • Control_after_generation:每次生成后种子应如何更改。它可以是获取随机值(randomize)、增加1(increment)、减少1(decrement),或保持不变(fixed)。
  • Step:采样步骤数。数字越高,数值过程中的伪影越少。
  • Sampler_name:设置采样算法。
  • Scheduler:控制每个步骤中的噪声水平应如何变化。
  • Denoise:初噪声应被去噪过程擦除的量。1表示全部。

VAEDecode

使用 VAE 将潜在空间图像解码为像素空间,以便显示和保存。

下载模型

模型放入对应文件夹:

  • checkpoints:ComfyUI/models/checkpoints
  • VAE:ComfyUI/models/vae
  • LoRAs:ComfyUI/models/loras
  • upscalers:ComfyUI/models/upscaler

在ComfyUI上生成第一张图像 | 文字转图像

下面是使用ComfyUI的最简单的方式。在默认工作流程中:

  1. 选择模型

首先,在Load Checkpoint节点中选择一个Stable Diffusion检查点模型。点击模型名称显示可用模型列表。

如果节点太小,可以使用鼠标滚轮或触控板上的两个手指捏合来放大缩小。

如果点击模型名称无效,可能是未安装模型或未在A1111中配置使用现有模型。

  1. 输入提示和消极提示

找到两个标记为CLIP文本编码(提示)的节点。可以在这里输入提示和负面提示词。

可以使用语法(关键字:权重)来控制关键字的权重。例如,(关键字:1.2)以增加其效果。 (关键字:0.8)以降低其效果。

  1. 单击Queue Prompt运行工作流程。稍等片刻,就会看到生成的第一张图像。

图像转图像工作流程

Img2img工作流程是Stable Diffusion中的另一个主流工作流程。它根据提示和输入图像生成图像。

如何更新ComfyUI

要更新ComfyUI:

  • 点击菜单中的Manager。
  • 点击Update ComfyUI。
  • 完全重启ComfyUI。

如何安装缺失的自定义节点

你可能没有安装工作流程所需的所有自定义节点。加载工作流文件后,请执行以下步骤安装缺失的自定义节点。

  • 点击菜单中的Manager。
  • 点击 Install Missing custom Nodes。
  • 完全重启ComfyUI。
相关阅读  使用AI图片放大器(upscaler)提升图片细节

如何更新自定义节点

您可以使用ComfyUI管理器更新自定义节点。

  • 点击菜单中的Manager。
  • 点击Fetch Updates。这可能需要一段时间才能完成。
  • 点击Install Custom nodes。
  • 如果某个已安装的自定义节点有可用的更新,则会在该节点旁边出现一个新的Update按钮。
  • 点击Update以更新该节点。
  1. 重启ComfyUI。

简单的LoRA工作流程

这是可能的最简单的LoRA工作流程:带有LoRA和检查点模型的文本转图像。

要使用该工作流程:

  • 选择一个检查点模型。
  • 选择一个LoRA。
  • 修改提示和负提示。
  • 单击Queue Prompt。

ComfyUI的快捷键和技巧

复制和粘贴

选择一个节点并按Ctrl+C复制。

Ctrl+V粘贴。

Ctrl+Shift+V粘贴保留输入连接。

移动多个节点

创建一个组以一起移动一组节点。

或者,按住Ctrl并拖动以创建一个框来选择多个节点。您也可以按住Ctrl来选择多个节点。

要移动它们,请按住Shift并移动鼠标。

静音节点

您可以通过将节点设为静音来暂时禁用该节点。选择一个节点并按Ctrl+M将一个节点设为静音。

没有键盘快捷键可以静音组。您可以在右键单击菜单中选择旁路组节点以绕过它。或者静音组中的第一个节点以禁用它。

最小化节点

点击节点左上角的点会最小化它。

生成图像

按Ctrl+Enter将工作流程放入队列并生成图像。

Categorized in: