程序员的视角解析 ComfyUI

目前使用 Stable Diffusion 进行创作的主要工具有三个:SD-WebUI、Fooocus 和 ComfyUI。这三者在用户交互界面设计上各有特色。

首先来看 Fooocus,其用户界面极简。用户通常只需输入提示词,即可生成图像。

0b1acd379ea48d2b10e616cc14b5fc44.png

对于有更高参数控制需求的用户,可以勾选 Advanced 以显示高级选项。

025b33e1b806d19991c738634ddb11b9.png

虽然可以调整的参数有限,但设计相对克制,提供的参数易于理解。Fooocus 不仅用户界面极简,安装和升级也只需一个脚本搞定,包括模型下载,真正实现了开箱即用。由于其简洁性,Fooocus 迅速吸引了大量 SD-WebUI 用户,广受欢迎。

接下来看看 SD-WebUI 的用户界面,功能齐全,几乎涵盖了所有可能的设置选项。

85fb84090bd5eb21fe0372ec7bf48349.png

可以说,SD-WebUI 的特点是全面,几乎将所有控制权交给用户,插件支持更是高级玩家的最爱。当然,这也引发了一些用户的批评,认为其界面过于复杂。

最后看看 ComfyUI 的用户界面,初见是不是会眼前一黑:

671834eb81d8793f06a00f2f00d1297e.png

加载一个事先制作好的工作流后:

7e5e1ff110fb546e91d14b2b69c5fa88.png

这种极客风格的界面可能会让不少用户望而却步。然而,ComfyUI 凭借其高度可定制性和复现性迅速赢得了设计师们的青睐。对于程序员来说,这样的界面反而显得亲切。

ComfyUI 将整个图像生成过程分解为多个独立的节点,每个节点都有自己独立的功能,例如加载模型、处理文本提示、生成图像等。每个模块通过输入和输出的连接线组合成一个完整的工作流。

用户可以灵活调整和配置不同的功能节点,使流程更加自由、控制更加精准。

ComfyUI 设计成这种工作流模式并非没有原因。因为 Stable Diffusion 的底层运行逻辑也是如此,要更好地理解和掌握 ComfyUI,先了解一些 Stable Diffusion 的底层运行逻辑是有帮助的。

LDM 底层逻辑

Stable Diffusion 的基础模型是 Latent Diffusion Model(LDM),即潜在扩散模型。可以理解为主要的图片生成流程都在一个叫「latent space(潜在空间)」的空间中进行。

图片在这个空间中的存在方式是我们无法识别的向量。我们只需要知道这些向量表示的信息和图片相差无几,但数据尺寸却变得非常小,这是一个类似压缩的过程,因此在这个空间中运行可以大大缩小运行内存。

这个过程可以简单理解为向潜在空间输入文件,数据经过处理生成图片并输出:

cd35e87b750b6433e984dde6d10c19cb.png

如果是文本生图,输入的是提示语(Prompts),即文本内容。由于计算机无法理解文本内容,因此需要将文本转换为计算机能够理解的信息,这个过程使用了 Clip 模型。而潜在空间里的图片,我们也无法理解,需要使用 VAE 模型转换成图片格式。所以整个流程如下:

9306ad8c7905ae6632da6e16623fd9d9.png

控制模型实际生成部分的是 KSampler(采样器),在这其中我们可以控制迭代次数、种子数值等。而这个步骤就发生在潜在空间中。

这就是最基础的文生图过程:

e02240c72c24a1a8533c969db8c3f89d.png

再看一个 ComfyUI 的最基础模型,就会清晰很多。

da41844f0af657c50479fa0690d7c890.png

小结

ComfyUI 工作流是一个基于图形节点编辑器的工作流程,通过拖拽各种节点到画布上,连接节点之间的关系,构建一个从加载模型到生成图像的工作流程。

每个节点代表一个 Stable Diffusion 相关的模型或功能,节点之间通过连线传递信息。

ComfyUI 工作流从加载模型开始,加载模型节点负责加载训练好的 Stable Diffusion 模型。

然后,通过 CLIP Text Encode 节点对输入的关键词 Prompt 进行处理,将文本转换为图像描述,并生成一个初始的 Latent Image。

接下来,进入采样器和 VAE 解码节点,这两个节点的作用是将初始的 Latent Image 进行采样和编码解码,得到生成的图像。

最后,生成的图像会通过连线传递到下一个节点进行进一步处理或输出。

通过组合简单的工作流,可以实现很多复杂的工作流程,这也是 ComfyUI 的强大之处。

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云水木石

但行好事,莫问前程

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值