Skip to content
🧠 模型×任务工作流第 2 / 16 节

Z-Image-Turbo 文生图:8 步、16GB 显存的国产快马 ​

Z-Image(造相)是阿里通义实验室的 6B 文生图模型,本页主角 Z-Image-Turbo 是它的蒸馏版:官方教程给出的定位是 8 步采样出图、塞得进 16GB 显存的消费级设备,在企业级 H800 GPU 上推理延迟低于 1 秒。这一页带你把官方 Z-Image-Turbo 工作流从头跑通,再看 int8 量化版和 Fun Union ControlNet 两条扩展路线。

顺带一提:v0.41.0 起 ComfyUI 内置的默认文生图工作流就基于 Z-Image-Turbo——你在第一次生图里已经和它打过照面了。

学完你能做什么 ​

  • 从官方模板库加载 Z-Image-Turbo 文生图工作流,补齐三个模型文件,跑通 8 步出图
  • 说得出 Z-Image 三兄弟(Turbo / Base / Edit)的分工,知道普通用户为什么选 Turbo
  • 记住 Z-Image-Turbo 工作流的推荐参数:8 步、cfg 1、res_multistep + simple、1024×1024
  • 硬盘吃紧时换装官方 int8 量化版,两个权重文件省约 8GB
  • 用 Fun Union ControlNet 让出图跟着线稿、深度、姿态走,且知道它的文件放哪个目录

你现在的困境 ​

  • 想本地跑新模型,一看 FLUX.1 全量版约 23GB、Qwen-Image 20B,硬盘和显存双双告急
  • 下载了 Z-Image-Turbo 模板,节点一片红色警告,三个模型文件不知道去哪下、放哪里
  • 拿 SD1.5 的老经验调参:步数拉满、cfg 拉到 8、猛写负向提示词,出来的图反而更糟

什么时候用这一招 ​

当你需要:

  • 在 16GB 显存的消费级显卡上快速出写实风格的图
  • 图里要写中英文文字——招牌、海报、封面标题
  • 反复抽卡迭代:8 步的采样速度让「再跑一次」不心疼

而且不想:

  • 下 20GB 级别的大权重、等 20 步以上的采样
  • 只靠提示词碰运气,完全控制不了构图(第 6 步的 ControlNet 正好解决这个)

🎒 开始前的准备 ​

  • 跑通了第一次生图:会加载工作流、写提示词、按 Ctrl+Enter 运行
  • 模型目录规则心里有数:diffusion_models、text_encoders、vae 各放什么(忘了回看模型放哪里)
  • 显存 16GB 上下(官方对 Turbo 的定位);硬盘预留约 19GB 给三个模型文件
  • 网络能连 Hugging Face;连不稳就走 ModelScope 国内源(第 2 步给地址)
  • 一杯水 ☕——本课最大的等待就是下模型

核心思路 ​

Z-Image 是个「国产全家桶」。 阿里通义实验室的 6B 文生图模型,架构是 S3-DiT(Scalable Single-Stream DiT,可扩展单流扩散 Transformer):文本、视觉语义、图像 VAE 三类 token 在序列层面拼成一条输入流,官方说法是这样「参数效率最大化」。文本编码器也是自家货——Qwen3 4B(qwen_3_4b.safetensors),所以它对中文提示词友好,官方亮点里明写「中英双语文字渲染准确」。

三兄弟分工(本页主角是 Turbo):

变体定位适合谁
Z-Image-Turbo蒸馏版:8 步出图,16GB 显存可跑普通用户日常出图
Z-Image-Base非蒸馏基座:响应负向提示词、生成多样性高,面向微调想训 LoRA / 微调的开发者
Z-Image-Edit修图变体:指令式编辑官方文档仅提及,暂无 ComfyUI 官方教程与模板

为什么 8 步就够? 蒸馏把「多步去噪」的能力压进「少步推理」,代价是模型不再靠正负提示词对比来引导——所以官方模板 cfg 固定为 1,负向条件直接用 ConditioningZeroOut 节点置零。8 步不是偷工减料,是 Turbo 类模型的设计。

工作流骨架(比 SD1.5 单 checkpoint 多了两个 loader 和一个调度补丁):

UNETLoader(扩散模型)──→ ModelSamplingAuraFlow(shift 3)──→ KSampler ──→ VAEDecode ──→ SaveImage
CLIPLoader(文本编码器)──→ CLIPTextEncode(你的提示词)──→ KSampler(positive)
                               └──→ ConditioningZeroOut ──→ KSampler(negative,置零)
