从零开始教你玩转ComfyUI-保姆级部署教程-手把手带你ComfyUI工作流搭建

第一节:认识ComfyUI并安装

本教程专为初学者设计,详细介绍了 2024 年最新版的SD ComfyUI的使用方法。通过逐步指导,让你无需任何基础,快速学会并使用这一强大的AI绘图工具。

1、什么是comfyui

ComfyUI就像拥有一支神奇魔杖,可以轻松创造出令人惊叹的AI生成艺术。从本质上讲,ComfyUI是构建在Stable Diffusion之上的基于节点的图形用户界面(GUI),而Stable Diffusion是一种最先进的深度学习模型,可以根据文本描述生成图像。 但ComfyUI真正特别之处在于,它如何让像你这样的艺术家释放创造力,将你最疯狂的想法变为现实。

想象一下有一块数字画布,你可以通过连接不同的节点来构建自己独特的图像生成工作流,每个节点代表一个特定的功能或操作。 就像为你的AI生成杰作构建一个视觉食谱!

2、ComfyUI VS. WebUI

WebUI是Stable Diffusion的默认GUI。让我们对比一下ComfyUI的优缺点:

✅ 使用ComfyUI的好处:

  1. 轻量级: 运行速度快,效率高。
  2. 灵活性: 高度可配置以满足你的需求。
  3. 透明度: 数据流可见,易于理解。
  4. 易于分享: 每个文件代表一个可重现的工作流。
  5. 适合原型开发: 使用图形界面而不是编码来创建原型。

❌ 使用ComfyUI的缺点:

  1. 界面不一致: 每个工作流可能有不同的节点布局。
  2. 操作门槛较高:由于ComfyUI采用节点式的工作流,对于初学者来说可能需要一段时间来熟悉和掌握。
  3. 生态相对较小:尽管ComfyUI的基本功能齐全,但在插件和扩展工具方面,其生态可能不如webui丰富。不够现在很多插件也都是先支持ComfyUI了。这个后续的生态会不断完善,不是什么大问题

3、ComfyUI 的硬件配置要求

组件要求
GPU显存至少4GB以上,推荐使用 NVIDIA 显卡,建议使用 RTX3060 以上显卡
显存小于3GB的GPU可通过–lowvram选项运行,但性能可能下降。
CPU支持在CPU上运行,但速度较慢,使用–cpu选项。
内存建议系统内存至少8GB。
存储空间非常建议使用固态硬盘来加快模型文件的加载运行速度,建议至少40GB以上的硬盘空间。

4、ComfyUI 的安装方法

这边推荐和WebUI一样使用秋叶大佬的一键整合包安装ComfyUI非常简单

这个是秋叶大佬分享的整合包下载链接以及一些简单的工作流分享

【下载链接】

网盘:通过网盘分享的文件:comfy一键启动器-工作流分享
链接: https://pan.baidu.com/s/1AkjW2v4qCENij2YyGGJ5wA?pwd=mvy7 提取码: mvy7
–来自百度网盘超级会员v3的分享

如果不想使用网盘也可以扫码进群获取完整的安装包

下载压缩包

image.png

解压整合包文件

解压到你想要安装 ComfyUI 的本地目录。

启动 A绘图启动器

这一步主要查看 A绘图启动器 是否能正常运行,解压后的文件夹中找到 A绘图启动器.exe文件,双击即可启动秋叶的ComfyUI整合包,启动后应该会自动根据你的系统语言进行显示。

image.png

打开后是这样的

image.png

在设置中可以修改我们的语言

image.png

下载了模型的小伙伴记得把模型放在这个文件夹内

image.png

我们点击启动,能看到这个页面就是安装成功啦

image.png

中文提示词翻译节点安装

使用到的节点也是非常有名的mixlab节点,我们在管理器安装

或者通过URL安装:https://github.com/shadowcz007/comfyui-mixlab-nodes

手动安装的话我们就下载github主页的项目压缩包解压到我们的ComfyUI \ custom_nodes文件夹中即可

