ComfyUI进阶篇:ComfyUI核心节点(一)

前言:

学习ComfyUI是一场持久战。当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点。面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措。在这篇文章中,我们将用通俗易懂的语言对ComfyUI的核心节点进行系统梳理,并详细解释每个参数。希望大家在学习过程中培养自我思考的能力,真正掌握和理解各个节点的用法与功能。在实践中不断提升自己的技术水平。只有通过不断的探索和总结,才能在面对复杂的工作流时游刃有余。祝大家学习顺利,早日成为ComfyUI的高手!

目录:

一、Load Checkpoint节点

二、Load Checkpoint with config节点

三、CLIP Set Last Layer节点

四、CLIP Text Encode (Prompt)节点

五、KSampler节点

六、Empty Latent image节点

七、VAE Decode节点

八、Save image节点

九、文生图示例工作流

一、Load Checkpoint节点

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

输入

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

输出

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

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

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

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

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

  1. Load Checkpoint with config节点

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

输入:

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

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

输出:

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

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

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

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

  1. CLIP Set Last Layer节点

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

输入:

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

输出:

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

参数:

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

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

  1. CLIP Text Encode (Prompt)节点

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

输入:

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

输出:

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

参数:

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

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

  1. KSampler节点

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

输入:

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

  1. Empty Latent image节点

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

输出:

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

参数:

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

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

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

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

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

  1. VAE Decode节点

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

输入:

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

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

输出:

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

  1. Save image节点

该节点用来保存image图像

输入:

images -> 保存图像

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

  1. 文生图示例工作流

熟悉以上所有节点之后,你就可以搭建第一个“文生图”工作流了

这里使用了sd1.5的大模型,所以latent图像设置512*512,正向提示词输入1 girl,反向提示词输入NSFW避免出现不能播的内容,采样器KSampler使用默认设置,最终出图如下:

孜孜以求,方能超越自我。坚持不懈,乃是成功关键。

ComfyUI进阶篇:ComfyUI核心节点(一)的更多相关文章

  1. 「进阶篇」Vue Router 核心原理解析

    前言 此篇为进阶篇,希望读者有 Vue.js,Vue Router 的使用经验,并对 Vue.js 核心原理有简单了解: 不会大篇幅手撕源码,会贴最核心的源码,对应的官方仓库源码地址会放到超上,可以配 ...

  2. 如约而至,Java 10 正式发布! Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十四)Redis缓存正确的使用姿势 努力的孩子运气不会太差,跌宕的人生定当更加精彩 优先队列详解(转载)

    如约而至,Java 10 正式发布!   3 月 20 日,Oracle 宣布 Java 10 正式发布. 官方已提供下载:http://www.oracle.com/technetwork/java ...

  3. flink进阶篇

    Flink 面试--进阶篇 1.Flink是如何支持批流一体的? 2.Flink是如何做到高效的数据交换的? 3.Flink是如何做容错的? 4.Flink 分布式快照的原理是什么? 5.Flink ...

  4. MYSQL(进阶篇)——一篇文章带你深入掌握MYSQL

    MYSQL(进阶篇)--一篇文章带你深入掌握MYSQL 我们在上篇文章中已经学习了MYSQL的基本语法和概念 在这篇文章中我们将讲解底层结构和一些新的语法帮助你更好的运用MYSQL 温馨提醒:该文章大 ...

  5. Jmeter(三十九) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 上篇(详解教程)

    ------------------------------------------------------------------- 转载自:北京-宏哥 https://www.cnblogs.co ...

  6. Membership三步曲之进阶篇 - 深入剖析Provider Model

    Membership 三步曲之进阶篇 - 深入剖析Provider Model 本文的目标是让每一个人都知道Provider Model 是什么,并且能灵活的在自己的项目中使用它. Membershi ...

  7. idea 插件的使用 进阶篇

    CSDN 2016博客之星评选结果公布    [系列直播]零基础学习微信小程序!      "我的2016"主题征文活动   博客的神秘功能 idea 插件的使用 进阶篇(个人收集 ...

  8. 最快让你上手ReactiveCocoa之进阶篇

    前言 由于时间的问题,暂且只更新这么多了,后续还会持续更新本文<最快让你上手ReactiveCocoa之进阶篇>,目前只是简短的介绍了些RAC核心的一些方法,后续还需要加上MVVM+Rea ...

  9. SQL Server调优系列进阶篇(查询语句运行几个指标值监测)

    前言 上一篇我们分析了查询优化器的工作方式,其中包括:查询优化器的详细运行步骤.筛选条件分析.索引项优化等信息. 本篇我们分析在我们运行的过程中几个关键指标值的检测. 通过这些指标值来分析语句的运行问 ...

  10. SQL Server调优系列进阶篇(如何索引调优)

    前言 上一篇我们分析了数据库中的统计信息的作用,我们已经了解了数据库如何通过统计信息来掌控数据库中各个表的内容分布.不清楚的童鞋可以点击参考. 作为调优系列的文章,数据库的索引肯定是不能少的了,所以本 ...

随机推荐

  1. Python第三方库的安装和导入

    目录 一.Python第三方库的安装 1. 使用pip命令行安装 2. 使用PyCharm进行安装 3. 下载第三方库文件到本地进行安装 4. 通过国内源进行安装 二.Python第三方库的导入 1. ...

  2. csapp-attacklab(完美解决版)

    注意:必须阅读Writeup,否则根本看不懂这个lab要怎么做 实验前准备 1.在终端中输入./ctarget和./rtarget结果报错 百度后得知自学的同学需要在执行文件时加上-q参数,不发送结果 ...

  3. three.js教程7-PBR材质与环境贴图CubeTextureLoader

    1.PBR材质 PBR是基于物理的渲染(physically-based rendering).模拟物体表面的反射算法. Three.js提供了两个PBR材质相关的类MeshStandardMater ...

  4. cesium教程3-加载3dtile模型,并调整位置

    直接上示例代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  5. C语言:将字符逆反排列再输出的问题

    代码: #include<stdio.h> #define N 10 int main() { /*输入字符串,str[10],将里面的字符逆反排列,再输出.*/ char ch[N]; ...

  6. 用 C 语言开发一门编程语言 — Q-表达式

    目录 文章目录 目录 前文列表 Q-表达式 读取并存储输入 实现 Q-Expression 语法解析器 读取 Q-Expression 实现 Q-Expression 的函数 Head & T ...

  7. mini-centos7 环境安装部署,各种踩坑。。。

    最小Linux系统,安装Java环境 想想就生气,去面试个运维,面试官让我上机装个centos7,还是个最小安装包连界面都没有,只有命令行模式,我都哭了,然后让把一些环境装一下,然后再部署个sprin ...

  8. avue组件自定义按钮/标题/内容/搜索栏

    话不多说 笔记直接分享!! 一.自定义crud搜索栏组件 <template slot-scope="scope" slot="provinceCodeSearch ...

  9. js 实现仿百度换肤效果

    图片自行换掉即可查看效果,原理就是基于tab切换的效果实现的 效果图 1 <!DOCTYPE html> 2 <html> 3 4 <head> 5 <met ...

  10. golang 的 net/http 和 net/rpc 的区别, rpc 效率比 http 高?

    在Go语言中,net/http 和 net/rpc 是两个不同的包,它们分别用于实现不同的网络通信模式: net/http: net/http 包主要用于构建Web服务和客户端,它实现了HTTP协议, ...