VAELoader(VAE)────────────────────────────────────────→ VAEDecode
EmptySD3LatentImage(1024×1024 空画布)────────────────→ KSampler

跟我做 ​

第 1 步:加载官方 Z-Image-Turbo 文生图工作流 ​

为什么:官方模板库里有配好参数和模型链接的现成工作流,比从零连线快得多。

操作:三种方式任选。

方式 A:模板库一键加载(推荐) ​

左侧栏 Templates 打开模板库,搜 Z-Image-Turbo,选「Z-Image-Turbo: 文生图」(模板名 image_z_image_turbo,官方模板库统计使用 1.4 万+ 次)。模板库的完整玩法见模板库。

方式 B:直接用内置默认工作流 ​

v0.41.0 起 ComfyUI 内置的默认文生图工作流就基于 Z-Image-Turbo,全新安装的当前版本启动时会自动加载它,可以直接跟练——内置版和官方模板的采样参数一致(8 步、cfg 1)。

方式 C:下载 JSON 手动打开 ​

官方模板文件:image_z_image_turbo.json,下载后用菜单 Workflows → Open 打开。

你应该看到:画布上是一个名为 Text to Image (Z-Image-Turbo) 的子图节点,提示词、宽高、seed、步数这些常用参数直接暴露在节点表面,旁边还有一张写满模型下载链接的便签(MarkdownNote)。子图的用法官方有专门文档:docs.comfy.org/interface/features/subgraph。

  • 画布上加载了 Z-Image-Turbo 工作流(模板版或内置默认版)

第 2 步:下载三件套模型并放进对应目录 ​

为什么:Z-Image-Turbo 不打包成单个 checkpoint,三件套分开装;放错子目录,loader 的下拉列表里就找不到文件。

操作:官方教程给的三个文件都在 Hugging Face 仓库 Comfy-Org/z_image_turbo:

文件大小放进哪个子目录下载
z_image_turbo_bf16.safetensors11.46 GBmodels/diffusion_models/Hugging Face
qwen_3_4b.safetensors7.49 GBmodels/text_encoders/Hugging Face
ae.safetensors319.8 MBmodels/vae/Hugging Face

💡 国内下载走 ModelScope

同一仓库在魔搭有镜像:Comfy-Org/z_image_turbo,下载 split_files 下相同路径的三个文件即可,对国内网络更友好。

放好后画布上按 r 刷新,三个 loader 的下拉列表里分别选中对应文件。哪个文件进哪格不确定,回看模型放哪里的对照表。

你应该看到:红色缺失警告全部消失,三个 loader 节点都显示正确的文件名。

  • 三个模型文件都在正确子目录里,loader 都选中了文件

第 3 步:读懂 Z-Image-Turbo 工作流的节点与参数 ​

为什么:会调参的前提,是知道每个节点干什么、默认参数为什么是它。

操作:进子图内部(或对着内置默认工作流),逐节点对照这张表:

节点干什么模板里的关键参数
UNETLoader装扩散模型本体(6B)z_image_turbo_bf16.safetensors
CLIPLoader装文本编码器qwen_3_4b.safetensors,类型 lumina2
VAELoader装 VAEae.safetensors
ModelSamplingAuraFlow噪声调度补丁,shift 控制噪声分布shift = 3
CLIPTextEncode把提示词编码成条件接 KSampler 的 positive
ConditioningZeroOut把负向条件置零Turbo 模型 cfg=1,不需要负向提示词
EmptySD3LatentImage造空画布1024×1024、批次 1
KSampler去噪采样8 步、cfg 1、res_multistep、simple、denoise 1.0
VAEDecode潜空间解码成像素—
SaveImage预览并保存前缀 z-image-turbo,文件落 ComfyUI/output/

CLIPLoader 的类型保持模板默认 lumina2——Z-Image 系列的官方工作流都这么配。

你应该看到:从左到右你能说出每个节点的职责,KSampler 参数与上表一致。

  • 我能说出三件套分别由哪个 loader 装、KSampler 的关键参数是什么

第 4 步:写提示词,跑出你的第一张 8 步图 ​

为什么:Z-Image-Turbo 的卖点是「快 + 中英双语」,提示词直接写画面就行。

操作:

  1. 在子图的 prompt(或 CLIPTextEncode 的 text)里写提示词。官方模板自带的示例:
text
Latina female with thick wavy hair, harbor boats and pastel houses behind. Breezy seaside light, warm tones, cinematic close-up.
  1. 中文直接写也行——官方说明它支持中英文提示词。同一个画面的中文写法:
