前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >程序员的视角解析 ComfyUI

程序员的视角解析 ComfyUI

作者头像
云水木石
发布2024-06-26 12:27:29
1230
发布2024-06-26 12:27:29
举报

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

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

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

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

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

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

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

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

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

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

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

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

LDM 底层逻辑

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

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

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

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

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

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

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

小结

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

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

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

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

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

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云水木石 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • LDM 底层逻辑
  • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档