安装完成记得重启哦

image.png

使用节点

我们按下图就可以把中文提示词节点添加到我们的画布中

image.png

但是这个时候还是不可以用的

想要在本地翻译,我们还需要下载翻译的大语言模型

下载完成后我们放在 ComfyUI / models / llamafile/ 文件夹下,没有llamafile文件夹我们需要自己创建一个哦

作者强烈推荐:Phi-3-mini-4k-instruct-GGUF 下载地址:https://huggingface.co/microsoft/Phi-3-mini-4k-instruct-gguf/tree/main

image.png

作者建议备选:llama3_if_ai_sdpromptmkr_q2k 下载地址:https://hf-mirror.com/impactframes/llama3_if_ai_sdpromptmkr_q2k/tree/main

image.png

image.png

如何我点击添加提示词队列就可以使用了哦

image.png

生成打开是自动进行一个AI的扩写,我觉得不太好用所以不建议开启

image.png

值得注意的是第一次使用时需要科学上网,不然会报网络错误哦

ComfyUI用户界面说明,包含基本操作,菜单设置,节点操作等常见用户界面选项

菜单面板相关功能说明

image.png

如上图,对应功能说明已注释,下面为对应说明内容:

  • 拖动按钮: 点击后可以拖动菜单面板移动位置
  • 队列大小: 当前图片生成任务数量
  • 设置按钮: 点击后打开ComfyUI设置面板
  • 添加提示词队列: 将将当前工作流加入图片生成队列(最后面的位置),快捷键 Ctrl+Enter
  • 更多选项: 图片生成相关选项,如单次生成数量,当参数变化时自动执行图片生成任务等

image.png

批次数量: 单次图片生成的图片数 Auto Queue(自动队列): 根据设定条件将当前工作流自动加入生图队列

  • instant-实时: 实时生成
  • change-有变化时: 当工作流存在参数变动时,执行图片生成

前台队列: 将当前工作流加入图片生成队列并作为最优先的队列

显示队列: 显示当前的图片生成任务列表

image.png

  • 运行中: 当前正在进行图片生成的队列
  • 等待中: 当前正在排队进行图片生成的队列
  • 清除队列: 删除生图队列信息
  • 重刷新: 刷新队列信息

显示历史: 显示图片生成的历史记录和信息

image.png

历史列表: 图片生成的历史记录,点击加载可将对应的图片生成参数载入工作流中,点击删除则删除对应图片生成记录信息 清除历史: 删除图片生成的历史记录 重刷新: 刷新历史记录

  • 保存: 将当前工作流保存为JSON文件
  • 加载: 从JSON文件或者comfyUI生成的图片中加载工作流
  • 重刷新: 刷新当前界面
  • 剪贴空间: 显示复制到剪贴空间的内容

当你完成图片生成后,可以在预览/保存图片节点上,右键复制对应的图片,此时再点击剪贴空间,可展示当前复制的图片,你可将图片载入支持粘贴的节点(如: 加载图像节点)

image.png

  • 清除: 清除当前工作空间所有节点内容
  • 加载默认: 加载ComfyUI默认工作流

节点介绍

一、Load Checkpoint 节点

在 ComfyUI 中,Load Checkpoint 节点是一个非常重要的核心节点。其功能是加载 checkpoint 大模型,常用的大模型有 sd1.0、sd1.5、sd2.0、sd3.0、sdXL 等。

image.png

输入:

ckpt_name -> 自行选择在模型网站下载好的大模型(在用 WebUI 时下载了大模型的可以共享路径文件,节省磁盘空间)

输出:

MODEL -> 该模型用于对潜空间图片进行去噪

CLIP -> 该模型用于对 Prompt 进行编码

VAE -> 该模型用于对潜在空间的图像进行编码和解码

注意:·StableDIffusion 大模型(checkpoint)内置有 CLIP 和 VAE 模型

另加载大型模型时,可能会耗费较长时间或占用大量内存,确保系统资源充足,避免因资源不足而导致的加载失败。

二、Load Checkpoint with config 节点

