为什么 Stable Diffusion 更适合用标签
大多数 Stable Diffusion 模型(checkpoint)的训练数据都是图片搭配简短说明和标签列表,因此它们对紧凑、逗号分隔的标签反应最好,而不是连贯的长句。我们的生成器会按照资深用户的习惯排列标签:先写主体,再写主体细节、场景、构图、光线、配色、风格,最后是画质标签。
顺序之所以重要,与提示词的编码方式有关。文本编码器以大约 75 个 token 为一段读取提示词,越靠前的标签往往影响越大。让提示词保持聚焦,通常 25 到 45 个标签,每个标签才能真正发挥作用,而不是和几十个近义词互相抢权重。
权重:(tag:1.2) 以及何时使用
ComfyUI、Forge 和 AUTOMATIC1111 等界面支持以 (tag:1.2) 形式书写的注意力权重。数值大于 1 会加强该标签,小于 1 则会减弱。我们只会给定义这张图片的一两个标签(通常是主体)加上适度的权重,其余一律保持默认。
不要轻易把权重调到 1.4 左右以上。过高的权重常常导致画面瑕疵、颜色过饱和或元素重复。如果某个内容还是没出现,把该标签移到更靠前的位置,通常比继续加大权重更有效。
贴合图片的反向提示词
每个结果的第二行都是反向提示词,也就是模型应当避开的内容。我们不会堆上五十个通用标签,而是写出八到十五个贴合这张图的标签,例如人像用 extra fingers,图库风格照片用 watermark 和 text,细节丰富的场景用 blurry 和 lowres。
请把它粘贴到界面中的反向提示词输入框,而不是主提示词里。对于 SD 3.5 这类更能理解自然语言的新模型,较短的反向提示词通常就足够了。
SDXL、SD 3.5 与微调模型
标签式提示词适用于 SD 1.5、SDXL 以及大多数社区模型。SD 3.5 也能理解较长的自然语言描述,如果在它上面效果显得生硬,可以改用“通用”格式。动漫和插画类模型往往有自己的一套标签词汇,请保留模型说明文档推荐的风格标签。
一个简单示例
以一张夕阳下的灯塔照片为例,典型结果会以 (white lighthouse:1.3) 和 rocky coastline 开头,接着是 golden hour light、long exposure sea、wide-angle view 和 matte painting style,最后以 highly detailed、sharp focus 等画质标签收尾。反向提示词可能是 blurry, lowres, watermark, text, oversaturated。每个标签只对应一个可见的事实,因此很容易替换其中一个,并清楚看到画面发生了什么变化。