ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

FLUX.2、Seedream、Z-image、Qwen-Image、GLM-Image五大图像生成模型选型与ComfyUI实战指南

FLUX.2、Seedream、Z-image、Qwen-Image、GLM-Image五大图像生成模型选型与ComfyUI实战指南

1. 五个模型摆在面前,到底该怎么选

先把结论摆在前面:FLUX.2、Seedream(即梦)、Z-image、Qwen-Image、GLM-Image 这五个名字,最近半年在图像生成圈子里被反复提起,但它们压根不是同一类东西。有人拿它们做电商主图,有人拿它们跑二次元插画,有人只是想在自己机器上跑通一个能出图的流程。需求不同,选型逻辑完全不一样。

我自己从去年底开始陆续把这几个模型都跑了一遍,有在云端API上试的,也有在本地ComfyUI里折腾的。踩过的坑包括但不限于:Z-image base 生成全黑图、Qwen-Image 在 ComfyUI 里节点连错导致显存爆炸、GLM-Image 的中文提示词理解偏差等等。这篇文章就把这些经验一次性摊开讲,从每个模型的核心定位、技术路线、实操要点,到常见问题的排查思路,尽量做到你看完就能上手,不用再去翻一堆零散的帖子。

适合谁看?如果你是刚接触AI绘图、面对一堆模型名字不知道从哪下手的新手,这篇可以帮你建立基本的选型框架。如果你已经在用ComfyUI或者类似工具,但遇到出图质量不稳定、显存不够、提示词不生效等问题,里面的排查部分应该能帮上忙。如果你只是想知道这几个模型各自擅长什么、不适合什么,直接看每个章节的定位分析就行。

需要提前说明的是,这几个模型背后涉及的技术细节非常深,比如扩散模型的采样策略、文本编码器的对齐方式、VAE的压缩比等等。我会尽量用生活化的类比来解释,但该有的专业术语不会回避,因为这些东西在你实际调参的时候一定会遇到。

2. 五个模型的核心定位与技术路线拆解

2.1 FLUX.2:走通用路线的全能选手

FLUX系列最早出圈是因为它在文本渲染和复杂场景理解上的表现明显优于同时期的开源模型。FLUX.2作为迭代版本,核心改进集中在三个方面:文本编码器的语义对齐更精准、采样步数在低步数下的出图质量更稳定、对长提示词的解析能力更强。

从技术路线看,FLUX.2延续了基于Transformer的扩散架构,而不是早期Stable Diffusion那种UNet结构。这个选择带来的直接好处是模型对全局信息的把握更好,比如你让它画“一个穿着红色外套的人站在蓝色门前,门上有金色把手”,它不太会出现颜色串位或者物体遗漏的情况。但代价是显存占用偏高,FP16精度下大概需要12GB以上显存才能比较流畅地跑起来,如果加上ControlNet之类的辅助网络,16GB是起步线。

我实测下来,FLUX.2最舒服的使用场景是:需要精确控制画面元素位置和属性的商业出图、需要渲染清晰文字的海报类需求、以及需要理解较长描述语句的复杂场景。不太适合的场景是:追求极致出图速度的批量生成、显存小于8GB的老机器、以及只需要简单风格化处理的轻量需求。

2.2 Seedream(即梦):中文语境下的本土化强者

Seedream是字节跳动旗下的图像生成模型,即梦是它的产品化名称。这个模型最大的特点是对中文提示词的理解能力明显强于同级别的开源模型。你直接输入“一只橘猫趴在窗台上晒太阳,窗外是江南水乡的白墙黑瓦”,它给出的画面在文化元素和氛围感上,比用英文提示词翻译过去的效果要自然得多。

技术层面,Seedream在文本编码阶段做了中文语料的专项优化,同时训练数据里中文互联网内容的占比应该不低。这带来的优势是它对“国潮”“水墨”“赛博朋克+中式元素”这类混合风格的处理很到位。但反过来,如果你要生成纯西式奇幻或者特定动漫风格的角色,它的表现可能不如专门针对二次元训练的模型。

使用方式上,Seedream主要通过即梦平台在线使用,也有API接口供开发者调用。本地部署的版本目前社区里讨论不多,主要因为模型权重没有完全开放。所以如果你是想在本地ComfyUI里跑,这个可能不是首选。但如果你需要快速出中文场景的图,又不想折腾本地环境,即梦的在线体验是目前比较省心的选择。

2.3 Z-image:轻量化的潜力股与“黑图”陷阱

