SDXL VAE

义项:SDXL的VAE组件
SDXL VAE

SDXL VAE是Stability AI为Stable Diffusion XL(SDXL)重新训练的自编码器组件,负责在像素图像与压缩潜空间之间互相转换。它沿用原版 Stable Diffusion 的自编码器结构,但从小批量改为大批量重训并引入指数滑动平均(EMA),在重建指标上优于旧版 kl-f8 自编码器。其潜变量缩放系数为 0.13025,与早期 Stable Diffusion 使用的 0.18215 不同,因此两类潜变量彼此不通用。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

SDXL VAE是Stable Diffusion XL 使用的一组变分自编码器(Variational Autoencoder)权重,包含编码器与解码器两部分,存放在以 sdxl-vae 名义发布的模型仓库中[1][2]。它并非独立完成图像生成的模型,而是附着在潜扩散流程两端的转换器:编码器把像素图像压入潜空间,解码器再把潜变量还原为可见图像[3]。

第二段:SDXL 属于潜扩散模型,扩散过程运行在一个预先训练好并固定下来的自编码器潜空间中,因此该组件的质量直接决定最终图像的清晰度与细节[2]。在 SDXL 的 Base 与 Refiner 两个阶段中都配有该组件,两者共用同一份权重[4]。

第三段:按公开描述,它的定位是改善局部高频细节,语义构图的绝大部分工作仍由扩散网络承担[2]。因此它在整条流水线中体量最小,fp16 精度下的权重体积约为 167 MB[4]。

原理

该组件采用 KL-f8 结构,即把边长 8×8 像素的区域映射为 1 个潜变量位置。以 1024×1024 的图像为例,编码器将其压缩为 128×128、4 通道的潜表示,解码器再把这组数值放大回原分辨率[5]。这种压缩与还原是有损的,缺失的细节由解码器根据学到的分布重新补足[6]。

潜变量在送入扩散网络之前需要乘上一个缩放系数,使各方差接近 1,便于扩散过程使用统一的噪声调度。SDXL VAE 的系数为 0.13025,推理结束后潜变量要先除以该系数才会交给解码器:[3][7]

$$z = 0.13025 \cdot \mathrm{Enc}(x), \qquad \hat{x} = \mathrm{Dec}(z / 0.13025)$$

训练时使用了感知损失与回归损失共同约束重建质量,并对权重做指数滑动平均以提升稳定性[4][2]。在 COCO 2017 验证集的 256×256 图像上,其 PSNR 约为 24.7、SSIM 约为 0.73,各项重建指标都高于旧版 kl-f8 与 f8-ft-MSE[2]。

发展历程

SDXL 于 2023 年公开,技术报告由 Dustin Podell 等人撰写,同期社区的开发者已能下载到该 VAE 权重[3]。与 SD-VAE 2.x 只在 1.x 基础上微调解码器不同,SDXL VAE 是从头重训的,潜变量分布随之改变[3]。

公开版本存在 0.9 与 1.0 两个权重,社区一般认为 0.9 版本的观感更好[6]。同年,开发者 madebyollin 基于 0.9 版本微调出 fp16 修正版,做法是缩小网络内部的权重与偏置,使激活值不溢出,同时保持最终输出基本不变[8]。此后社区又出现若干以重建指标为目标继续微调解码器的变体。

应用

在文生图流程里,扩散网络循环结束后输出的潜变量由解码器还原成图像,此时只用到解码器部分;在图像到图像的流程中,编码器则先把输入图片转成潜变量[3]。由于 SDXL 的 Base 与 Refiner 共用同一份自编码器,切换权重时两边需要保持一致[4]。

主流推理框架都允许单独替换该组件,例如在 diffusers 中以 AutoencoderKL 载入后传入管道,或在 Automatic1111 一类界面中把权重放入 models/VAE 目录后指定[9]。更换不同版本会影响生成图像的色彩与纹理细节,这是用户在部署时最常调整的一环[10]。

局限

该组件只负责压缩与重建,无法弥补扩散网络在语义构图上的失误,描述过于模糊时画面主体仍可能出错[2]。它对小物体与细密纹理的还原也受潜空间压缩率限制,8 倍下采样后的信息损失只能部分由解码器补足[6]。

兼容性方面,其潜变量分布与 SD 1.x、SD 2.x 的自编码器完全不同,不能混用[3]。原始权重在 float16 精度下解码会因为内部激活值过大而产生 NaN,需改用 fp32、bfloat16 或专门的修正版本[8]。此外,解码阶段需要一次大分辨率的上采样运算,在显存紧张时会成为额外的负担[1]。

参见

  • Stable Diffusion XL —— 该组件所服务的潜扩散图像生成模型。

  • 变分自编码器 —— 该组件在模型结构上的所属类别。

  • 潜空间 —— 编码器把图像压缩进入、扩散过程实际运算的空间。

  • Stability AI —— 发布 SDXL 及其自编码器权重的机构。

  • 扩散模型 —— 与自编码器配合完成图像生成的主干网络。

参考资料

  1. < [引用日期2026-10-29]
  2. sdxl-vae - stable-diffusion模型 [引用日期2026-10-29]
  3. Stable Diffusion XL(SDXL)原理详解 [引用日期2026-10-29]
  4. 深入浅出,Stable Diffusion XL完整核心基础知识解析 [引用日期2026-10-29]
  5. Principle:Huggingface Diffusers Latent Decoding [引用日期2026-10-29]
  6. Notes / Links about Stable Diffusion VAE [引用日期2026-10-29]
  7. latent_formats [引用日期2026-10-29]
  8. sdxl-vae-fp16-fix [引用日期2026-10-29]
  9. license: mit [引用日期2026-10-29]
  10. 深入解析SDXL模型:Base、Refiner与VAE的协同工作 [引用日期2026-10-29]
词条评价
词条统计

浏览次数:0 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-28T18:30:08Z

历史版本

本条目引用的词条
Stability AI Stable Diffusion XL Automatic1111 变分自编码器 潜空间 扩散模型