该节点是一个高级的节点,用于加载 checkpoint 大模型并同时应用 config 文件中指定的设置。

image.png

输入:

Config_name -> 指定要加载的检查点文件的路径

Ckpt_name -> 自行选择在模型网站下载好的大模型

输出:

MODEL -> 该模型用于对潜空间图片进行去噪

CLIP -> 该模型用于对 Prompt 进行编码

VAE -> 该模型用于对潜在空间的图像进行编码和解码

**注意:**确保 checkpoint 文件和 config 文件与当前使用的 ComfyUI 版本兼容

三、CLIP Set Last Layer 节点

对 CLIP 进行微调并调整最后一层(Set Last Layer)。该节点用来设置选择 CLIP 模型在第几层的输出数据,提高模型在目标任务上的表现。

image.png

输入:

clip -> 接收用于对 prompt 进行编码的 CLIP 模型

输出:

CLIP -> 具有新设置的输出层的 CLIP 模型。

参数:

stop_at_clip_layer -> 设置 CLIP 模型在第几层进行数据输出

**注意:**CLIP 模型对 prompt 进行编码的过程中,可以理解为对原始文本进行层层编码,该参数就是选择我们需要的一层编码信息,去引导模型扩散。

四、CLIP Text Encode (Prompt)节点

该节点用来输入正反向提示词,也就是“文生图”,“文生视频”中“文”的输入位置

image.png

输入:

clip -> 接收用于对 prompt 进行编码的 CLIP 模型

输出:

CONDITIONING -> 将文本信息通过 CLIP 模型编码,形成引导模型扩散的条件信息

参数:

文本输入框 -> 输入需要模型生成的文本信息,正向提示词及反向提示词

**注意:**当前 prompt 仅支持英文的输入,但可通过安装插件实现中文实时翻译

五、KSampler 节点

该节点专门用于逐步减少潜在空间图像中的噪声,改善图像质量和清晰度。

image.png

输入:

model -> 接收来自大模型的数据流

positive -> 接收经过 clip 编码后的正向提示词的条件信息(CONDITIONING)

negative -> 接收经过 clip 编码后的反向提示词的条件信息(CONDITIONING)

latent_image -> 接收潜空间图像信息

输出:

LATENT -> 经过 KSampler 采样器进行去噪后的潜空间图像

参数:

seed -> 在去除图像噪声过程中使用的随机数种子。种子数有限,影响噪声生成的结果

control_after_generate -> 指定种子生成后的控制方式

fixed 代表固定种子,保持不变

increment 代表每次增加 1

decrement 代表每次减少 1

randomize 代表随机选择种子

steps -> 对潜在空间图像进行去噪的步数。步数越多,去除噪声的效果可能越显著

cfg -> 提示词引导系数,表示提示词对最终结果的影响程度。过高的值可能会产生不良影响。

sampler_name -> 选择的采样器名称,不同的采样器类型可以影响生成图像的效果,大家可以根据需求进行选择和实验

scheduler -> 选择的调度器名称,影响生成过程中的采样和控制策略,推荐配置可提供更好的结果

denoise -> 去噪或重绘的幅度,数值越大,图像变化和影响越显著。在高清修复等任务中,通常使用较小的值以保持图像细节和质量

六、Empty Latent image 节点

该节点用来控制纯噪声的潜空间图像及比例。

image.png

输出:

LATENT -> 输出指定形状和数量的潜空间图像

参数:

width -> 要生成潜空间图像的宽度

height -> 要生成潜空间图像的高度

batch_size -> 需要生成多少张潜空间图像

**注意:**sd1.0、sd1.5 等模型来说最佳尺寸为 512*512

sd2.0、sd3.0 等模型来说最佳尺寸为 1024*1024

七、VAE Decode 节点

该节点用来将潜空间图像解码到像素级的图像。

image.png

输入:

samples -> 接收经过 KSampler 采样器处理后的潜在空间图像, 用于后续的处理或展示

