先看最左边输入环节(指步骤 1 )。用户得把 “想生成啥画面” 转化成 AI 能懂的文字描述,像图里 “一个沙滩,一艘船靠在沙滩边”,得提炼成sandy beach、ship这类关键词(也就是 prompt 提示词 )。这一步看似简单,实则是 “人类表意→AI 理解” 的关键桥梁 —— 描述越精准、细节越丰富(比如加光影、风格词 ),后续模型越能精准捕捉需求,现在玩文生图厉害的,核心就在 “prompt 怎么写” 上折腾技巧。
接着到Input Encoder 输入编码器(步骤 2 ),核心是Clip Text模块。 Clip 就像个 “语义翻译官”,把刚才的文字描述,转成一组77×768的向量(可以理解成数字密码 )。为啥要这么转?因为 AI 模型本质是处理数字信号的,Clip 得把人类语言的语义,编码成模型能运算的数值形式 —— 它是预训练好的,见过海量图文配对数据,所以提到 “ship”,能精准关联到图像里 “船” 的特征编码,这一步直接打通 “文字需求” 和 “图像生成” 的通道。
然后进入Image Generator 图像生成器,也就是反向扩散的核心(步骤 3 - 4 )。最开始是 “随机图像”(步骤 3 ),其实就是一堆带噪声的无序数据,像电视没信号时的雪花屏。接下来UNet模型登场!从UNet Step 1到Step N,配合Scheduler调度器,干 “去噪(Denoise)” 的活儿 ——Scheduler定去噪节奏(比如每一步去多少噪声、迭代多少次 ),UNet负责 “猜” 噪声背后该有的图像特征:它会参考 Clip 编码的文字向量,逐步把噪声转换成接近文字描述的 “潜在图像”。这过程像 “给 AI 一个模糊谜面(噪声 + 文字密码 ),让它推理出清晰谜底”,而且 UNet 能同时处理不同尺度特征(大轮廓、小细节 ),所以生成的图既有整体构图,又有局部纹理,慢慢把 “沙滩、船” 的细节填进去。
最后到Image Decoder 图像解码器(步骤 5 ),靠VAE Decoder。前面生成的是 “潜在空间(Latent Space)” 的压缩特征(不是直接像素图 ),VAE 就像 “解压工具”,把这些特征还原成512×512的像素图。为啥用潜在空间?因为直接在像素空间处理数据量太大,潜在空间是压缩后的 “精华版”,模型处理又快又准,解码后咱们就能看到完整的沙滩、船画面了。
总结一下,Stable Diffusion 流程是 “文字语义编码→噪声迭代去噪→特征解压成图”,靠Clip理解语义、UNet逆向生成、VAE空间转换,把文字指令变成视觉内容。这一套逻辑不仅实现了技术落地,更让普通人能靠文字 “指挥” AI 创作,不过在风格精准控制、生成效率上还有优化空间,也是咱们做研发 / 应用时能深挖的点~】