Qwen-Image 文生图:写好中文字(含 2512 摄影升级)
Qwen-Image 是阿里 Qwen 团队 2025 年 8 月开源的第一个图像生成基座模型:20B 参数的 MMDiT(多模态扩散 Transformer),Apache 2.0 协议,特点是复杂文字渲染——图里的中文招牌、海报标题、封面大字不再是乱码。这一页带你把官方 Qwen-Image 工作流从头跑通:四件套模型、20 步标准档、Lightning 8 步加速与蒸馏版 15 步两条提速路线,最后升级到 12 月发布的 Qwen-Image-2512 摄影升级版。
和上一课的 Z-Image-Turbo 分个工:它是 6B 蒸馏版,8 步出图、16GB 显存能跑;Qwen-Image 是 20B 基座模型,文字渲染和画质上限更高,但权重约 19GB、官方实测数据来自 24GB 显卡——要「快」用前者,要「图里写字、画质顶格」用本页。
学完你能做什么
- 从官方模板库加载 Qwen-Image 文生图工作流,补齐四件套模型,跑通 20 步标准档出图
- 把中文招牌、海报标题写进提示词,让图里的文字按你写的成型
- 打开 Lightning LoRA 开关切到 8 步加速档,或换装蒸馏版走 15 步路线
- 说得出 Qwen-Image 家族三条线的分工:基座线(本页)、Edit 编辑线、2.1 新一代
- 换装 Qwen-Image-2512:只换一个扩散模型文件,拿到更写实的人像和更准的文字排版
你现在的困境
- 想生成带中文标语的海报或招牌图,别的模型写出来的字不是糊成团就是缺笔少画
- 下载了 Qwen-Image 模板,节点红色警告一片:四个模型文件去哪下、放哪个目录、CLIPLoader 类型选什么,全不知道
- 听说 20B 模型很吃显存,不知道自己的卡跑不跑得动、跑起来要等多久
- 知道有 Lightning LoRA 和蒸馏版两条加速路线,但不清楚参数怎么改、能不能混着用
什么时候用这一招
当你需要:
- 图里出现成段的中文文字——店招、海报标题、产品包装、封面大字
- 画质和文字精度优先,显卡显存 24GB 上下(或愿意等 offload)
- 同一个画面反复抽卡,愿意用 Lightning 8 步换速度
而且不想:
- 用 6B 快马凑合,结果文字渲染撑不起招牌级中文
- 把文字后期 P 上去——字体透视、光照对不上,一眼假
- 为一次升级把全套模型重下一遍(2512 与基座共用文本编码器和 VAE,第 6 步只换一个文件)
🎒 开始前的准备
- 跑通了第一次生图:会加载工作流、写提示词、按
Ctrl+Enter运行 - 模型目录规则心里有数:
diffusion_models、text_encoders、vae、loras各放什么(忘了回看模型放哪里) - 硬盘预留约 28GB(fp8 三件套 19.03 + 8.74 + 0.24 GB;Lightning LoRA 再加 1.58GB)
- 显存参考:官方实测来自 RTX 4090D 24GB(占用 86%);小显存卡可能吃力,遇到 OOM 去显存不足找解法
- 网络能连 Hugging Face;连不稳走 ModelScope 国内源(第 2 步给地址)
- 倒杯水再回来——本课最大的等待还是下模型
核心思路
Qwen-Image 为什么能写好中文字? 它的文本编码器是自家多模态模型 Qwen2.5-VL 7B(fp8 量化版 8.74GB),提示词直接写中文没问题——官方说明支持英语、中文、韩语、日语、意大利语等。模型本身的亮点就是多语言文字渲染:保持字体细节和排版一致性,从写实场景到印象派、动漫、极简设计都能切换。要在图里「写字」,把文字内容用引号写进提示词即可(第 4 步看官方示例)。
家族三条线(本页讲基座线,编辑线是下一课):
| 产品线 | 成员 | 定位 | 教程 |
|---|---|---|---|
| 文生图基座线 | Qwen-Image(8 月)→ Qwen-Image-2512(12 月升级) | 纯文生图,文字渲染招牌 | 本页 |
| 指令编辑线 | Qwen-Image-Edit → 2509 → 2511 | 一句话改图、换背景、改文字 | 下一课 |
| 新一代一体线 | Qwen-Image-2.1 | 生成+编辑一个模型,原生 2K、透明底 | 第 2.4 课 |
三档速度怎么选(官方在 RTX 4090D 24GB 上实测):
| 档位 | 模型 | 步数 / cfg | 首轮 / 次轮耗时 | 显存 |
|---|---|---|---|---|
| 标准档 | fp8 基座 | 20 步 / cfg 4(模板默认) | ≈ 94s / ≈ 71s | 86% |
| Lightning 档 | fp8 基座 + 8 步 LoRA | 8 步 / cfg 1 | ≈ 55s / ≈ 34s | 86% |
| 蒸馏档 | 非官方蒸馏版 fp8 | 15 步 / cfg 1.0(10 步也可) | ≈ 69s / ≈ 36s | 86% |
50 步是 Qwen-Image 官方原始设置,模板便签注明「效果更还原但更慢」;日常用 20 步足够。
工作流骨架(和 Z-Image-Turbo 同款三 loader 结构,多了个 LoRA 开关):
UNETLoader(扩散模型 20B)──→ LoraLoaderModelOnly(Lightning,开关控制)──→ ModelSamplingAuraFlow(shift 3.1)──→ KSampler ──→ VAEDecode ──→ SaveImage
CLIPLoader(Qwen2.5-VL 7B)──→ CLIPTextEncode(你的提示词)────────────────→ KSampler(positive)
└──→ CLIPTextEncode(负向提示词,标准档可写)──→ KSampler(negative)
VAELoader(VAE)────────────────────────────────────────────────────────→ VAEDecode
EmptySD3LatentImage(1328×1328 空画布)─────────────────────────────────→ KSampler跟我做
第 1 步:加载官方 Qwen-Image 文生图工作流
为什么:官方模板把参数、模型链接、加速开关都配好了,从零连线既费时又容易漏节点。
操作:两种方式任选。
方式 A:模板库一键加载(推荐)
左侧栏 Templates 打开模板库,搜 Qwen-Image,选「Qwen千问-图像:文生图」(模板名 image_qwen_image,2025 年 8 月上架)。模板库的完整玩法见模板库。
方式 B:下载 JSON 手动打开
官方模板文件:image_qwen_image.json,下载后用菜单 Workflows → Open 打开。
你应该看到:画布中央是一个名为 Text to Image (Qwen-Image) 的子图节点,提示词、宽高、seed 直接暴露在节点表面,还有一排模型文件输入和一个 enable_turbo_mode 加速开关(第 5 步用它切到 Lightning 8 步档);旁边一张便签(MarkdownNote)写满模型大小与下载链接。子图用法官方有专门文档:docs.comfy.org/interface/features/subgraph。
- 画布上加载了 Qwen-Image 工作流,能看到子图和模型便签
第 2 步:下载四件套模型并放进对应目录
为什么:Qwen-Image 不打包成单个 checkpoint——扩散模型、文本编码器、VAE 三件分开装,Lightning LoRA 是可选的第四件;放错子目录,loader 的下拉列表里就找不到文件。
操作:前三个必下,第四个想加速再下(不下也能跑标准档):
| 文件 | 大小 | 放进哪个子目录 | 下载 |
|---|---|---|---|
qwen_image_fp8_e4m3fn.safetensors | 19.03 GB | models/diffusion_models/ | Hugging Face |
qwen_2.5_vl_7b_fp8_scaled.safetensors | 8.74 GB | models/text_encoders/ | Hugging Face |
qwen_image_vae.safetensors | 242 MB | models/vae/ | Hugging Face |
Qwen-Image-Lightning-8steps-V1.0.safetensors(可选) | 1.58 GB | models/loras/ | Hugging Face |
fp8 是官方工作流默认采用的格式(同家族 2512 版官方明确标注 fp8 推荐给大多数用户);追求更高画质可换 bf16 全量版(约 40.9 GB,Qwen 官方仓库),显存和硬盘开销翻倍。
💡 国内下载走 ModelScope
前三件在魔搭有同一仓库镜像:Comfy-Org/Qwen-Image_ComfyUI,下载 split_files 下相同路径的文件即可,对国内网络更友好。
放好后画布上按 r 刷新,三个 loader 分别选中对应文件。哪个文件进哪格不确定,回看模型放哪里的对照表。
你应该看到:红色缺失警告全部消失,子图表面显示三个正确的模型文件名。
- 三个必下文件都在正确子目录里,loader 都选中了文件
第 3 步:读懂 Qwen-Image 工作流的节点与参数
为什么:这套 Qwen-Image 工作流是全家族的母版——后面的 2512、下一课的 Edit 用的都是同款骨架。现在读懂节点,后面全是换文件。
操作:双击进子图内部,逐节点对照这张表:
| 节点 | 干什么 | 模板里的关键参数 |
|---|---|---|
| UNETLoader | 装扩散模型本体(20B) | qwen_image_fp8_e4m3fn.safetensors |
| CLIPLoader | 装 Qwen2.5-VL 7B 文本编码器 | qwen_2.5_vl_7b_fp8_scaled.safetensors,类型 qwen_image |
| VAELoader | 装 VAE | qwen_image_vae.safetensors |
| ModelSamplingAuraFlow | 噪声调度补丁,shift 控制噪声分布 | shift = 3.1 |
| CLIPTextEncode | 把提示词编码成条件 | 正向接 KSampler 的 positive;负向默认留空 |
| EmptySD3LatentImage | 造空画布 | 1328×1328、批次 1 |
| KSampler | 去噪采样 | euler + simple、denoise 1.0;步数与 cfg 由开关连动(见下) |
| LoraLoaderModelOnly | 挂 Lightning LoRA | Qwen-Image-Lightning-8steps-V1.0.safetensors,强度 1 |
| 切换节点 ×3 + 布尔开关 | 加速档连动 | 一个开关同时切换 LoRA、步数、cfg |
| VAEDecode / SaveImage | 解码并保存 | 前缀 Qwen-Image,文件落 ComfyUI/output/ |
开关逻辑(模板把三样参数打包,拨一个开关全切换;开关在子图表面叫 enable_turbo_mode,子图内部的布尔节点叫 Enable Lightning LoRA):
| enable_turbo_mode | LoRA | 步数 | cfg |
|---|---|---|---|
| 关(默认) | 不挂 | 20 | 4 |
| 开 | 挂上,强度 1 | 8 | 1 |
模板便签还提了一句:想跑官方原始设置可以试 50 步,效果更还原但更慢。
CLIPLoader 的类型保持模板默认 qwen_image——这是 Qwen-Image 系列在 ComfyUI 里的专属加载类型,别改成别的。
你应该看到:从左到右你能说出每个节点的职责;KSampler 的步数和 cfg 不是手填的,而是来自开关连动——默认(开关关)实际走 20 步、cfg 4。
- 我能说出三件套分别由哪个 loader 装、开关切换的是哪三样参数
第 4 步:写带中文文字的提示词,跑出第一张图
为什么:Qwen-Image 的招牌就是文字渲染——把要出现在图里的文字用引号写进提示词,模型会把它们连同字体、排版一起排进画面。
操作:
- 在子图的 prompt(或 CLIPTextEncode 的 text)里写提示词。官方模板自带的示例就是一张「文字考卷」——1980 年代香港街头,满街中英霓虹招牌:
A vibrant, warm neon-lit street scene in Hong Kong at the afternoon, with a mix of colorful Chinese and English signs glowing brightly. The atmosphere is lively, cinematic, and rain-washed with reflections on the pavement. The colors are vivid, full of pink, blue, red, and green hues. Crowded buildings with overlapping neon signs. 1980s Hong Kong style. Signs include:
"龍鳳冰室" "金華燒臘" "HAPPY HAIR" "鴻運茶餐廳" "EASY BAR" "永發魚蛋粉" "添記粥麵" "SUNSHINE MOTEL" "美都餐室" "富記糖水" "太平館" "雅芳髮型屋" "STAR KTV" "銀河娛樂城" "百樂門舞廳" "BUBBLE CAFE" "萬豪麻雀館" "CITY LIGHTS BAR" "瑞祥香燭莊" "文記文具" "GOLDEN JADE HOTEL" "LOVELY BEAUTY" "合興百貨" "興旺電器" And the background is warm yellow street and with all stores' lights on.- 换成你自己的画面:先描述场景与风格,再把要出现的文字用引号列出。提示词直接写中文也行——官方说明支持英语、中文、韩语、日语、意大利语等。一张中文海报的写法示例:
复古港式奶茶店门头,暖黄色灯光,木质招牌上写着「手作珍珠奶茶」,招牌角落一行小字「每日鲜煮」,玻璃柜台映着霓虹光,胶片质感- 尺寸默认 1328×1328(1:1);想换比例就改子图的 width / height,常用分辨率见第 6 步的比例表
- 点 Run 或按
Ctrl+Enter
你应该看到:进度条走 20 步(标准档),24GB 卡上首轮约一分半;SaveImage 出图,招牌上的中文按你写的成型,文件名带 Qwen-Image 前缀。
- SaveImage 里出现了第一张带中文文字的 Qwen-Image 生成图
第 5 步:加速出图——Lightning LoRA 8 步或蒸馏版 15 步
为什么:标准档 20 步首轮约 94 秒,反复抽卡等不起。官方教程给了两条提速路线,砍到 8 步或 15 步。
方式 A(推荐):Lightning LoRA 8 步
- 确认第 2 步的
Qwen-Image-Lightning-8steps-V1.0.safetensors已经在models/loras/ - 把子图表面的 enable_turbo_mode 开关拨到开——LoRA、步数、cfg 三样自动连动切换:挂上 LoRA、8 步、cfg 1
- 点 Run
官方实测 8 步档首轮 ≈55s、后续轮 ≈34s。注意 cfg 1 意味着采样不做正负条件对比,负向提示词不起作用(原理和 Z-Image-Turbo 一样),精力全放在正向提示词上。
方式 B:蒸馏版 15 步
- 下载非官方蒸馏版 qwen_image_distill_full_fp8_e4m3fn.safetensors(19.03 GB;bf16 版 38.05 GB),放
models/diffusion_models/ - 下载官方配套工作流 image_qwen_image_distill.json,用 Workflows → Open 打开
- UNETLoader 选中蒸馏版文件,参数按原作者推荐:15 步、cfg 1.0;官方测试 10 步 + cfg 1.0 表现也不错,采样器
euler或res_multistep都行
官方实测蒸馏档首轮 ≈69s、后续轮 ≈36s。
⚠️ 两条路线别叠着用
官方教程明说:蒸馏版模型和 lightx2v 的 8 步 LoRA「看起来不兼容同时使用」。想快就二选一:要么基座 + Lightning LoRA,要么蒸馏版裸跑。
你应该看到:方式 A 进度条只走 8 步,方式 B 走 15 步,出图都明显变快;画质风格略有差异,抽卡时按需切换。
- 至少一条加速路线跑通,出图时间明显缩短
第 6 步:升级 Qwen-Image-2512,人物写实与文字排版再进一步
为什么:2512 是基座的 12 月升级版,官方列了三处提升:人物更写实(明显减少「AI 生成感」)、自然细节更精细(风景、动物毛发)、文字渲染的排版与图文一致性更好。
操作:
- 模板库搜
Qwen-Image-2512,加载「Qwen Image 2512」(模板名image_qwen_Image_2512);或下载 image_qwen_Image_2512.json 手动打开。结构和基座版一模一样:提示词、宽高、seed 暴露在子图表面,还是那个加速开关 - 只需换一个文件:qwen_image_2512_fp8_e4m3fn.safetensors(19.03 GB,官方推荐)放
models/diffusion_models/;画质优先可下 qwen_image_2512_bf16.safetensors(更大更吃显存)。文本编码器和 VAE 与基座通用,不用重下 - 想要 4 步加速档,另下 4 步 LoRA:Qwen-Image-2512-Lightning-4steps-V1.0-fp32.safetensors(1.58 GB)放
models/loras/。官方教程页写的是旧文件名Qwen-Image-Lightning-4steps-V1.0.safetensors,与模板实际引用不一致——以工作流模板为准 - 参数:默认 50 步、cfg 4(
euler+simple);打开加速开关(子图内部叫 Enable 4 Steps LoRA?)自动切到 4 步、cfg 1 - 换比例直接改宽高,官方 2512 文档给的比例表:
| 比例 | 分辨率 |
|---|---|
| 1:1 | 1328×1328 |
| 16:9 | 1664×928 |
| 9:16 | 928×1664 |
| 4:3 | 1472×1104 |
| 3:4 | 1104×1472 |
| 3:2 | 1584×1056 |
| 2:3 | 1056×1584 |
- 标准档 cfg 4 响应负向提示词——官方模板自带的中文负向示例,直接抄:
低分辨率,低画质,肢体畸形,手指畸形,画面过饱和,蜡像感,人脸无细节,过度光滑,画面具有AI感。构图混乱。文字模糊,扭曲- 点 Run
⚠️ 2512 较新,先更新 ComfyUI
模板便签提醒:请先把 ComfyUI 更新到最新——nightly 支持的模型,Desktop / Cloud 要等 stable 版本跟进。更新后仍加载失败,按模型加载失败排查。
官方主页:GitHub QwenLM/Qwen-Image · Qwen/Qwen-Image-2512(Hugging Face) · Qwen/Qwen-Image-2512(ModelScope);2512 的 ComfyUI 分件也在第 2 步那个 Comfy-Org/Qwen-Image_ComfyUI 仓库,国内下载同样有镜像。
你应该看到:UNETLoader 显示 qwen_image_2512_fp8_e4m3fn.safetensors,标准档 50 步出图;人像肤质、动物毛发这类自然细节比 8 月基座更扎实,图里文字的排版更规整。
- 2512 跑通:只换了一个扩散模型文件,编码器和 VAE 沿用基座的
检查点 ✅
- Qwen-Image 文生图跑通:模板加载 → 四件套归位 → 20 步标准档出图
- 图里的中文文字按提示词成型(招牌或海报标题至少试过一次)
- 加速路线至少跑通一条:Lightning 8 步或蒸馏版 15 步,且知道两条不能叠加
- 2512 换装成功:只换扩散模型文件,编码器与 VAE 通用
- 说得出家族三条线的分工:基座线(本页)、Edit 编辑线、2.1 新一代
踩坑提醒
❌ 开了 Lightning 还猛写负向提示词
原因:加速档 cfg 1,采样不做正负条件对比,负向提示词不起作用。正确做法:加速档把精力全放在正向提示词;确实需要负向引导就回标准档(cfg 4,2512 模板自带的中文负向示例就是给标准档用的)。
❌ 蒸馏版挂上 Lightning LoRA 一起跑
原因:官方教程明说,蒸馏版模型和 lightx2v 的 8 步 LoRA「看起来不兼容同时使用」。正确做法:二选一——基座 + Lightning LoRA(8 步 cfg 1),或蒸馏版裸跑(15 步 cfg 1.0)。
❌ CLIPLoader 的类型没保持 qwen_image
原因:Qwen-Image 系列在 ComfyUI 里有专属的加载类型,类型选错文本编码器就装不对。正确做法:保持模板默认 qwen_image,换 2512、下一课换 Edit 也一样。
❌ 2512 工作流加载报错或模型不认
原因:2512 较新,旧版 ComfyUI 不支持;官方模板便签要求先更新,Desktop / Cloud 要等 stable 版本跟进。正确做法:先把 ComfyUI 更新到最新;仍不行按模型加载失败排查。
❌ 显存爆掉(CUDA out of memory)
原因:20B 模型,官方实测数据来自 24GB 显卡(占用 86%),更小的卡容易溢出。正确做法:去显存不足找 offload 与量化设置;抽卡阶段先用 Lightning 8 步档降低等待成本。
进阶技巧(可选)
🔧 2 步 Turbo 档:模板库还有「Qwen-Image 2512 Turbo」(image_qwen_image_2512_with_2steps_lora):换 Wuli-art 的 2 步 Turbo LoRA(Wuli-Qwen-Image-2512-Turbo-LoRA-2steps-V1.0-bf16.safetensors,强度 1),KSampler 只走 2 步、cfg 1,负向条件直接置零。官方模板描述明说「为了速度会牺牲一些质量」——赶时间预览构图时用。
🔧 ControlNet 控制构图:Qwen-Image 有三条官方 ControlNet 路线,权重目录各不相同:
| 路线 | 支持的控制 | 放哪个目录 |
|---|---|---|
| InstantX Union ControlNet | canny / softedge / depth / pose | models/controlnet/ |
| DiffSynth 补丁 | canny / depth / inpaint | models/model_patches/ |
Union Control LoRA(qwen_image_union_diffsynth_lora.safetensors) | canny / depth / pose / lineart / softedge / normal / openpose | models/loras/ |
深度控制要先用 Lotus 深度模型(lotus-depth-d-v1-1.safetensors)加一个 SD1.5 VAE 做预处理。系统玩法见ControlNet 入门。
🔧 给 Qwen-Image 挂风格 LoRA:工作流里的 LoraLoaderModelOnly 就是现成的挂载点(Lightning 就是用它挂的),换装 Qwen-Image 生态的风格 LoRA 同款路数。LoRA 的系统玩法见LoRA 用法。
本课小结
✅ Qwen-Image 工作流跑通了:模板加载 → 四件套归位 → 20 步标准档出图;这套骨架是全家族母版,2512 和下一课的 Edit 都是换文件不换结构。
✅ 中文字写进图里了:要出现的文字用引号写进提示词,Qwen2.5-VL 7B 编码器加多语言文字渲染负责成型——这是它对 Z-Image-Turbo 的核心优势。
✅ 加速路线记住了:Lightning 8 步(拨 enable_turbo_mode 开关)或蒸馏版 15 步(换模型文件),二选一不叠加;cfg 1 时负向提示词无效。
✅ 2512 升级只换一个文件:扩散模型换成 qwen_image_2512_fp8_e4m3fn.safetensors,编码器与 VAE 通用;换来更写实的人像和更规整的文字排版。
关键配置回顾:
| 配置 | 推荐值 | 说明 |
|---|---|---|
| 扩散模型 | qwen_image_fp8_e4m3fn.safetensors(2512 版 qwen_image_2512_fp8_e4m3fn.safetensors) | 放 models/diffusion_models/,fp8 为官方推荐 |
| 文本编码器 | qwen_2.5_vl_7b_fp8_scaled.safetensors | 放 models/text_encoders/,CLIPLoader 类型 qwen_image |
| VAE | qwen_image_vae.safetensors | 放 models/vae/,基座与 2512 通用 |
| KSampler 标准档 | 20 步、cfg 4、euler + simple、denoise 1.0 | 2512 默认 50 步、cfg 4;50 步为官方原始设置 |
| KSampler 加速档 | Lightning:8 步、cfg 1;蒸馏版:15 步、cfg 1.0 | 两条路线不叠加;cfg 1 时负向提示词无效 |
| 噪声调度 | ModelSamplingAuraFlow shift 3.1 | 跟模板走 |
| 画布 | EmptySD3LatentImage 1328×1328 | 换比例见第 6 步的比例表 |
| Lightning LoRA | Qwen-Image-Lightning-8steps-V1.0.safetensors(2512 用 4steps fp32 版) | 放 models/loras/,强度 1 |
下一课预告
基座线只能「从零生成」;想对已有的图动手术——一句话换背景、改文字、调整姿势——要用指令编辑线。下一课:Qwen-Image-Edit 指令修图。
你会学到:
- Qwen-Image-Edit 的指令式修图:一句话换背景、改文字
- 2509 / 2511 两代编辑模型的升级点与选型
- 编辑工作流的模型下载与参数配置
- 基座线 + 编辑线怎么配合:先生成、再修改