text
海港边的拉丁裔女性,浓密卷发,身后是渔船和糖果色小房子,海风侧光,暖色调,电影感特写
  1. 它擅长把图里的中英文字写对——需要画面里出现文字时,把文字内容描述进提示词即可
  2. 尺寸默认 1024×1024,想换比例就改子图的 width / height
  3. 点 Run 或按 Ctrl+Enter

你应该看到:进度条只走 8 步,很快就出图;SaveImage 节点显示结果,文件名带 z-image-turbo 前缀。

  • SaveImage 里出现了第一张 Z-Image-Turbo 生成的图

第 5 步:硬盘吃紧?换 int8 量化版 ​

为什么:bf16 全量版两个大权重合计约 18.9GB;官方另发了 int8 量化版,扩散模型 11.46GB → 5.78GB,文本编码器换 fp8 版 7.49GB → 5.25GB,合计省约 8GB。

操作:模板库搜 Z-Image-Turbo Int8,加载「Z-Image-Turbo Int8: 文生图」(image_z_image_turbo_int8)。只需换两个文件,VAE 不变:

文件大小放进哪个子目录下载
z_image_turbo_int8_convrot.safetensors5.78 GBmodels/diffusion_models/Hugging Face
qwen_3_4b_fp8_mixed.safetensors5.25 GBmodels/text_encoders/Hugging Face
ae.safetensors(不用换)319.8 MBmodels/vae/沿用第 2 步下载的

采样参数与 bf16 版完全一致(8 步、cfg 1、res_multistep / simple),提示词、尺寸用法照旧。

⚠️ 跑不起来先更新 ComfyUI

int8 模板的官方说明:请先把 ComfyUI 更新到最新——nightly 支持的模型,Desktop / Cloud 要等 stable 版本跟进才有。

你应该看到:UNETLoader 选中 z_image_turbo_int8_convrot.safetensors 后,同样 8 步出图。

  • int8 版跑通,出图正常

第 6 步:加 Fun Union ControlNet 控制构图 ​

为什么:文生图只能抽卡;ControlNet 让模型照着线稿、深度图、姿态出图,构图你说了算。Z-Image 的官方 ControlNet 是 alibaba-pai 的 Fun Union ControlNet——一个文件支持 Canny、HED、Depth、Pose、MLSD 五种控制。

操作:

  1. 模板库搜 Z-Image-Turbo,加载「Z-Image-Turbo 控制生图」(image_z_image_turbo_fun_union_controlnet)
  2. 额外下载 ControlNet 权重 Z-Image-Turbo-Fun-Controlnet-Union.safetensors(2.89 GB),放进 models/model_patches/——注意不是 controlnet 目录,它是模型补丁,由 ModelPatchLoader 加载
  3. LoadImage 换成你自己的图(官方示例图 image_z_image_turbo_fun_union_controlnet_input_image.png 也可下载来试)
  4. 点 Run

模板默认演示 Canny 线稿控制:输入图先过 Canny 预处理(阈值 0.1 / 0.32),线稿图和 ControlNet 补丁一起注入模型(模板里的控制节点是 QwenImageDiffsynthControlnet,strength 默认 1),采样仍是 8 步、cfg 1;出图尺寸自动跟随你上传的图。

官方说明模板只演示了 Canny——想试 HED、Depth、Pose、MLSD,把预处理节点换成对应预处理器即可。ControlNet 的系统玩法见ControlNet 入门。

💡 输入图太大先缩一边

模板便签提醒:输入图超过 2500px 时,选中画布上的 ImageScaleToMaxDimension 节点按 Ctrl-B 启用(默认旁路),它会用 lanczos 把最长边缩到 1024。

你应该看到:出图的构图轮廓与输入图的线稿一致,画面内容则跟随提示词。

  • ControlNet 版出图,构图跟着输入图走

检查点 ✅ ​

  • Z-Image-Turbo 文生图跑通:模板加载 → 三件套归位 → 8 步出图
  • 我知道 8 步 + cfg 1、负向条件置零是蒸馏模型的设计,不是工作流坏了
  • int8 版换装成功,知道它省的是权重体积和硬盘
  • Fun Union ControlNet 文件放在 models/model_patches/,构图控制生效
  • 知道 Z-Image 三兄弟的分工,选型不再纠结

踩坑提醒 ​

❌ 猛写负向提示词,图却没变化 ​

