当前位置: 首页 > news >正文

第018章:ComfyUI文生图Z-Image模型创建数字人模特(二)

上一章我们已经把Z-Image模型文生图工作流所有需要的一些文件准备好了,这一章我们将从零开始搭建一个Z-Image模型的文生图工作流。

我的想法是这样的,我准备通过去做一个完整“数字人项目”来和大家一起去学习ComfyUI的使用,这样我们每一步的学习都会有相应的成果反馈,大家也更容易有成就感,具体的计划如下:

第一步:数字人模特创建,通过文生图的方式去生成独属于我们自己的数字人模特。

第二步:模特换装、换场景,通过图生图、图片编辑的方式去让数字人展示不同的风格。

第三步:给数字人配音,通过文声音音频的方式,给数字人设计音色、让他唱歌、读文案。

第四步:数字人视频,通过图生视频的方式生成数字人唱歌卖货的视频。

通过这样一个完整的流程的学习,我想等大家全部学习完时候,就能对AIGC&ComfyUI有一个比较深刻的掌握。

好了现在我们开始第一步,搭建一个Z-Image模型的文生图工作流来生成我们的“数字人模特”,启动ComfyUI,新建一个空白的工作流。

我们把自己想象成一个正准备筹建一个图像工作室的创业业者,我们需要组件我们得团队。

1、既然是图像工作室那最重要得就是画师了,对应到我们得工作流就是“图像生成大模型”。

还记得上一章里我们存放Z-Image模型得文件夹叫什么名字吗?对喽,“Unet”翻译过来就是神经网络得意思,在AIGC里面就饿可以理解为“AI模型”。

双击工作流得空白处,在弹出得搜索框中搜索“unet” ,选择"UNet加载器"。

在第一个框里选择我们上一章放到Unet文件夹里的“z_image_turbo_bf16.safetensors”模型。

第二个框里有“default/fp8_e4m3fn/fp8_e4m3fn_fast/fp8_e5m2” 四个选项,他们得含义如下:

怎么选择呢?大部分情况下我们都选择第2个“fp8_e4m3fn”,相比于“default”他得出图质量只有轻微得降低,但出图得速度大大提高。

fp8_e4m3fn_fast”这个带Fast得出图速度是最快的,一般我们试提示词、草稿预览时可以用。

最后这个“fp8_e5m2”大部分时间都用不到,等后面如果有机会用到再给大家说,这里可以先不用管他。

2、请到画师以后,画师提了个要求,说我一个人干活效果可能不是那么好,希望能给他配个助手,对应到我们工作流里就是“lora”。

同样书记工作流得空白处,搜索“lora”,如下图:

这个添加以后,我们先鼠标右键“绕过”,相当于让这个节点失效不产生作用,我们先不让助手帮忙,先单独试试画师得水平。

他两得连线如下(模型 连 模型),由于刚才我们把Lora绕过了所以他变成了红色,就是不起作用了。

3、画师请到位了,现在要让画师干活,就得给他下达任务。这时候我们就需要一个文本输入得东西,在里面把任务写好再传递给画师。

还记得我们上一章下载的文本编码文件放到那个文件夹里了吗?对喽,“CLip”。

双击工作流空白处,输入“clip”,如下图:

添加以后,复制一下,总共放两个,为什么要两个呢?一个给他说“要怎么怎么做(输入正面提示词)”,一个给他说“不要怎么怎么做(输入负面提示词)”。

但实际上对现在的新模型来说,比如“Z-image"负面提示词其实是不需要的,但你不给他,工作流又会报错,这属于一个历史遗留问题。所以我们还需要一个空白的CLip给他。

在第一个框里(正面提示词里),我们需要把我们的要求输入进去(Z_Image支持中文输入),第二个框(负面提示词)由于不需要输入任何内容,我们可以点击鼠标右键“折叠”,把他折叠起来这样看起来更清爽一些。

折叠后的效果,如下图:

关于第二个clip文本编码框(负面提示词)还有一种操作方法,就是不用clip文本编码框,而是添加一个“条件零化”的组件,这个组件的作用就是,无论输入给他的任何内容,他都会转换为空再输出。

添加好以后,把正面提示词的内容输入给他,他会转换为空输出出去,如下图:

这个“条件零化”大家知道什么意思就行,有些人的工作流里会用这个代替空的“clip文本编码框”,我们后面的课程中还是会选择用“clip文本编码框”。

4、我把我们的要求写好了,但是咱们这个画师是个AI人,他听不懂我们人类的语言,需要把我们的人话转换为AI语言(计算机语言),这个时候我就需要请一个翻译官(clip加载器)。

