深度拆解:Qwen-Image-2.1 的 RGBA 原生透明图,是怎么端到端练出来的
【免费下载链接】Qwen-Image-2.1项目地址: https://ai.gitcode.com/hf_mirrors/Comfy-Org/Qwen-Image-2.1
2026 年 9 月 20 日,通义千问开源了 Qwen-Image-2.1:视觉生成部分仅 7B 参数(32 层 Single-Stream DiT),却在发布当天同时打通了 Diffusers、ComfyUI、vLLM-Omni、SGLang 四条推理路径,并在 Qwen-Image-Bench 上以 60.28 分登顶开源榜首。但社区讨论最热烈的,不是它的参数量,也不是它的 2K 直出能力,而是一个此前几乎只在闭源产品里见过的能力——原生 RGBA 透明图生成。
在它之前,AI 生图的主流工作流是"生成一张带背景的 RGB 图,再用抠图模型或 Photoshop 把主体切出来"。电商素材、游戏贴图、UI 设计、贴纸生产的每一个环节都被这道"后期工序"卡着。Qwen-Image-2.1 直接把 Alpha 通道变成了扩散模型的可生成目标:文生图可以出透明贴纸,图生图可以抠除背景,透明图层还能继续参与编辑。本文基于仓库源码与官方文档,拆开这条"端到端透明图"的技术链路:四通道如何进入模型、透明度用什么损失去学、半透明材质如何被约束,以及它在 ComfyUI 里如何变成一条 25 步就能跑完的生产工作流。
一、Alpha 通道不是"画上去的":RGBA 四通道输出与 Alpha 专用预测分支
传统扩散模型的输出空间是 RGB 三通道:VAE 把图像压缩成潜变量,再还原回三通道像素。透明信息在这条链路里根本没有位置,所以"透明"只能靠后处理补。Qwen-Image-2.1 的突破口在架构最底层——把输出空间从三通道扩成四通道。
官方架构说明写得很直白:VAE 是一个 64 通道的 RGBA 自编码器,空间压缩率 16×,原生支持透明度。64 个通道并非冗余堆叠,而是把 RGB 与 Alpha 一起编码进潜空间:扩散模型在去噪过程中同时预测颜色与透明度,VAE 解码时一次性还原出带 Alpha 通道的完整 RGBA 图像。这意味着"哪里透明、透明到什么程度"从第一帧噪声开始就是生成任务的一部分,而不是生成完再"抠"出来的结果。
这一点在社区对技术方案的拆解中也被反复提及:模型内部设置了Alpha 专用预测分支,让透明度预测与颜色预测共享主干、分路输出,避免透明信息被 RGB 的优化目标"稀释"。从工程角度看,这个设计也直接体现在权重形态上——本仓库的 VAE 权重是独立的 vae/qwen_image_2.1_vae_bf16.safetensors(约 644 MB),与扩散模型解耦,说明 VAE 本身承担了"四通道编解码"的独立职责。
在 Diffusers 侧,调用逻辑同样透明直白。QwenImage21Pipeline官方给出了标准提示词模板:
image = pipe( prompt="This is an RGBA image with transparency. A cute cartoon dragon sticker. " "The image has alpha channel and the background is transparent.", num_inference_steps=40, generator=torch.Generator("cuda").manual_seed(42), ).images[0] image.save("transparent_example.png") # Saved as RGBA when the model generates transparency注意模板里那句"The image has alpha channel and the background is transparent."——透明度在这里是通过自然语言声明的生成属性,而不是某个开关。这引出了下一层问题:模型凭什么"听懂了"这句话?
二、透明度是要用损失函数"教"出来的:联合标注数据集与分层 KL 散度损失
扩散模型不会天生理解"透明"这个抽象概念。要让模型把"alpha channel"和"transparent background"这两句话翻译成像素级的 Alpha 值分布,数据与损失函数缺一不可。
社区技术解读给出的关键词组合是:联合标注数据集 + 分层 KL 散度损失 + Alpha 专用预测分支。联合标注的含义是:训练样本不再只有 RGB 三通道图,而是RGB 与 Alpha 通道成对标注的数据集——包括带透明背景的贴纸/图标/素材、玻璃器皿、光晕粒子等天然带透明语义的图片。模型在每一对 (RGB, Alpha) 上同时学习"颜色长什么样"和"哪里该消失"。
损失函数的设计更值得玩味。常规 VAE 用单一 KL 项约束潜空间分布,而这里采用的是分层 KL 散度损失:对 RGB 潜变量与 Alpha 潜变量分别施加不同层级的分布约束,而不是把它们混在同一个高斯先验里强行对齐。这样做的直接收益是:Alpha 通道获得独立的优化空间,不会因为"颜色重建误差"占主导而被模型悄悄忽略——很多模型"假装会透明"、实际输出一个灰色背景贴图,根源就是 Alpha 在损失里占比过低。分层约束配合 Alpha 专用预测分支,相当于给"透明度"这条学习路径单独开了梯度通道。
这条"数据 + 损失"的链路最终沉淀为模型能力:官方展示中,模型既能从文字直接生成透明贴纸(example-04/05/06系列案例),也能从普通照片中提取主体、输出带 Alpha 的 PNG。同一个 7B 模型内部,透明生成与背景抠除共享同一套参数——这正是"端到端"的含义:没有独立的抠图模块,Alpha 是生成过程的一部分。
三、不只是"全透明":物理属性可控性与半透明材质的约束
原生 RGBA 最容易做成"要么全透明、要么全不透明"的二元结果——那种把边缘抠得像剪纸一样的贴图。Qwen-Image-2.1 真正拉开差距的地方,是它对半透明物理属性的控制:玻璃的反射、阴影的投射、光晕的弥散。
官方示例里多次出现玻璃器皿、雨夜霓虹灯招牌("reflections on wet pavement")等提示词,而社区解读将其归纳为"物理属性可控性":模型深集成 Qwen 视觉语言模型的图文对齐能力,让提示词中的"反射""投射""透明"这些语义能映射到 Alpha 通道的连续值上,而不是二值掩码。换句话说,模型学到的不是"哪些像素删掉",而是"每个像素的透射率是多少"——玻璃边缘的半透明、阴影的柔化边缘、水面的倒影透明度,都是 Alpha 通道上的连续渐变。
这也解释了为什么它适合做贴纸和游戏素材:贴纸的描边、高光、投影如果只是硬抠,放到深色背景上会立刻穿帮;而连续 Alpha 能保留边缘羽化和半透高光,换任意底色都不露馅。7B 参数的模型能扛住这类细节,依赖的正是前面说的"透明度全程参与生成"的架构前提——如果 Alpha 是后期补的,这些物理属性根本无从谈起。
四、把『抠图』变成模型能力:ComfyUI 里的 25 步透明工作流
技术说得再漂亮,也要能落地跑起来才算数。Qwen-Image-2.1 发布当天 ComfyUI 即完成原生适配,本仓库(README.md)就是官方为 ComfyUI 重新打包的完整权重分发:扩散模型、文本编码器、VAE 三类组件按目录组织,另附 ControlNet Union 模型补丁。
仓库的模型布局本身就是一张"部署清单":
📂 ComfyUI/ └── 📂 models/ ├── 📂 diffusion_models/ │ ├── qwen_image_2.1_bf16.safetensors # 13.25 GB,全精度 │ └── qwen_image_2.1_int8_convrot.safetensors # 6.76 GB,INT8 量化 ├── 📂 model_patches/ │ └── qwen_image_2.1_fun_controlnet_union_*.safetensors ├── 📂 text_encoders/ │ ├── qwen3vl_8b_bf16.safetensors # 16.33 GB │ ├── qwen3vl_8b_int8_convrot.safetensors # 8.71 GB │ └── qwen3vl_8b_w4a8.safetensors └── 📂 vae/ └── qwen_image_2.1_vae_bf16.safetensors # 644 MB,64 通道 RGBA 编解码配套的背景移除工作流(官方模板image_qwen_image_2_1_background_removal.json)最能体现"抠图被模型化"这件事:整条链路只有四个关键节点——LoadImage读入照片、TextEncodeQwenImage21编码指令、KSampler采样、VAEDecode+SaveImageAdvanced输出。提示词只需一句:
Remove the background, and output a PNG image
采样参数是cfg=1、25 steps、euler/simple,输出端直接声明png+8-bit+sRGB格式——因为模型输出本身带 Alpha,保存节点无需任何抠图后处理,一张带透明通道的 PNG 就这么出来了。特别值得注意的是 cfg=1:官方路径不依赖 classifier-free guidance 放大,模型在单一条件尺度下就能稳定输出透明度,这反过来印证了 Alpha 分支与分层损失的训练足够扎实。
生态侧的工程化同样完整:diffusers 的QwenImage21Pipeline从 Day 0 支持(PR #14804),vLLM-Omni 提供 prefix KV cache 复用与 CUDA Graph 加速(把条件图像与文本只编码一次、供所有去噪步复用),SGLang 提供多卡并行与显存卸载。配合本仓库的 int8_convrot 量化版(6.76 GB),一张 RTX 3090 就能跑通完整透明图链路——这在大模型社区里被称为"7B 小模型把显存焦虑砍了一半"。
需要提醒的是,模型采用 Qwen Research License(研究许可),本地研究、评测、学习没有问题,但商业使用需要单独向官方申请授权;社区关于"击败多数闭源模型"的说法,也建议以第三方独立评测为准。
结语
回看整条链路:64 通道 RGBA VAE 把透明度写进潜空间,联合标注数据集 + 分层 KL 散度损失把 Alpha 教成可学习目标,Alpha 专用预测分支保证透明度不被颜色优化淹没,最终在 ComfyUI 里凝结成一句 "Remove the background, and output a PNG image" 就能触发的 25 步工作流。Qwen-Image-2.1 没有发明"抠图",它只是把抠图从一套独立的后处理管线,变成了一种模型内生的生成能力——这或许才是"端到端"三个字最实在的含义。
【免费下载链接】Qwen-Image-2.1项目地址: https://ai.gitcode.com/hf_mirrors/Comfy-Org/Qwen-Image-2.1
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考