问答社区
最强大的模块化扩散模型 GUI、API 和带有图形/节点接口的后端。
舒适用户界面
最强大和模块化的扩散模型 GUI 和后端。
该用户界面将允许您使用基于图形/节点/流程图的界面设计和执行高级稳定扩散管道。有关一些工作流程示例并了解 ComfyUI 可以做什么,您可以查看:
特征
- 节点/图形/流程图界面用于实验和创建复杂的稳定扩散工作流程,无需编写任何代码。
- 完全支持SD1.x、SD2.x、SDXL、稳定视频扩散、稳定级联、SD3和稳定音频
- LTX-视频--通量--麻糬
- 异步队列系统
- 许多优化:仅重新执行工作流程中在执行之间发生变化的部分。
- 智能内存管理:可以在低至 1GB vram 的 GPU 上自动运行模型。
- 即使您没有 GPU,也可以使用:(
--cpu
慢) - 可以加载 ckpt、safetensors 和扩散器模型/检查点。独立 VAE 和 CLIP 模型。
- 嵌入/文本反转
- Loras(常规、Locon 和 Loha)
- 超网络
- 从生成的 PNG、WebP 和 FLAC 文件加载完整的工作流程(带种子)。
- 将工作流程保存/加载为 Json 文件。
- 节点界面可用于创建复杂的工作流程,例如招聘修复或更高级的工作流程。
- 区域构成
- 使用常规模型和修复模型进行修复。
- ControlNet 和 T2I 适配器
- 高档型号(ESRGAN、ESRGAN 变体、SwinIR、Swin2SR 等...)
- unCLIP 模型
- 格力根,模型合并,LCM 模型和 Loras,SDXL涡轮增压,灵气流,浑源迪特,使用TAESD进行潜在预览
- 启动速度非常快。
- 完全离线工作:永远不会下载任何东西。
- 用于设置模型搜索路径的配置文件。
快捷方式:
按键绑定 | 解释 |
---|---|
Ctrl +Enter |
将当前图排队以进行生成 |
Ctrl + Shift +Enter |
将当前图排队为第一个生成图 |
Ctrl + Alt +Enter |
取消当前生成 |
Ctrl + Z / Ctrl +Y |
撤消/重做 |
Ctrl +S |
保存工作流程 |
Ctrl +O |
加载工作流程 |
Ctrl +A |
选择所有节点 |
Alt +C |
折叠/展开选定的节点 |
Ctrl +M |
静音/取消静音选定的节点 |
Ctrl +B |
绕过选定的节点(就像从图中删除节点并重新连接电线一样) |
Delete /Backspace |
删除选定的节点 |
Ctrl +Backspace |
删除当前图表 |
Space |
按住时移动画布并移动光标 |
Ctrl / Shift +Click |
将单击的节点添加到选择中 |
Ctrl + C / Ctrl +V |
复制并粘贴选定的节点(无需维护与未选定节点的输出的连接) |
Ctrl + C / Ctrl + Shift +V |
复制并粘贴选定的节点(维护从未选定节点的输出到粘贴节点的输入的连接) |
Shift +Drag |
同时移动多个选定节点 |
Ctrl +D |
加载默认图表 |
Alt ++ |
画布放大 |
Alt +- |
画布缩小 |
Ctrl + Shift + LMB + 垂直拖动 |
画布放大/缩小 |
P |
固定/取消固定选定的节点 |
Ctrl +G |
对选定的节点进行分组 |
Q |
切换队列的可见性 |
H |
切换历史记录的可见性 |
R |
刷新图表 |
双击鼠标左键 | 打开节点快速搜索调色板 |
Shift + 拖动 |
一次移动多根电线 |
Ctrl + Alt + 鼠标左键 |
断开单击插槽中的所有电线 |
Ctrl
Cmd
对于 macOS 用户也可以替换为
安装中-视窗:
有一个适用于 Windows 的便携式独立版本,应该可以在 Nvidia GPU 上运行,或者仅在发布页面上在您的 CPU 上运行。
只需下载、使用7-Zip解压并运行即可。确保将稳定扩散检查点/模型(巨大的 ckpt/safetensors 文件)放入:ComfyUI\models\checkpoints
如果解压时遇到问题,请右键单击该文件 -> 属性 -> 取消阻止
如何在另一个 UI 和 ComfyUI 之间共享模型?
请参阅配置文件来设置模型的搜索路径。在独立 Windows 版本中,您可以在 ComfyUI 目录中找到此文件。将此文件重命名为 extra_model_paths.yaml 并使用您喜欢的文本编辑器进行编辑。
Jupyter笔记本:
要在 paperspace、kaggle 或 colab 等服务上运行它,您可以使用:Jupyter Notebook
手动安装(Windows、Linux)
请注意,某些依赖项尚不支持 python 3.13,因此建议使用 3.12。
Git 克隆这个仓库。
将您的 SD 检查点(巨大的 ckpt/safetensors 文件)放入:models/checkpoints
将您的 VAE 放入:models/vae
AMD GPU(仅限 Linux)
AMD 用户如果尚未安装 rocm 和 pytorch,可以使用 pip 安装,这是安装稳定版本的命令:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.2
这是使用 ROCm 6.2 安装 nightly 的命令,它可能会有一些性能改进:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm6.2
英伟达:
Nvidia 用户应使用以下命令安装稳定的 pytorch:
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu124
这是每晚安装 pytorch 的命令,这可能会提高性能:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu124
故障排除:
如果出现“Torch 未在启用 CUDA 的情况下编译”错误,请使用以下命令卸载 torch:
pip uninstall torch
并使用上面的命令再次安装。
依赖关系:
通过在 ComfyUI 文件夹中打开终端来安装依赖项:
pip install -r requirements.txt
此后,您应该已安装好所有内容并可以继续运行 ComfyUI。
其他的:
英特尔 GPU
英特尔 GPU 支持适用于英特尔 Pytorch 扩展 (IPEX) 支持的所有英特尔 GPU,并满足安装页面中列出的支持要求。选择您的平台和安装方法,然后按照说明进行操作。步骤如下:
- 如果需要,首先安装上面链接的 Windows 和 Linux 的 IPEX 安装页面中列出的或更新的驱动程序或内核。
- 按照说明为您的平台安装英特尔的 oneAPI Basekit。
- 使用适用于您的平台的安装页面中提供的说明安装 IPEX 软件包。
- 按照Windows 和 Linux 的ComfyUI 手动安装说明进行操作,并在安装完所有内容后按上述方式正常运行 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
注意:请记住将您的模型、VAE、LoRA 等添加到相应的 Comfy 文件夹中,如ComfyUI 手动安装中所述。
DirectML(Windows 上的 AMD 卡)
pip install torch-directml
然后您可以使用以下命令启动 ComfyUI:python main.py --directml
跑步
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
AMD ROCm 技巧
您可以使用以下命令在 RDNA3 和可能的其他 AMD GPU 上的 ComfyUI 中的 pytorch 2.5 上启用实验性内存高效关注:
TORCH_ROCM_AOTRITON_ENABLE_EXPERIMENTAL=1 python main.py --use-pytorch-cross-attention
您还可以尝试设置此环境变量,PYTORCH_TUNABLEOP_ENABLED=1
这可能会加快速度,但初始运行速度会非常慢。
笔记
只有具有所有正确输入的输出的图表部分才会被执行。
只有每次执行到下一次执行之间发生变化的图表部分才会被执行,如果您提交相同的图表两次,则只会执行第一次。如果您更改图表的最后一部分,则只有您更改的部分和依赖于它的部分才会被执行。
在网页上拖动生成的 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
如何展示高质量的预览?
用于--preview-method auto
启用预览。
默认安装包括低分辨率的快速潜在预览方法。要使用TAESD启用更高质量的预览,请下载taesd_decoder.pth、taesdxl_decoder.pth、taesd3_decoder.pth 和 taef1_decoder.pth并将它们放在models/vae_approx
文件夹中。安装后,重新启动 ComfyUI 并启动它以--preview-method taesd
启用高质量预览。
如何使用TLS/SSL?
通过运行以下命令生成自签名证书(不适合共享/生产使用)和密钥:openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650 -nodes -subj "/C=XX/ST=StateName/L=CityName/O=CompanyName/OU=CompanySectionName/CN=CommonNameOrHostname"
用于--tls-keyfile key.pem --tls-certfile cert.pem
启用 TLS/SSL,现在可以使用https://...
而不是http://...
.
注意:Windows 用户可以使用alexisrolland/docker-openssl或第 3 方二进制发行版之一来运行上面的命令示例。
如果您使用容器,请注意卷安装
-v
可以是相对路径,因此... -v ".\:/openssl-certs" ...
将在命令提示符或 powershell 终端的当前目录中创建密钥和证书文件。
支持和开发频道
矩阵空间:#comfyui_space:matrix.org(它就像不和谐但开源)。
另请参阅: https: //www.comfy.org/
前端开发
截至 2024 年 8 月 15 日,我们已过渡到新的前端,该前端现在托管在单独的存储库中:ComfyUI Frontend。该存储库现在在目录下托管已编译的 JS(来自 TS/Vue)web/
。
报告问题和请求功能
对于与前端相关的任何错误、问题或功能请求,请使用ComfyUI Frontend 存储库。这将帮助我们更有效地管理和解决前端特定的问题。
使用最新的前端
新前端现在是 ComfyUI 的默认前端。但请注意:
- ComfyUI 主存储库中的前端每周更新一次。
- 每日版本可在单独的前端存储库中获取。
要使用最新的前端版本:
-
对于最新的每日版本,请使用以下命令行参数启动 ComfyUI:
--front-end-version Comfy-Org/ComfyUI_frontend@latest
-
对于特定版本,替换
latest
为所需的版本号:--front-end-version Comfy-Org/ComfyUI_frontend@1.2.2
这种方法使您可以轻松地在稳定的每周发布和前沿的每日更新之间切换,甚至可以在用于测试目的的特定版本之间切换。
访问旧版前端:
如果您出于任何原因需要使用旧版前端,可以使用以下命令行参数访问它:
--front-end-version Comfy-Org/ComfyUI_legacy_frontend@latest
这将使用ComfyUI 旧版前端存储库中保存的旧版前端的快照。