Z-image是最近讨论度上升比较快的一个模型,主打轻量化和快速出图。它的参数量相比FLUX.2要小不少,理论上在消费级显卡上也能跑得动。但社区里反馈最多的一个问题就是:z-image base 生成的图是黑的。

这个问题我一开始也遇到了,后来排查下来,原因通常出在几个地方。第一是VAE没有正确加载或者版本不匹配,Z-image用的VAE和SD1.5、SDXL都不通用,如果ComfyUI里默认连了错误的VAE节点,解码出来的就是全黑或者全灰的图。第二是采样器的CFG值设置过高,Z-image在CFG超过7之后容易出现画面崩坏,表现为大面积黑色色块。第三是模型权重下载不完整,有些渠道提供的文件缺了最后几MB,加载时不会报错但推理结果异常。

解决思路很直接:先确认VAE节点连的是Z-image专用的VAE文件,然后把CFG降到4到6之间试一次,最后检查模型文件的SHA256校验值是否和官方发布的一致。这三个步骤走完,九成以上的黑图问题都能解决。

Z-image turbo版本是另一个值得关注的点。turbo版本通过蒸馏技术把采样步数压缩到了4到8步,出图速度极快,适合需要快速预览构图和色彩的阶段。但turbo版本的细节丰富度不如base版本,最终出图还是建议用base版本多跑几步。

2.4 Qwen-Image:阿里系的多模态延伸

Qwen-Image是通义千问系列在图像生成方向的延伸。它的核心优势在于和Qwen系列语言模型的联动能力。如果你已经在用Qwen做文本处理或者对话系统,Qwen-Image可以比较自然地接入现有流程,实现“文本理解-图像生成”的连贯操作。

在ComfyUI里使用Qwen-Image时,社区里讨论比较多的是流程图配置问题。因为Qwen-Image的节点结构和SD系列差异较大,很多人第一次连的时候会搞混文本编码器的输入输出。正确的做法是:先把Qwen-Image的模型加载节点、文本编码节点、采样器节点、VAE解码节点按顺序连好,然后再接图像保存节点。如果顺序错了,比如把VAE解码直接连到了模型加载的输出上,就会报错或者出图异常。

Qwen-Image在中文提示词的理解上也有不错的表现,尤其是对成语、诗句这类富含文化意象的输入,它能给出比较有意境的画面。但在写实人像和复杂光影场景下,它的表现相比FLUX.2还有一定差距。

2.5 GLM-Image:智谱系的技术探索

GLM-Image来自智谱AI,和GLM系列语言模型同源。它的技术路线和前面几个模型有比较明显的差异,更强调图像生成过程中的可控性和可解释性。具体来说,GLM-Image在生成过程中会输出一些中间表示,让你能更清楚地知道模型“理解”了什么、“忽略”了什么。

这个特性在调试提示词的时候很有用。比如你输入一段描述,出图效果不理想,通过查看中间表示,你能判断是模型没理解某个关键词,还是理解了但生成阶段没表现出来。这比盲目改提示词要高效得多。

不过GLM-Image目前的生态完善度不如FLUX和SD系列,可用的微调模型、LoRA、ControlNet资源相对较少。如果你需要高度定制化的风格迁移或者精确的姿势控制,可能会觉得不够用。但如果你关注的是生成过程的可控性和可调试性,它值得花时间研究。

3. 本地部署与ComfyUI实操要点

3.1 环境准备:Ubuntu 20.04下的基础配置

社区里用Ubuntu 20.04跑ComfyUI的不少,这个版本胜在稳定,各种依赖的兼容性经过长时间验证。但有几个点需要注意。

Python版本建议用3.10或者3.11,3.12在某些包的编译上还会有问题。CUDA版本看你的显卡驱动,30系卡用CUDA 11.8比较稳,40系卡可以上CUDA 12.1。PyTorch的版本要和CUDA对应,别装错了。

磁盘空间要留够。这几个模型加起来,加上VAE、文本编码器、以及各种辅助模型,100GB是基础线。如果你还要存生成的图片和中间文件,建议单独挂一块盘。

内存方面,32GB是起步,64GB会更从容。因为模型加载的时候会先把权重读到内存里再传到显存,内存不够会直接卡死。

3.2 ComfyUI节点连接的核心逻辑