原因:Turbo 蒸馏模型 cfg=1,采样不做正负条件对比,负向提示词不起作用;官方模板干脆用 ConditioningZeroOut 把负向条件置零。正确做法:把精力全放在正向提示词的画面描述上。用内置默认工作流、界面上有负向提示词框的,同样别指望它。

❌ 照搬 SD1.5 参数:步数拉到 20、cfg 拉到 8 ​

原因:蒸馏模型的步数与 cfg 跟着训练方式走,8 步 + cfg 1 就是官方模板配置,乱调反而崩。正确做法:参数保持模板默认,先改提示词和 seed;各参数的含义回看第一次生图的 KSampler 全参数表。

❌ ControlNet 文件放进 models/controlnet/,节点里找不到 ​

原因:Fun Union ControlNet 是模型补丁(model patch),不走传统 ControlNet 的加载路数。正确做法:放进 models/model_patches/,由模板里的 ModelPatchLoader 加载。

❌ int8 工作流报错或加载失败 ​

原因:int8 权重较新,旧版 ComfyUI 不认。官方模板说明 nightly 支持的模型要先更新,Desktop / Cloud 跟随 stable 发布。正确做法:先更新 ComfyUI 再试;还不行就按模型加载失败排查。

进阶技巧(可选) ​

🔧 一键放大到 2K:模板库还有「图像放大: Z-Image-Turbo 2K」(utility_z_image_turbo_2k_upscaler.app):RealESRGAN_x4plus 先做保守放大,Z-Image-Turbo 再用低 denoise 重采样补细节,模板默认 denoise 0.33(0.15–0.25 更贴近原图,0.25–0.35 细节更多;超过 0.35 要配详细的画面描述,否则容易出伪影)。完整玩法见商品图高清放大。

🔧 想微调?用 Z-Image-Base:非蒸馏基座响应负向提示词、生成多样性更高,官方定位是给社区微调和定制开发。模板库有「Z-Image:文生图」「Z-Image Int8: 文生图」两个模板,扩散模型文件是 z_image_bf16.safetensors,文本编码器和 VAE 与 Turbo 通用(官方下载页指向同一批文件)。

🔧 模板库搜 Z-Image 还有组合流水线:比如先用 Grok 生成、再用 Z-Image 放大加纹理的多模型模板,搜 Z-Image 能翻到不少现成组合。

本课小结 ​

✅ Z-Image-Turbo 工作流跑通了:模板加载 → 三件套归位 → 8 步出图;当前版本 ComfyUI 的内置默认工作流也是它。

✅ 参数记住了:8 步、cfg 1、res_multistep + simple、1024×1024、shift 3;负向条件置零是蒸馏模型的设计。

✅ 两条扩展路线:int8 量化版省约 8GB 权重;Fun Union ControlNet(放 model_patches/)让构图可控。

✅ 选型清楚了:日常出图用 Turbo,微调用 Base,修图等 Z-Image-Edit 的官方教程。

关键配置回顾:

配置推荐值说明
扩散模型z_image_turbo_bf16.safetensors(int8 版 z_image_turbo_int8_convrot.safetensors)放 models/diffusion_models/
文本编码器qwen_3_4b.safetensors(int8 配套 qwen_3_4b_fp8_mixed.safetensors)放 models/text_encoders/,CLIPLoader 类型 lumina2
VAEae.safetensors放 models/vae/,两版通用
KSampler8 步、cfg 1、res_multistep、simple、denoise 1.0别照搬 SD1.5 的 20 步 + cfg 8
画布EmptySD3LatentImage 1024×1024换比例改 width / height
噪声调度ModelSamplingAuraFlow shift 3跟模板走
ControlNetZ-Image-Turbo-Fun-Controlnet-Union.safetensors放 models/model_patches/,支持 Canny / HED / Depth / Pose / MLSD

下一课预告 ​

Z-Image-Turbo 胜在快,但要在图里写大段中文文字,还得看下一课的 Qwen-Image——阿里 Qwen 团队的 20B 文生图模型,中英文字渲染是它的招牌。下一课:Qwen-Image 文生图。

你会学到:

  • Qwen-Image 20B 基座与蒸馏版 15 步、Lightning LoRA 8 步的加速路线
  • 在图里写中文文字(海报、标语)的玩法
  • Qwen-Image-2512 摄影升级版与 ModelScope 下载
  • 它和 Z-Image-Turbo 怎么分工
搞懂AI关于我们怎么写隐私说明

独立的第三方教程,与文中提到的任何产品及其公司没有隶属或合作关系;产品名称和商标归各自所有者。价格和政策以官方页面为准。