0x00 导航
鉴于 AI 绘画的知识点较多,限于篇幅及便于分类组织,我会以一个系列文章的形式记录:
- 系列 01:《AI 绘画原理与工具》
- 系列 02:《AI 绘画模型扫盲》
- 系列 03:《AI 绘画模型推荐》
- 系列 04:《文生图:不会念咒的炼丹师不是一个好画家》
- 系列 05:《图生图:突破次元圈限制》
- 系列 06:《高清修复:轻松拥有 24K 钛合金画质》
- 系列 07:《提示词进阶:渐变|交替|混合》
- 系列 08:《LoRA 专题:五大应用场景》
- 系列 09:《LoRA 训练:不会炼丹的魔法师不是一个好画家》
- 系列 10:《ControlNet: 姿态控制》
- 系列 11:《ControlNet 进阶:打造炫酷的艺术字和二维码》
- 系列 12:《AI 动画初探:整个宇宙为你而闪烁》
你当前正在阅读的是系列 07《提示词进阶:渐变|交替|混合》
0x10 前言
在系列的《文生图》中提到了提示词除了基础用法之外,还有以下几种高阶的使用方法:
- 渐变,亦称为 分步,语法为:
[from:to:when]
- 交替,亦称为 循环,语法为:
[tag1|tag2|tag3|...]
- 混合,亦称为 组合,语法为:
tag1 AND tag2 AND tag3 AND ...
本节就来一一讲解其用法和效果,方便在日后选择适用的应用场景。
0x20 渐变/分步
渐变的基本语法为 [from:to:when]
,其中:
when
有两种计算方式,最终意义都是控制「step
步」,其中:- 若
0 < when < 1
,假设采样迭代步数为k
,则step = when * k
- 若
when >= 1
,则step = when
- 若
from
是一个 prompt,它表示「在when
步之前使用from
」to
是一个 prompt,它表示「在when
步之后使用to
」
特别地,若
when = 0
,则[from:to:when]
等价于to
。同时,进阶语法的[]
并不会导致降权重。
例如 [black:red:0.4] hair
,采样迭代步数为 40,则表示「在前 16 步使用 black hair
,之后使用 red hair
绘制」。[black:red:16] hair
和它是等价的。
举个实例(我这里没有刻意控制发型,主要看发色):
其实大概在超过 10 步之后,from
的影响要比 to
的影响要大,这和第一节提到的扩散原理有关,越早出现的提示词能分配到越多噪点,所以 to
在迭代后期基本不怎么能染上发色。
渐变有两个变体的语法:
to
留空:[from::when]
(from
用很少的步数定下基调,可以减少后续内容对核心内容的影响)from
留空:[:to:when]
(将更多的绘画空间让给了其他提示词,仅仅通过to
调味)
留空就是让 AI 自由发挥的意思:
其实为了保持人物姿势,我这里是使用图生图的局部重绘画的头发,所以即使是让 AI 自由发挥,很大程度上是受到了原图颜色
sliver
的影响,所以这两个变体一般建议在文生图的时候用。
除了颜色渐变,其实很多需要体现动态变化效果都可以应用到这个语法,例如自然景观、类人动物等。
0x30 交替/循环
交替的基本语法为 [tag1|tag2|tag3|...]
,意为:第一步画 tag1
,第二步画 tag2
,第三步画 tag3
,…,第一轮循环结束后又从 tag1
重新开始画。
同样用发色做演示:
- 使用
[red|yellow|black|blue] hair
,采样步数30+
:
- 使用
[blue|yellow|black|red] hair
,采样步数20+
:
其实它和渐变的语法类似,越靠前的 tag 会优先下基调,对画面的影响最大,越靠后的 tag 的影响几乎可以忽略不计。
利用这个语法可以画出一些幻想动物,例如天马 a white [(horse:1.2)|(swan:0.8)]
:
0x40 混合/组合
混合的基本语法为 tag1 AND tag2 AND tag3 AND ...
,其中:
AND
必须大写,而且AND
的提示词越多,需要越高的迭代步数- 如果需要设置权重,可以写为
tag1:w1 AND tag2:w2 AND tag3:w3 AND ...
, 不需要加()
,但是这个权重单纯只是指AND
中的权重,并非全局权重
同样用发色做演示,blue hair AND red hair AND yellow hair
就真的只是把颜色混在一起而已(不遵守三原色混合规则):
再画一次天马 white , horse AND swan
:
怎么说呢,相较之下,少了一点仙气、多了几分魔性(这可能才是 “有翼幻兽帕加索斯” 的真正形态吧)。
说真的,除了头发之外没想到特别有用的应用场景,因为混合的样子实在很难控制。有时间可以试试画龙、麒麟、四不像等幻想动物,也许会抽到惊喜吧。
0xF0 参考资料
- 《提示词的进阶使用》