ComfyUI基础篇:为什么要学 ComfyUI?
前言:
在AI生成图像领域,有许多产品,例如 Midjourney 和 Stability AI 等。为什么要学习 ComfyUI 呢?我斗胆带大家一起分析一下。
目录
1.Midjourney VS Stable Diffusion
2.SD Web UI VS ComfyUI
3.总结
Midjourney VS Stable Diffusion
在回答这个问题之前,我觉得有必要介绍下目前市面上的各种 AI 生图产品,或者是 AI 生视频产品。在我的眼里,他们主要分成两大类:
模型与产品整合的产品,比如 Midjourney,Stability AI 等等。
模型与产品分离的产品,比如 SD Web UI、ComfyUI 等等。
这两类产品的优劣势对比如下:

不难发现,这两类产品没有哪类产品拥有绝对的优势。选择哪款产品,完全取决于你的需求。
如果你只是当成娱乐,想要时不时制作一些图片或视频,那么,我推荐你选择整合产品。 因为它的学习成本低,你可以很快地学会如何使用,而且它的产品功能也比较完善,你可以很快地制作出一些图片或视频。
但如果你是设计师,或者你想靠 AI 这个新的技术赚钱,那么,我推荐你选择分离产品。 为什么呢?我觉得很多人选择学习何种软件时,很容易忽略两个原因。
第一个原因是迁移成本:
如果我们选择学习第一种融合产品,那就意味着我们在学习软件的同时,还会跟模型绑定。拿 Midjourney 为例,学习 Midjourney 的时候,你不仅要学习软件如何使用,同时要学习如何更好地使用模型,即如何写好prompt。同时,它的产品功能也跟模型融合得比较深,有些功能是它这个模型特有的,当你学会后,你就只能在Midjourney上使用,而不能在其他产品上使用。
这将导致出现非常高的学习迁移成本。当你想要更换产品的时候,你需要重新学习新产品的使用方法,同时还需要重新学习与模型相关的知识。
如果这个行业发展的速度比较慢的话,这个成本还可以接受(因为你有足够的时间去学习)。但是,现在 AI 行业发展非常快,每个月都会有新的产品,亦或者新的模型出现。你很难有时间去学习每一个产品。举个实际的例子,如果你选择学习融合产品,意味着:
当你看到 AI 能通过输入文字的方式生成图片,你可能会去学习 Midjourney,Stability AI,甚至 Adobe 的 AI 产品。
然后你又发现好像又有新的产品可以通过画图的方式生成图片,你可能又会去学习 Krea。
接着你发现 AI 还能生成视频,你又跑去学习 Runway、Pika。
最后你会发现,你好像学会了一堆软件,但又好像什么都没学会。因为每一款软件你都需要付出足够长的时间,才有可能真正学会,纯粹探索性的学习是不会有任何的积累(除非你只想娱乐一下)。
而学习分离产品,则能大大地降低这个迁移成本。当有一个新的模型出现时,你只需要切换模型就好了,而不需要重新学习产品的使用方法。比如,你学会了类似 SD WebUI 或者 ComfyUI 这类产品,你学会了如何文生图,当你需要通过画图的方式生成图片,你也只需要切换一些模型,或者在产品里操作一下就能实现与 Krea 类似的效果。
第二个原因是自由度:
我一直有这样的一个观点:AI 不会淘汰人类,但它会淘汰不会使用它们的人类。
你如果想要从 AI 这波浪潮里脱颖而出,你就需要学会如何使用 AI。而且不是单纯地使用 AI。你还需要学会如何调整 AI,从而让它切合你的工作流,甚至改造你的工作流。
因为它的自由度高,你可以自由地修改产品,甚至可以自己开发产品。这意味着你可以将产品与你的工作流结合,从而提高你的工作效率,甚至改造你的工作流。
SD Web UI VS ComfyUI
那市面上也有很多分离型产品,为何选择 ComfyUI?
我们先来简单看看 SD Web UI 和 ComfyUI 的 UI 界面,你应该就能知道它们的区别了。

