一句话定义
提示词先由文本编码器(SD 系用 CLIP 文本塔,新系叠加 T5)转成 token 嵌入序列,再在每个去噪层通过交叉注意力把这份语义「读」进图像特征——这就是文字控制画面的全部通道。
为什么重要
这是「文字为什么能指挥画面」的机制答案,也是模块 04 提示词工程的理论地基:为什么 77 token 会截断、为什么语序影响弱、为什么换文本编码器等于换「语言能力」。看懂交叉注意力的 Q/K/V 分工,「cat 这个词为什么总是生成猫的位置」这类现象就有了解剖学解释。
前置知识
kp-007(骨干网络的注意力层位置);kp-008(三件套中的文本编码器角色)。
核心概念
- CLIP(Contrastive Language-Image Pre-training):图文对对比学习得到的联合嵌入模型,文本塔输出 token 级嵌入序列。
- token 化:文本经分词器切成固定词表内的 token;SD1.5 的上下文窗口为 77 个 token。
- 交叉注意力(cross-attention):Query 来自图像特征、Key/Value 来自文本嵌入的注意力形态。
- 注意力图(attention map):每个文本 token 对每个空间位置的权重分布,是「词 ↔ 位置」的软对应表。
- 双编码器(SDXL 起):两个不同规模/结构的文本编码器输出拼接,兼顾效率与语言理解。
原理与机制
第一步:文本变嵌入。分词器把「a cat wearing sunglasses」切成 token 序列,补上起止符后送入 CLIP 文本塔,输出与 token 等长的嵌入矩阵(SD1.5 为 77×768)。CLIP 的训练方式(亿级图文对上做对比学习:配对的图文嵌入拉近、错配的推远)保证了这套嵌入与视觉语义对齐——这是文本能「对上」画面的前提,模型本身并不「理解」语法。第二步:嵌入进网络。在去噪网络的每个注意力层,图像特征展平成空间位置序列充当 Query,文本嵌入充当 Key 与 Value:
Attention(Q, K, V) = softmax( Q KT / √d ) · V, Q ← 图像特征,K、V ← 文本嵌入
softmax 权重即注意力图:位置 i 从 token j 那里取多少语义,由两者的相似度决定。「cat」的嵌入与画面中猫形区域的高层特征相似度高,该区域便从 Value 中取走「猫」的语义——不需要显式定位,对应关系在训练中自发形成(注意力可视化研究反复印证了这种词-区域绑定)。第三步:每个去噪步都注入——文本不是开头给一次就完,而是在全部 T 步、每个注意力层持续参与,采样全程都在「对照笔记作画」。
公式与推导
本节核心公式即交叉注意力(上)。一个关键推论:嵌入序列长度(77)限制了可注入的语义总量,超出部分被截断丢弃——这就是长提示词失效的结构性原因(工具层的「分段编码」是对此的工程补丁,不改变机制)。另一推论:注意力相似度基于嵌入空间距离,因此同义词可互换、生僻词若不在 CLIP 词表附近则接近无效,提示词选词应优先使用 CLIP 时代高频词汇。
图示
直观类比
交叉注意力像「翻译耳机的同传」:画面每个位置(Q)随时提问「我该是什么样?」,文本嵌入(K)举牌报名「我管猫、我管墨镜、我管夜景」,每个位置按相关度各取所需(V)。译文质量上限取决于译员(CLIP)的水平——所以换 T5 级编码器后,模型忽然能听懂复杂长句。
实例或案例
- 注意力可视化实验(社区与研究均有复现):提示「red car and blue house」时,「red」的注意力图高亮车身区域、「blue」高亮房屋——词与空间位置的软绑定是自发涌现的。
- SD1.5 只有一个 CLIP(77 token);SDXL 用「CLIP ViT-L + OpenCLIP bigG」双塔拼接;SD3/Flux 叠加 T5-XXL,长句、复杂从句遵循力显著提升(版本信息截至 2026-10)。
- 实测生僻艺名或自造词出不了预期效果,改用 CLIP 常见词(如把某冷门画派换成其核心特征描述)立即见效。
常见误区
- 误区一:模型理解语法。CLIP 有词袋倾向,token 顺序对结果影响弱于内容词本身;长句的复杂逻辑(「A 在 B 左边而不是右边」)遵循率低,需靠结构化写法与控制工具兜底。
- 误区二:77 是「77 个单词」。是 77 个 token,一个单词可能占多个 token;标点也占 token,长提示词应优先删除冗余修饰。
- 误区三:换文本编码器不影响画面风格。K/V 空间由成对训练决定,换编码器等于换了语义坐标系,轻则忽略重则崩坏(kp-008 误区三的机制面)。
自测题
- 交叉注意力中 Q、K、V 各来自哪里?
答案要点:Q 来自图像空间位置特征,K/V 来自文本 token 嵌入。
- 为什么 SD1.5 的提示词超过 77 token 会被「吃掉」?
答案要点:文本塔上下文窗口固定 77,超出部分不产生嵌入、不注入任何注意力层。
- CLIP 的什么训练方式使文本嵌入能与画面语义对齐?
答案要点:大规模图文对上的对比学习,拉近配对样本、推远错配样本。
与其他知识点的关系
kp-010 的 CFG 中「条件分支」就是带此注入的前向;kp-017/kp-019 的提示词写法与权重语法都作用在这套嵌入上;kp-023 的谱系演进一半发生在文本编码器上。
延伸阅读
CLIP 原始论文(ICML 2021)第 3 节;Latent Diffusion 论文 4.3 节对「领域无关交叉注意力条件化」的设计论证。