舒适用户界面
最强大、模块化的稳定扩散 GUI 和后端。
该用户界面将允许您使用基于图形/节点/流程图的界面设计和执行高级稳定扩散管道。有关一些工作流程示例并了解 ComfyUI 可以做什么,您可以查看:
ComfyUI 示例
安装 ComfyUI
特征
- 节点/图形/流程图界面用于实验和创建复杂的稳定扩散工作流程,无需编写任何代码。
- 完全支持SD1.x、SD2.x、SDXL和稳定视频扩散
- 异步队列系统
- 许多优化:仅重新执行工作流程中在执行之间发生变化的部分。
- 命令行选项:
--lowvram
使其在显存小于 3GB 的 GPU 上运行(在显存较低的 GPU 上自动启用) - 即使您没有 GPU,也可以使用:(
--cpu
慢) - 可以加载 ckpt、safetensors 和扩散器模型/检查点。独立 VAE 和 CLIP 模型。
- 嵌入/文本反转
- Loras(常规、Locon 和 Loha)
- 超网络
- 从生成的 PNG 文件加载完整的工作流程(带有种子)。
- 将工作流程保存/加载为 Json 文件。
- 节点界面可用于创建复杂的工作流程,例如招聘修复或更高级的工作流程。
- 区域构成
- 使用常规模型和修复模型进行修复。
- ControlNet 和 T2I 适配器
- 高档型号(ESRGAN、ESRGAN 变体、SwinIR、Swin2SR 等...)
- unCLIP 模型
- 格力根
- 模型合并
- LCM 模型和 Loras
- SDXL涡轮增压
- 使用TAESD进行潜在预览
- 启动速度非常快。
- 完全离线工作:永远不会下载任何东西。
- 用于设置模型搜索路径的配置文件。
工作流程示例可以在示例页面上找到
快捷方式
按键绑定 | 解释 |
---|---|
Ctrl + Enter | 将当前图排队以进行生成 |
Ctrl + Shift + Enter | 将当前图排队为第一个生成图 |
Ctrl + Z/Ctrl + Y | 撤销重做 |
Ctrl + S | 保存工作流程 |
Ctrl + O | 加载工作流程 |
Ctrl + A | 选择所有节点 |
Alt+C | 折叠/展开选定的节点 |
Ctrl+M | 静音/取消静音选定的节点 |
Ctrl + B | 绕过选定的节点(就像从图中删除节点并重新连接电线一样) |
删除/退格 | 删除选定的节点 |
Ctrl + 删除/退格键 | 删除当前图表 |
空间 | 按住时移动画布并移动光标 |
Ctrl/Shift + 单击 | 将单击的节点添加到选择中 |
Ctrl + C/Ctrl + V | 复制并粘贴选定的节点(无需维护与未选定节点的输出的连接) |
Ctrl + C/Ctrl + Shift + V | 复制并粘贴选定的节点(维护从未选定节点的输出到粘贴节点的输入的连接) |
Shift + 拖动 | 同时移动多个选定节点 |
Ctrl + D | 加载默认图表 |
问 | 切换队列的可见性 |
H | 切换历史记录的可见性 |
右 | 刷新图表 |
双击鼠标左键 | 打开节点快速搜索调色板 |
对于 macOS 用户,Ctrl 也可以替换为 Cmd
安装中
视窗
有一个适用于 Windows 的便携式独立版本,它应该适用于在 Nvidia GPU 上运行,或者仅在发布页面上在您的 CPU 上运行。
直接链接下载
只需下载、使用7-Zip解压并运行即可。确保将稳定扩散检查点/模型(巨大的 ckpt/safetensors 文件)放入:ComfyUImodelscheckpoints
如果解压时遇到问题,请右键单击该文件 -> 属性 -> 取消阻止
如何在另一个 UI 和 ComfyUI 之间共享模型?
请参阅配置文件来设置模型的搜索路径。在独立 Windows 版本中,您可以在 ComfyUI 目录中找到此文件。将此文件重命名为 extra_model_paths.yaml 并使用您喜欢的文本编辑器进行编辑。
Jupyter笔记本
要在 paperspace、kaggle 或 colab 等服务上运行它,您可以使用我的Jupyter Notebook
手动安装(Windows、Linux)
Git 克隆这个仓库。
将您的 SD 检查点(巨大的 ckpt/safetensors 文件)放入:models/checkpoints
将您的 VAE 放入:models/vae
注意:pytorch stable 尚不支持 python 3.12。如果您有 python 3.12,则必须使用 pytorch 的 nightly 版本。如果遇到问题,您应该尝试使用 python 3.11。
AMD GPU(仅限 Linux)
AMD 用户如果尚未安装 rocm 和 pytorch,可以使用 pip 安装,这是安装稳定版本的命令:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.6
这是使用 ROCm 5.7 安装 nightly 的命令,它有一个 python 3.12 包,可能会有一些性能改进:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm5.7
英伟达
Nvidia 用户应使用以下命令安装稳定的 pytorch:
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121
这是安装 pytorch nightly 的命令,它有一个 python 3.12 包,并且可能有性能改进:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu121
故障排除
如果出现“Torch 未在启用 CUDA 的情况下编译”错误,请使用以下命令卸载 torch:
pip uninstall torch
并使用上面的命令再次安装。
依赖关系
通过在 ComfyUI 文件夹中打开终端来安装依赖项:
pip install -r requirements.txt
此后,您应该已安装好所有内容并可以继续运行 ComfyUI。
其他的:
英特尔弧
苹果 Mac 芯片
您可以在任何最新 macOS 版本的 Apple Mac 芯片(M1 或 M2)中安装 ComfyUI。
- 每晚安装 pytorch。有关说明,请阅读Mac Apple 开发人员指南上的 Accelerated PyTorch 培训(确保每晚安装最新的 pytorch)。
- 请遵循适用于 Windows 和 Linux 的ComfyUI 手动安装说明。
- 安装 ComfyUI依赖项。如果您有另一个 Stable Diffusion UI,您也许可以重用依赖项。
- 通过运行启动 ComfyUI
python main.py --force-fp16
。请注意,仅当您每晚安装了最新的 pytorch 时,--force-fp16 才会起作用。
注意:请记住将您的模型、VAE、LoRA 等添加到相应的 Comfy 文件夹中,如ComfyUI 手动安装中所述。
DirectML(Windows 上的 AMD 卡)
pip install torch-directml
然后您可以使用以下命令启动 ComfyUI:python main.py --directml
我已经安装了另一个用于稳定扩散的 UI,我真的需要安装所有这些依赖项吗?
你不知道。如果您安装了另一个 UI 并使用其自己的 python venv,则可以使用该 venv 来运行 ComfyUI。您可以打开您最喜欢的终端并激活它:
source path_to_other_sd_gui/venv/bin/activate
或在 Windows 上:
使用 Powershell:"path_to_other_sd_guivenvScriptsActivate.ps1"
使用cmd.exe:"path_to_other_sd_guivenvScriptsactivate.bat"
然后您可以使用该终端运行 ComfyUI,而无需安装任何依赖项。请注意,venv 文件夹可能会被称为其他名称,具体取决于 SD UI。
跑步
python main.py
对于 ROCm 未正式支持的 AMD 卡
如果遇到问题,请尝试使用以下命令运行它:
对于 6700、6600 以及其他 RDNA2 或更早版本:HSA_OVERRIDE_GFX_VERSION=10.3.0 python main.py
对于 AMD 7600 以及其他 RDNA3 卡:HSA_OVERRIDE_GFX_VERSION=11.0.0 python main.py
笔记
只有具有所有正确输入的输出的图表部分才会被执行。
仅执行从每次执行到下一次执行的图表中发生变化的部分,如果您提交相同的图表两次,则仅执行第一次。如果您更改图表的最后一部分,则只有您更改的部分和依赖于它的部分才会被执行。
在网页上拖动生成的 png 或加载它将为您提供完整的工作流程,包括用于创建它的种子。
您可以使用 () 来更改单词或短语的强调,例如:(好代码:1.2)或(坏代码:0.8)。() 的默认强调值为 1.1。要在实际提示中使用 () 字符,请转义它们,如 ( 或 )。
您可以使用 {day|night} 作为通配符/动态提示。使用此语法,每次您对提示进行排队时,前端都会随机将“{wild|card|test}”替换为“wild”、“card”或“test”。要在实际提示中使用 {} 字符,请转义它们,例如:{ 或 }。
动态提示还支持 C 风格的注释,例如// comment
或/* comment */
。
要在文本提示中使用文本反转概念/嵌入,请将它们放在 models/embeddings 目录中,并在 CLIPTextEncode 节点中使用它们,如下所示(您可以省略 .pt 扩展名):
embedding:embedding_filename.pt
如何提高生成速度?
确保使用常规加载器/加载检查点节点来加载检查点。它将根据您的 GPU 自动选择正确的设置。
您可以设置此命令行设置以在某些交叉注意操作中禁用向上转换到 fp32,这将提高您的速度。请注意,这很可能会在 SD2.x 型号上产生黑色图像。如果您使用 xformers 或 pytorch 注意此选项不会执行任何操作。
--dont-upcast-attention
如何展示高质量的预览?
用于--preview-method auto
启用预览。
默认安装包括低分辨率的快速潜在预览方法。要使用TAESD启用更高质量的预览,请下载taesd_decoder.pth(适用于 SD1.x 和 SD2.x)和taesdxl_decoder.pth(适用于 SDXL)模型并将它们放在models/vae_approx
文件夹中。安装后,重新启动 ComfyUI 以启用高质量预览。
支持和开发频道
矩阵空间:#comfyui_space:matrix.org(它就像不和谐但开源)。
质量保证
你为什么做这个?
我想了解稳定扩散的详细工作原理。我还想要一些干净而强大的东西,让我能够不受限制地尝试 SD。
这是给谁的?
这适用于任何想要使用 SD 制作复杂工作流程或想要了解更多 SD 工作原理的人。该界面紧密遵循 SD 的工作原理,并且代码应该比其他 SD UI 更容易理解。