从上图中可以看到,SD WebUI 的 UI 更像是我们传统使用的产品,有很多输入框,还有多个按钮。而 ComfyUI 的 UI 界面则非常复杂,除了输入框,还有很多一块块的东西,并且还有很多复杂的连线。
的确,从学习成本来看,ComfyUI 的学习成本会比 SD WebUI 高。但是这种连线其实并不复杂,你可以这么理解:
这些小的方块跟 SD WebUI 的输入框和按钮是一样的,都是对参数进行配置,连线有点像在搭建一个自动化的工作流,从左到右依次运行,可以想象成搭积木,是一个很有意思的过程
从功能的角度看,其实两个产品截图所提供的功能是一样的,只是 ComfyUI 变成了这种连线的方式
那这种方式有什么好处呢?我们一起来看看这两个用 ComfyUI 搭建的工作流:

对比两个工作流,你会发现它只是有一个节点不一样,一个是直接加载图片,一个是通过提示词绘制图片。这样就实现了两个不同的功能(一个是图生图,一个是文生图)。这就意味着,你可以通过改变节点的方式来改变工作流,从而实现不同的功能。这样做有两个好处:
你可以根据自己的需求搭建适合自己的工作流,而不需要依赖开发者。你也可以根据自己的需求,去开发并改造某个节点。
所以,选择 ComfyUI 最核心的原因就在于它的自由和拓展。那这就意味着你可以自己调整 ComfyUI 从而让它切合你的工作流,甚至改造你的工作流。
在现在这种 AI 发展如此迅猛的时代,我认为保持灵活才是最重要的。
如果你看各种对比评测,还会发现 ComfyUI 在性能上会比 SD WebUI 更好,但在能力的覆盖上会比 SD WebUI 要差,比如 ComfyUI 的 Inpainting 的编辑器就比 SD WebUI 的编辑器要差。但是,这些都不是问题,这些问题未来会依托开源生态逐步完善,或者说互有优势。但是我认为 SD WebUI 不进行非常大的改变的情况下,是无法实现 ComfyUI 那样的自由度的。
总结
对于那些刚开始探索AI绘画的好奇者来说,Midjourney 是一个理想的选择,能够帮助他们迅速适应 AI。当个人或公司有产品或设计构思时,如果只有大概的想法而没有具体的细节,可以使用 Midjourney 来实现创意,从而快速获得大量灵感。目前,Midjourney 在图像生成质量和 AI 的想象力方面依然处于顶尖水平,甚至可以说是第一。然而,目前它对图片的控制能力较差。
如果你的公司已经有了产品,并希望对其进行提升或差异化,那么 Stable Diffusion 是一个极佳的选择。它能够在完全保留原产品的基础上,添加你所需要的新元素。正如我的一位朋友所说的那样:Midjourney 更像是艺术家,而 Stable Diffusion 则更像是美工,我认为这个比喻非常贴切。
学习ComfyUI必须要有代码基础吗?
虽然有基础会是一个优势,但没有也没有关系。在使用 Stable Diffusion 的过程中,我发现 90% 的问题都不需要你编写或修改代码。大部分情况下,只需删除或添加一些文件即可解决。
AI版权问题
关于AI版权问题,许多人都很关心。目前,可以自由使用自己生成的图像,随意使用,无需担心版权问题。当其他人还在网络上寻找素材、花钱下载或处理有水印和不高清的免费素材,并担心版权纠纷时,我们已经在用 ComfyUI 来解决这些问题了。AI 生成的图像是独一无二的,即使在不同设备上使用相同的种子,调整网络环境后生成的图像也会有所不同。
遵纪守法
最后,请抛开那些潜意识里阻碍你前进的担忧,因为这些只是让自己停滞不前的借口。世上的一切事物都有其对立面,关键在于你如何去利用它们!希望大家多多使用 AI,让自己的生活更加阳光灿烂,用 AI 做一些积极向上的事情。请记住,一定要遵守法律法规!
** 孜孜以求,方能超越自我。坚持不懈,乃是成功关键。**
ComfyUI基础篇:为什么要学 ComfyUI?的更多相关文章
- 小白学Docker之基础篇
系列文章: 小白学Docker之基础篇 小白学Docker之Compose 小白学Docker之Swarm PS: 以下是个人作为新手小白学习docker的笔记总结 1. docker是什么 百科上的 ...
- 零基础从实践出发学java编程【总结篇】
1.背景 很多人学习java的第一步就是系统的学习java基础语法,有的java基础语法还没学完就崩溃了,确实java基础语法太多太细,而且都是理论,学着让人很懵: 好不容易学完基础语法,又要学框架. ...
- SQL必学必会笔记 —— 基础篇
基础篇 SQL语言按照功能划分 DDL(DataDefinitionLanguage),也就是数据定义语言,它用来定义我们的数据库对象,包括 数据库.数据表和列.通过使用DDL,可以创建,删除和修改数 ...
- 一步步学习javascript基础篇(0):开篇索引
索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...
- Vue.js基础篇实战--一个ToDoList小应用
距离开始学Vue已经过去一个多月了,总想把学到的东西柔和在一起,做点东西出来,于是有了这个Todolist小应用. 使用vuex 纯粹基础,没有用到web pack,vuex,npm,下次把它改造一下 ...
- [转]C++学习–基础篇(书籍推荐及分享)
C++入门 语言技巧,性能优化 底层硬货 STL Boost 设计模式 算法篇 算起来,用C++已经有七八年时间,也有点可以分享的东西: 以下推荐的书籍大多有电子版.对于技术类书籍,电子版并不会带来一 ...
- 2天驾驭DIV+CSS (基础篇)(转)
这是去年看到的一片文章,感觉在我的学习中,有不少的影响.于是把它分享给想很快了解css的兄弟们. 基础篇[知识一] “DIV+CSS” 的叫法是不准确的[知识二] “DIV+CSS” 将你引入两大误区 ...
- 【转】WF4.0 (基础篇)
转自:http://www.cnblogs.com/foundation/category/215023.html 作者:WXWinter —— 兰竹菊梅★春夏秋冬☆ —— wxwinter@16 ...
- android基础篇学习心得
android技术中,线程.进程.JNI.IPC和各个小框架结构是基本功.在跟随高焕堂老师的android程序猿到架构师之路系列视频中 学习完基础篇之后,颇有些心得,记录下来. android开发就是 ...
- andengine游戏引擎总结基础篇
其他的游戏引擎知道的不是很对,不过相对于学java的童鞋们来说,那是个不错的选择啦,这个发动机咋样,google去吧.基础篇包括图片,字体,音效,数据读取,会了这点,就会做简单的小游戏啦 对于游戏 ...
随机推荐
- 欧洲对 Splashtop 远程计算机实验室的需求增长十倍
2021 年 1 月 7 日,加利福尼亚州圣何塞 - 远程访问和远程支持解决方案的全球领导者 Splashtop Inc. 报告称其对用于教育的远程实验室访问软件的需求在欧洲激增,在 2020 年第 ...
- c 语言不输出空数据 (全面覆盖)
目录 去除空值的专栏 解决方案 一.通过数组的自身性质,让其值大于零 1. short 数组测试 2. int 数组测试 3. long 数组测试 4. float 数组测试 5. float 数组测 ...
- element-plus表格添加删除行很慢
如果添加第一行或第二行就很慢,那么这个不是row-key的原因. 很有可能是nuxt的调试工具监控组件原因,可以试着把工具关了看看 devtools: { enabled: false }, 发布后不 ...
- 一些常用但是不好记的css样式
设置滚动条样式 /*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/ ::-webkit-scrollbar { width: 10px; /*对垂直流动条有效*/ height: 10px; ...
- 拼接sql 参数化 where userId in(@userIds)的问题
这里@userIds 如果 写成101,202,301翻译后的sql的where部分会是: where userId in('101,202,301'): 而不是期待的: where userId i ...
- 来自多彩世界的控制台——C#控制台输出彩色字符画
引言 看到酷安上有这样一个活动,萌生了用 C# 生成字符画的想法,先放出原图. 酷安手绘牛啤 §1 黑白 将图像转换成字符画在 C# 中很简单,思路大致如下: 加载图像,逐像素提取明度. ...
- kubernetes: pod升级与回滚扩容与缩容暂停恢复
运行一个容器: apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revisio ...
- Qt-FFmpeg开发-保存视频流裸流(11)
音视频/FFmpeg #Qt Qt-FFmpeg开发-保存视频流裸流 目录 音视频/FFmpeg #Qt Qt-FFmpeg开发-保存视频流裸流 1.概述 2.实现效果 3.FFmpeg保存裸流代码流 ...
- react 过渡动画组件
在项目中可能会有一些动画效果展示或是页面切换效果,css动画的方式,比较局限,涉及到一些js动画的时候没法处理了.react-transition-group是react的第三方模块,借住这个模块可以 ...
- v-once指令 v-if和v-show
v-once指令 只渲染元素和组件一次,之后元素和组件将失去响应式功能 v-if和v-show 根据表达式的布尔值(true/false)进行判断是否渲染该元素 注:v-if 有更高的切换开销,而 v ...