ComfyUI的节点连接看起来复杂,但核心逻辑就一条:数据从加载节点流向处理节点,最后到输出节点。以Qwen-Image为例,标准的连接顺序是:

  1. 模型加载节点输出MODEL,接到采样器节点的model输入
  2. 文本编码节点输出CONDITIONING,接到采样器节点的positive和negative输入
  3. 潜空间图像节点输出LATENT,接到采样器节点的latent输入
  4. 采样器节点输出LATENT,接到VAE解码节点的samples输入
  5. VAE加载节点输出VAE,接到VAE解码节点的vae输入
  6. VAE解码节点输出IMAGE,接到保存图像节点

这个顺序不能乱。我见过有人把VAE解码的输出直接连到了采样器的输入上,结果就是报错说类型不匹配。还有人忘了连negative conditioning,出图效果会变得很奇怪,因为模型没有“负面引导”。

3.3 模型文件放置与命名规范

ComfyUI对模型文件的放置位置有约定。checkpoints放在models/checkpoints目录下,VAE放在models/vae,LoRA放在models/loras,ControlNet放在models/controlnet。文件名建议保持和下载时一致,不要随意改名,因为有些工作流会通过文件名来匹配模型。

如果你同时装了多个版本的同一个模型,比如Z-image的base和turbo,建议在文件名里加上版本标识,比如z-image-base.safetensors和z-image-turbo.safetensors。这样在工作流里切换的时候不容易搞混。

3.4 显存优化:让8GB卡也能跑起来

不是每个人都有24GB显存的卡。如果你用的是8GB或者12GB的卡,下面几个技巧可以帮你把模型跑起来。

第一,开启--lowvram或者--medvram启动参数。ComfyUI会在显存不够的时候把部分权重换出到内存,虽然速度会慢一些,但至少能跑。

第二,使用FP16精度而不是FP32。大部分模型都支持FP16推理,显存占用直接减半,出图质量差异肉眼几乎看不出来。

第三,降低出图分辨率。1024x1024跑不动就先跑512x512,然后用放大模型做后期超分。这样显存峰值会低很多。

第四,关掉不必要的节点。比如你不需要ControlNet的时候,把相关节点禁用或者删掉,能省不少显存。

4. 提示词工程与出图质量调优

4.1 不同模型的提示词风格差异

FLUX.2对英文提示词的响应更精准,建议用结构化的英文描述,比如“A photo of a cat, orange tabby, sitting on a windowsill, sunlight from left, shallow depth of field”。它不太吃“堆砌关键词”那一套,更看重句子结构的完整性。

Seedream和Qwen-Image对中文提示词的理解更好,你可以直接用自然语言描述,比如“一只橘猫趴在窗台上,阳光从左边照进来,背景虚化”。不需要刻意翻译成英文。

Z-image对提示词的长度比较敏感,太长的提示词反而容易让它抓不住重点。建议控制在50个词以内,把核心元素说清楚就行。

GLM-Image的提示词可以带一些抽象描述,比如“温暖的氛围”“略带忧郁的色调”,它对这类情感词汇的解析能力比较强。

4.2 CFG值、采样步数与采样器的搭配

CFG值控制的是模型对提示词的遵循程度。太低(比如1到3)会导致出图偏离提示词,太高(比如10以上)会导致画面过饱和、色彩失真。FLUX.2建议CFG在3.5到5之间,Z-image建议4到6,Qwen-Image建议5到7。

采样步数方面,非turbo模型建议20到30步,turbo模型4到8步就够了。步数再多边际收益很低,纯粹浪费时间。

采样器的选择上,DPM++ 2M Karras是比较通用的选择,出图稳定。Euler a适合需要一点随机性的创意场景。DDIM适合需要快速预览的时候用。

4.3 负面提示词的写法

负面提示词不是越多越好。写太多无关的负面词反而会干扰模型。通用的负面提示词包括:low quality, blurry, distorted, extra fingers, bad anatomy。针对特定场景再加,比如画人的时候加extra limbs,画风景的时候加text, watermark。

Z-image对负面提示词的敏感度比较高,建议只写最核心的几个,比如low quality, blurry,写多了容易出黑图。

5. 常见问题排查与避坑指南

5.1 Z-image黑图问题全排查

这个问题前面提过,这里展开说。排查顺序如下:

排查项检查方法解决方法
VAE是否匹配查看VAE节点加载的文件名换成Z-image专用VAE
CFG是否过高查看采样器节点的cfg值降到4到6之间
模型文件是否完整校验SHA256重新下载完整文件
精度设置是否错误查看是否用了FP32改成FP16
潜空间尺寸是否异常查看空Latent节点的宽高设为64的倍数

如果以上都排查了还是黑图,试试换一个采样器,比如从DPM++换成Euler。有时候是采样器和模型的兼容性问题。