vae -> 接收用于解码潜在空间图像的 VAE 模型, 大部分情况下,模型的检查点(checkpoint)会包含 VAE,当然也可以单独加载一个 VAE 模型

输出:

IMAGE -> 输出经过 VAE 解码后可直接查看的图像

八、Save image 节点

该节点用来保存 image 图像

image.png

输入:

images -> 保存图像

Tips:一般保存的图像会在你的 ComfyUI 文件夹中(eg:安装盘:\Comfyui\ComfyUI\output )

保存工作流

在ComfyUI中要如何保存我已经设置好的工作流?

你可以通过以下方式保存你制作好的工作流文件

  • 保存图片生成的PNG文件(comfyUI会将生成过程中的prompt信息及workflow设置写入PNG的Exif信息中)
  • 在菜单面板中点击保存可以将当前工作流保存为JSON格式

image.png

导入工作流

在comfyUI右侧菜单面板中,点击加载 可以通过以下两种方式载入comfyUI工作流文件

  1. 从工作流Json 文件中加载工作流
  2. 从comfyUI生成的PNG图片中加载

插件安装

管理器搜索:AdvancedLivePortrait

或者在github项目主页上安装:https://github.com/PowerHouseMan/ComfyUI-AdvancedLivePortrait

image.png

安装完成后作者提供了示例的工作流在该文件夹内:\custom_nodes\ComfyUI-AdvancedLivePortrait\sample

节点也非常简单,经续3个节点就可以看到效果

image.png

以下是一些影响表情的参数

image.png

官网链接:https://krita.org/zh-cn/

image.png

Krita+ComfyUI解锁AI实时绘图

安装完成我们需要下载Krita AI绘图的插件

插件项目地址:https://github.com/Acly/krita-ai-diffusion

我们进入项目主页的Releases板块,里面有很多版本,我选择的1.19.0这个版本下载,下载后是个压缩包,不用解压

image.png

image.png

然后我们进入Krita,新建一个图像

image.png

在最上方工具——脚本——文件导入,把我们刚刚的压缩包导入

image.png

image.png

然后导入成功后我们在设置——显示面板——AI img generation 勾选上

image.png

然后重新启动我们的Krita,顺便也把ComfyUI启动

进入后我们就可以看到右边的功能区多了个AI Image Generation模块,我们点击设置

点击Connection——Custom Server ——Connect ,这步是把我们的Krita和ComfyUI进行一个连接,ComfyUI的默认URL都是127.0.0.1:8188,如果你不是你需要修改Server URL

image.png

image.png

连接过程大概率会报错,因为我们没有安装模型,报错的内容也会提醒你缺失什么模型

你需要到该地址下载缺失模型:https://github.com/Acly/krita-ai-diffusion/wiki/ComfyUI-Setup#shared

你就缺什么模型或者节点就按插件作者提示的ComfyUI文件路径,把模型都下好。没有对应文件夹的话就要直接新建文件夹

image.png

理论上,我们安装完以上缺失模型就可以连接成功,如下图

image.png

然后我们还要修改Styles的一些参数

image.png

然后我们就可以开始实时绘图啦

我们写上提示词,然后灵魂画手上线,在画布随便画画,最后点击Generate

image.png

然后AI就会帮我画啦,如果觉得画面改动太小就调整强度

image.png

强度越大改变越大,越可能偏离我们的原画

image.png

以上还只是小菜一碟,我们把模型调到Live就可以体验到落笔作画了。

image.png

灵魂画手再次上线哈哈,效果还是非常不错的,很有趣,感兴趣的小伙伴可以区试试哦

image.png

工作流的举例分享

image.png

image.png

工作流看着很复杂其实逻辑很简单

第一个组是实现动漫转真人的效果

image.png

第二个组是实现换脸:如果你对生成出来的人物不满意就可以使用换脸

image.png

第三组主要是做一个和原图叠加的效果,这个也不是必要的,可以选择关闭。除了这个组用到了一些其他特殊的节点。其余组都是比较常见的节点

image.png

出图效果:

image.png

image.png

image.png

image.png