还记得上一章我么下载的“text_encoders”文件,放在了clip文件夹里的是什么吗?对喽!是“qwen_3_8b_fp8mixed.safetensors”。

把"加载Clip"这组件和“clip文本编码框”链接起来,如下图:

5、那画师有了,任务也下达了,并且也翻译成AI画师能听懂得语言了,先画师要开始作画,是不是得准备画布了。双击空白处搜索“空latent”如下图:

宽度、高度就是画布得大小(我最最终输出得图像大小),个人建议图片大小控制在1K左右,太大了生成得速度会明显变慢,至于高清晰度图片我们后面可以用一个图片放大的组件来实现。批量大小就是一次生成几张图片得意思。

6、我们想想我们这个AI图像工作室还差什么东西?画师有了、画布有了、任务也翻译好了,他在哪办公呢?我们还没有办公室,赶紧去租一个办公室(K采样器):

一般情况下这个“K采样器”就足够我们使用了,不需要什么高级的采样器。

里面的参数的意思从上到下分别是:

(1)模型:传入加载好的 UNet 大模型(Z-Image 等),是画面生成的核心权重,必须接入。

(2)正面条件:链接正向提示词的Clip编码框条件(CLIP 输出),告诉 AI 你想要画什么。

(3)负面条件:链接负向提示词的Clip编码框条件(CLIP 输出),告诉 AI 避开哪些瑕疵。

(4)Latent 图像:潜空间图像,AI模型绘画的画布。最下面的“降噪”参数,和这个是相互配合的,接「空 Latent」,降噪固定 1.0;图生图 / 图像编辑:接原图 VAE 编码后的 Latent,降噪值低于 1。

关于“降噪”,我们可以这么理解,AI绘画就是处理噪点的过程。降噪固定 1.0就是在画布上铺满噪点,AI需要去处理整个画布的所有位置。降噪固定 0.5,大概就是在画布上铺50%的噪点,Ai只需要就去处理50%的地方,剩下50%还是保持原样。所以图生图我我们固定1.0,图生图/图像编辑都是低于1.0。

(5)种子:控制整张图的构图、光影、人物五官基础随机值,可以简单理解为不同的种子对应不同的图片,种子不一样图片肯定就不一样,需要多次抽卡时就去把种子值改一下。

(6)生成后控制:randomize:随机新种子(默认,每次图都不一样);fixed:锁定当前种子,重复运行出完全相同图片;increment:每次执行种子 + 1,批量生成相似变体图;decrement:每次执行种子 - 1;

这里有的randomize(随机新种子)有个问题,就是每次图片生成完成以后,你在这里看到的种子数值,并不是当前图片的种子值说下一次将要生成的图片的种子值。也就是说如果你觉得这张图不错,想记录一下整个种子数,你是找不到的。这就是我为啥喜欢用fixed(固定种子)的原因,当我需要换种子时我就手动去改一下

(7)步数(steps):采样迭代步数,AI 细化画面的迭代次数。数值越低:出图越快,但细节模糊、结构崩坏;数值越高:细节越丰富,但渲染耗时成倍增加;

至于整个步数(steps)应该填几?不同的模型值不同,一般模型的介绍里都有,如果你仔细看过Z-Image模型的介绍,就会知道(如下图),我们可以看到Z-Image-Turbo的步数(steps)是8,一般建议(6-12)之间,超过12除了让速度变慢,没有任何意义。

(8)CFG(引导系数,Classifier-Free Guidance):控制正负提示词的遵守强度。

数值越低:AI 自由度越高,越容易偏离提示词;数值越高:AI 自由度越低,对提示词的服从度越高;

CFG的值现在一般默认1就可以。

(9)采样器名称(sampler):AI 迭代计算画面的数学算法,不同采样器画风、速度、细节完全不同;

(10)调度器(scheduler):配合采样器,控制每一步降噪幅度的衰减曲线,直接影响画质。

关于采样器和调度器怎么选,一般用默认的euler+simple就可以,我自己测下来整个默认组合的性价比是最好的,采样器改成seed_3,出图的质量会好一些,但是出图的时间翻了一倍。

Z-Image-Turbo模型K采样器参数设置如下:

下来让画师入住我们的办公室(连线),如下图:

7、各种准备工作已经准备完成,画师坐在办公室里也把图像画出来了,但我们整个画师是个AI画师,他画出来的东西是数据矩阵,我么们人类是看不懂的!所以我们还需要一个翻译官,把整个数据矩阵翻译成我们人类能够看懂的图片,就是上一章里,我们下载并部署到VAE文件夹的“ae.safetensors”文件。