5.2 ComfyUI报错“CUDA out of memory”怎么办

这是最常见的问题。解决思路按优先级排:

  1. 降低分辨率,从1024降到768或者512
  2. 开启--lowvram启动参数
  3. 关闭其他占用显存的程序,比如浏览器、游戏
  4. 减少batch size,从4降到2或者1
  5. 如果用了ControlNet,先禁用它试试
  6. 换用更小的模型,比如从FLUX.2换成Z-image

如果以上都不行,那可能是显卡本身显存太小,需要考虑云端方案或者升级硬件。

5.3 出图质量不稳定的排查思路

出图质量时好时坏,通常和这几个因素有关:随机种子、采样步数、CFG值、提示词的一致性。建议固定随机种子,先调步数和CFG,找到一组稳定的参数后再换种子测试。如果换了种子质量波动很大,说明模型本身在这个提示词下的稳定性不够,需要调整提示词或者换模型。

5.4 模型下载渠道与文件校验

社区里有人分享过z-image turbo的下载渠道,但要注意文件完整性。下载完成后一定要做SHA256校验,和官方发布的值对比。如果对不上,说明文件在传输过程中损坏了,需要重新下载。用损坏的模型文件跑推理,轻则出图异常,重则直接报错崩溃。

6. 不同场景下的选型建议与组合策略

6.1 电商出图:FLUX.2 + ControlNet

电商场景对画面元素的精确控制要求高,比如产品的位置、角度、背景颜色都要符合规范。FLUX.2配合ControlNet的OpenPose或者Canny,可以做到比较精确的构图控制。提示词用英文写,把产品特征、光线方向、背景风格描述清楚。

6.2 中文场景插画:Seedream或Qwen-Image

需要表现中式元素、国潮风格、或者中文语境下的氛围感,优先用Seedream。如果已经在用Qwen系列做其他任务,Qwen-Image的接入成本更低。提示词直接用中文自然语言描述,不需要翻译。

6.3 快速预览与批量生成:Z-image turbo

需要快速看构图、试色彩搭配的时候,Z-image turbo的4步出图非常高效。虽然细节不够丰富,但用来做前期探索足够了。确定方向后再用base版本或者FLUX.2出最终图。

6.4 可控性与调试:GLM-Image

如果你需要理解模型为什么出某张图、哪个关键词起了作用,GLM-Image的中间表示输出会很有帮助。适合做提示词工程研究和模型行为分析。

6.5 组合使用的工作流设计

实际工作中,我经常把几个模型组合起来用。比如先用Z-image turbo快速生成一批构图方案,选中的方案再用FLUX.2细化,最后用Seedream做中文元素的风格化调整。这样既保证了效率,又兼顾了质量。

ComfyUI的工作流可以保存成JSON文件,把常用的组合流程存下来,下次直接加载就行。建议按场景分类保存,比如“电商主图工作流”“插画工作流”“快速预览工作流”,用的时候直接调用,不用每次重新连节点。

7. 一些实操中攒下来的经验

模型文件别放在系统盘。ComfyUI加载模型的时候会频繁读写,放在SSD上速度明显快很多。如果系统盘是机械硬盘,建议把模型目录挂载到SSD上。

启动参数里加上--preview-method auto,可以在采样过程中看到中间预览图,方便判断要不要提前中断。这个功能在试新提示词的时候特别有用,不用等全部跑完才发现方向错了。

工作流文件定期备份。ComfyUI的节点连接有时候会因为版本更新或者插件冲突而失效,备份好的JSON文件可以快速恢复。

遇到问题先看控制台输出。ComfyUI的报错信息大部分时候能直接指出问题所在,比如哪个节点缺输入、哪个文件找不到。别急着去搜,先把控制台最后几行读完。

显存不够的时候,优先降分辨率而不是降精度。FP16降到FP8对画质的影响比1024降到768要小,但显存节省差不多。

Z-image的turbo和base版本可以放在同一个工作流里切换。把模型加载节点的文件名做成变量,需要快速预览的时候切turbo,最终出图切base,不用重新连节点。

Qwen-Image在ComfyUI里的节点包要装对版本。社区里有几个不同的实现,有的更新了有的没更新,装之前先看下issue区有没有人反馈兼容性问题。

最后再分享一个小技巧:如果你不确定某个提示词在某个模型上的效果,先用低分辨率、少步数快速跑一张,看构图和色彩对不对。方向对了再提高参数出最终图。这样试错成本最低,不会浪费时间在错误的提示词上反复跑高分辨率。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进