image.png

不过出图也没有百分百的准确,有些漫画图片生成不出来,比如美少女战士我试了几次效果都不好

image.png

模型下载

下载地址:https://huggingface.co/xinsir/controlnet-union-sdxl-1.0

我们选择这个Promax效果更好一些,下载完放入ComfyUI对应的ControlNet文件夹内即可

image.png

为了方便使用我们还需要更新ControlNet的一个插件

image.png

工作流搭建

我这边先搭建一个最简单的图生图工作流

image.png

然后我们就正常使用ControlNet,值得注意的是重绘的遮罩必须转成RGB图像,不然后面出图有问题

image.png

我们还需要选择ControlNet++加载器,控制模型需要选择inpaint

image.png

完整的工作流我会放在交流群中,感兴趣的小伙伴可以加群获取哦

生成效果

image.png

然后涂抹遮罩

image.png

提示词写上你想要改变的

image.png

生成对比

image.png

可以看到重绘边缘的接缝几乎完美

image.png

换装也是支持的

image.png
在这里插入图片描述
这一期文章就到了这了,有具体部署问题可以私信联系我,也可以到专业人工智能技术开源论坛网站搜索comfy系列文章答疑解惑。网站完全免费!!!

感谢您的提问!以下是手把手搭建属于自己的PyQt5-YOLOv5目标检测平台的保姆教程: 1. 安装Anaconda 首先,您需要下载并安装Anaconda,Anaconda是一个 Python 数据科学平台,包含了许多常用的数据科学包,如Numpy、Pandas等。 2. 创建一个虚拟环境 在安装了Anaconda之后,您需要创建一个虚拟环境,以便隔离开发环境和系统环境。您可以在命令行中输入以下命令来创建一个名为yolov5的虚拟环境: ``` conda create -n yolov5 python=3.8 ``` 其中,“yolov5”是您的虚拟环境的名称,您可以根据自己的需要进行更改。 3. 激活虚拟环境 创建完虚拟环境之后,您需要激活它,以便在环境中进行开发。在命令行中输入以下命令来激活yolov5环境: ``` conda activate yolov5 ``` 4. 安装PyQt5和YOLOv5 在激活了虚拟环境之后,您需要安装PyQt5和YOLOv5。您可以在命令行中输入以下命令来安装它们: ``` pip install PyQt5 pip install yolov5 ``` 5. 创建PyQt5界面 在安装了PyQt5之后,您可以使用Qt Designer创建一个PyQt5界面。Qt Designer是一个可视化的界面设计工具,可以让您轻松地创建PyQt5界面。 6. 使用YOLOv5进行目标检测 在安装了YOLOv5之后,您可以使用它进行目标检测。您可以在Python脚本中使用以下代码: ```python import torch from yolov5.models.experimental import attempt_load from yolov5.utils.torch_utils import select_device device = select_device('cpu') model = attempt_load('yolov5s.pt', map_location=device) img = torch.zeros((1, 3, 640, 640), device=device) pred = model(img) print(pred) ``` 其中,“yolov5s.pt”是YOLOv5的预训练模型,您可以在YOLOv5的GitHub页面上下载它。 7. 将PyQt5界面与YOLOv5集成 最后,您需要将PyQt5界面与YOLOv5集成起来,以便您可以在界面上使用YOLOv5进行目标检测。您可以在Python脚本中使用以下代码: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5.QtGui import QPixmap from yolov5.models.experimental import attempt_load from yolov5.utils.torch_utils import select_device class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle('PyQt5-YOLOv5目标检测平台') self.setGeometry(100, 100, 800, 600) self.label = QLabel(self) self.label.setGeometry(50, 50, 640, 480) self.show() if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() sys.exit(app.exec_()) ``` 这段代码创建了一个名为“PyQt5-YOLOv5目标检测平台”的窗口,并在窗口上添加了一个标签。您可以使用这个标签来显示检测到的目标。 以上就是手把手搭建属于自己的PyQt5-YOLOv5目标检测平台的保姆教程。希望对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值