工作流空白处搜索“加载vae”,选择“ae.safetensors”文件。

工作流空白处搜索“vae解码”,因我们是需要吧AI画的图 翻译成我们人类可以识别的图片,所以用的是“VAE解码”。

“vae解码”需要和“vae加载器”链接起来,如下图。

我们可以看到,vae解码还有两个链接节点“Latent”和“图像”,其中“Latent”就是接收K采样器传输出来的“Latent(图像矩阵)”,“图像”就是他调用vae加载器翻译以后输出的我们可以正常观看的图片,因此我们还需要给“图像节点”链接一个“保持图像”的组件,把生成的图片保存下来。

工作流空白处搜索“图像保存”

组件链接的线路如下:

8、到此我们一个最基础的Z-Image文生图工作流就搭建完成了,点击右上角“运行”按钮,我们看看效果。

不出意外的除了意外了,报错了,如下:

什么原因呢?原来我们上一章下载的CLip文件是“qwen_3_8b_fp8mixed.safetensors”这个文件呢和我们用的Clip文版编码框不适配。重新下载一下,下载“qwen_3_4b.safetensors”这个文件就OK了(选择下载下图红框标出来的文件)。

clip加载器重新选择:

再点工作流右上角的运行按钮,效果如下:

至此,我们一个最基础的Z-Image文生图工作流就搭建完成并运行成功了,在这一章里我们留了几个问题不知道大家注意到了没?

1、Lora我们是忽略的没有启用。

2、我文章中提到了,让大家把空Latent的大小设置到1K左右,后面可以加个放大节点去放大图片增加清晰度,但工作流里并没有体现出来。

3、细心的朋友应该发现了,我的正向提示词里,也就是图片的要求写的是比较详细的,但我们用自己脑子想的话很难写出这么详细的提示词。

这几个问题我们放到下一章去解决,等下一章我们把Lora和放大节点加进去,到时我会把完整的工作流,在群里分享给大家。

http://www.cnnetsun.cn/news/3073979.html

相关文章:

  • 01 静态分析(Static Analysis)
  • PKMS+AppOps 双权限体系:隐私管控、特权白名单全流程源码剖析
  • 2026年桌面风扇类型选购要点:从四个核心部件看懂一台风
  • Java实现字符串匹配:别再让算法理论画饼,实际应用才是王道
  • 把 ES Repository 纳入 CMS 轨道,一套更稳的 SAP PI 内容传输治理方式
  • Bebas Neue:开源字体设计的几何美学革命
  • 与你的 Elasticsearch 数据对话:使用 Google ADK 和 MCP 构建一个实时语音 agent ,分为 3 个组件
  • 从零理解 RAG:把“向量化“和“检索“讲成人话
  • 怎么用AI做历史课件视频?用 seedance2.0 制作趣味历史微课实战教程与对比
  • 机顶盒B860AV2.1-M刷机攻略
  • 高效XPath定位神器:xpath-helper-plus深度解析与实战指南
  • Java volatile 关键字相关用法总结:面试版详解
  • MYSQL--查询的执行流程
  • PC大型3A 角色扮演游戏(RPG)《怪物猎人物语3:命运双龙》网盘下载 免BIOS 中文版
  • 极低成本 AI 服务:独立开发者的多模型混合路由与流量网关设计
  • Python判断数字?别被isdigit()坑了!浮点负数全阵亡
  • UE5 插件版本 - PS添加PostProcess Pass
  • Beyond Compare 5永久激活:3步解决文件对比工具授权限制
  • Appium 移动端自动化环境搭建(Android/iOS)
  • YOLO26N 姿态估计模型训练全流程
  • 英雄联盟国服免费换肤完全指南:5分钟掌握R3nzSkin终极技巧
  • k8s的介绍
  • 鸿蒙 NDK开发:Node-API创建和获取String值(九)
  • 基于 Simulink 的双向 DC-DC 变换器在低电压大电流下的同步整流(SR)驱动仿真实战教程
  • HarmonyOs开发--设置屏幕朝向 orientation (横竖屏场景)
  • 二升三年级暑假特色作业(pdf图文版)
  • 斯坦福CS146S课程 提示词工程全解(第1周):6大核心技术从原理到代码实战
  • 如何将VR视频转换为2D格式:VR-Reversal完整指南
  • MySQL数据分析入门:从SQL查询到实战电商案例全解析
  • 基于HarmonyOS 7.0 跨端开发的篆刻印章设计页面实战