因为AI绘画刚出来太过神奇,导致填写关键词被称为“咒语”。包括prompt(正向关键词),以及Negative prompt反向关键词。
-
Prompt:对你想要生成的东西进行文字描述。用来引导图片生成,比如输入 1girl 生成的就是一个女孩,输入 a dog 生成的就是一只小狗,如果输入为空那么就是无引导随机生成。
-
Negative prompt:用文字描述你不希望在图像中出现的东西。由于现在用的AI模型还没学会画一些结构,所以要用一些负向提示来保证生成图像的质量,比如用a dog 表示生成不希望有一只小狗的出现。
使用说明
自然语言
Prompt 也可以直接使用自然语言,语种可以是英文,日文,特殊符号或一些中文,这由数据集决定。
自然语言的准确度取决于 Clip 的分词情况,如果你追求精确的结果,请勿使用。
使用自然语言的时候要避免 with 之类的连接词或复杂的语法,它们很多余。
特异性和语义失衡
问题体现在语义偏移上。如果一个关键词有非常具体的含义,那么学习它与图像之间的联系要比一个关键词有非常广泛的含义容易得多。也就是关键词需要精准描述,而少用常见词,和无法被机器标准化的词,如大小,方向。
每个提示词的自带权重是不一样的,如星空startrail标签,相比出现动漫更容易出现真实的星空。这和这个词语的训练集来源有很大的关系。
词汇顺序
2 似乎 VAE 使用了一种称为贝叶斯定理的统计方法。在计算标记的去向时,前几个单词似乎锚定了其余单词标记在潜在空间中的分布。靠前和重复的词权重更高。
运动和姿势
如果没有很大要求的话,选择只与少数姿势相关的提示,简而言之:人类站着/坐着的好形象很容易,人类跳着/跑着的好形象很难。
尺寸
尺寸明显影响内容,如果图像高度增加,就更有可能生成 个体或单独的东西。如果图像宽度增加,更有可能生成多人或风景画。
emoji和颜文字
你可以使用 西方颜文字 (^_^),emoji 🌻。emoji 作为只有一个字符的“词语”效果很精确。
🙂 微笑 🙁 不悦 😉 使眼色 😀 开心 😛 吐舌头 :-C 很悲伤 :-O 惊讶 张大口 :-/ 怀疑
-
Emoji 在构图上有影响,比如 💐☺️💐。
-
Emoji 因为只有一个字符,所以在语义准确度上表现良好。
-
表情符号参考
-
仅支持西方颜文字,详细内容请见 Danbooru 颜文字部分 或 维基百科
语法
使用 /或 +来强制分割提示词。
“+”和“ AND ”都是用于连接短Tag,但AND两端要加空格。”+“约等于” and “
WebUi 权重语法
强调:(cat) (cat:1.4),
减弱:[cat] (cat:0.2)
(prompt:num)-> 1.1 ((prompt:num))-> 1.1*1.1 =1.21
num的范围是 0.1 ~:100,如果为小数则取步数比例
(prompt:0.25) – 将权重减少 4 倍 (= 1 / 0.25)
bob(cat)– bob(cat) 在提示中使用文字 () 字符
权重增加通常会占一个 token 位。在 token 位紧张的情况下没有必要加特别多括号。
Prompt matrix 矩阵
“|” 为循环绘制符号(融合符号),使用 |分隔多个关键词以混合多个要素,程序将为它们的每个组合生成一个图像。这项技术由 WebUI 实现。
(promptA:num1)|(promptB:num2)
num为权重。AI会对A、 B两Prompt进行循环绘制。可往后无限加入
例如,如果使用 cat|run|sky ,则可能有四种组合(始终保留提示的第一部分):
-
cat
-
cat, run
-
cat, sky
-
cat, run, sky
Prompt Schedule
Prompt Schedule 可以在推理图像的过程中更改 Prompt,这项技术由 WebUI 实现。
-
[from:to:when] from 和 to 为 prompt, when 是一个数字,用于定义应在采样周期多长时间内进行切换。
-
[dog:cat:16] 代表从第 16 step 后,使用 cat 标签替换dog
-
[dog:cat:0.4] 代表dog 40%之后再 cat
-
[to:when] 在固定数量的 step 后添加 to到提示 ( when)
-
[dog:10] 指从第10步开始画狗
-
[from::when] 在固定数量的 step 后从提示中删除 from( when)
-
[dog::20] 指从第20步开始不加入狗这个提词
书写长度
由于模型限制,prompt 并不是无限的,一般 positive token 在 75-80 之间,75 字符后的内容会被截断。所以提示不要太长,超过 100 就有失败风险。
在 WebUi 中,你 可以 写 75 个词汇以上的提示。WebUi 通过对提示词进行分组克服了这种限制。当提示超过 75 个 token(比如 150 个 token)时,WebUi 将分组提示词,提交多组 75 个 token。标记只具有同一集合中其他内容的上下文。
书写格式
格式其实并没有固定要求,但因为上面讲到了关键词顺序对结果的影响,我们通常会用一种规范帮助自己书写关键词。不需要死记硬背,了解即可。
|
第二段一般提供人数,人物主要特征,主要动作(一般置于人物之前),物体主要特征,主景或景色框架等。
Tips:
不同模型(ckpt)对Prompt的敏感程度不同,一套完善的prompt在不同的模型中,表达效果会有差异。每个模型都有自己的特色,需根据模型特色,慢慢调试prompt组合。
SD 对多个物体的组合生成能力较弱,所以最好只保留 1-2 个主体物
艺术风格
通过关键词调整设计风格可以参考——AI绘画32种风格化prompt
https://docs.qq.com/doc/DVnN5amhIdHdhU0t2?tdsourcetag=s_pcqq_send_grpfile&ADUIN=76145389&ADSESSION=1688098098&ADTAG=CLIENT.QQ.5983_.0&ADPUBNO=27314
这其实是一个工程问题和经验问题,需要更多的开放的人分享与AI共同创作的艺术风格,才能诞生更多的艺术风格。这是趋势,一定会发生的。也是我后续主要更新的内容和动力。
来吧,你也行的。
参考
sdbook | https://stable-diffusion-book.vercel.app/paint/PromptsEngineering/#_10 |
声明,文档使用 GFDL 许可。详细声明请点链接查看