Prompt进阶用法
小编在《Prompt提示词输入指南》里提到过Prompt的权重,在这篇文章里小编会讲解更多关于权重的细节以及其他提示词输入技巧。
先复习上篇:
①越靠前的提示词权重越高,即生成的图片越符合前面提示词的要求
②可在提示词左右两边加上括号来更改权重
公式:(prompt:0.7-1.5),冒号后面的数值代表权重值,小于1代表降低该提示词的权重,大于1则提高权重。
例:(masterpiece:1.2)表示增加提示词masterpiece的权重
一、补充
(masterpiece:1.5)表示将权重提高1.5倍
(masterpiece:0.25)表示权重减少4倍(=1/0.25)
不同的括号数量,也会影响提示词的权重,例如:
(masterpiece)表示将权重提高1.1倍
((masterpiece))表示将权重提高1.21倍(=1.1*1.1)
(((masterpiece)))表示将权重提高1.331倍(=1.1*1.1*1.1)
除了可以用括号“()”来降低权重值,还可以用中括号“[]”降低:
[masterpiece]表示将权重降低1.1倍
使用(),可以像这样指定权重:(text:1.4)。如果未指定权重,则默认为1.1。指定权重仅适用于()不适用于[]。
二、Prompt editing 提示编辑
提示编辑允许您开始对一张图片进行采样,但在中间可以切换到其他图片。其基本语法为:
①[from:to:when]
其中from和to是任意文本,when是一个数字,它定义了应该在采样周期中进行切换的时间。越晚,模型绘制to文本代替from文本的能力越小。如果when是一个介于0和1之间的数字,则它是进行切换之前的步数的百分比。如果它是大于零的整数,则它只是进行切换之前的步骤。
举个例子:
[men:women:0.5]采样步骤(Sampling steps)为20,表示前50%步(10步)画men,后50%步(10步)画women
[men:women:30]采样步骤为50,表示前面30步画men,后面20步画women
例:a [fantasy:cyberpunk:16] landscape
开始时,模型将绘制a fantasy landscape。
在第16步之后,它将切换到绘图a cyberpunk landscape,从它停止的地方继续绘制。
②[to:when]
[men:0.4]表示前面的步骤不指定画什么,从第40%步开始画men
③[from::when]
[men::0.4]表示前面40%步画men,后面的步骤不画men了
这是一个包含多个编辑的更复杂的示例:fantasy landscape with a [mountain:lake:0.25] and [an oak:a Christmas tree:0.75][ in foreground::0.6][ in background:0.25] [shoddy:masterful:0.5](采样器有100个步骤)
一开始,fantasy landscape with a mountain and an oak in foreground shoddy
在第25步之后,fantasy landscape with a lake and an oak in foreground in background shoddy
在第50步之后,fantasy landscape with a lake and an oak in foreground in background masterful
在第60步之后,fantasy landscape with a lake and an oak in background masterful
在第75步之后,fantasy landscape with a lake and a Christmas tree in background masterful
三、Alternating Words 交替词语
表示在每一步都进行词语交替绘画,例如:
[cow|horse] in a field表示一步cow in a field,一步horse in a field这样循环着画,最后画出二者的结合体
{cow|horse} in a field表示二选一随机生成,可能是cow in a field,也可能是horse in a field
四、Composable diffusion 可组合扩散
允许组合多个提示词的方法。使用大写字母AND组合提示词
a cat AND a dog相当于同时画a cat和a dog
也可以设置权重,例如:a cat :1.2 AND a dog AND a penguin :2.2
使用低于0.1的值几乎没有效果:a cat AND a dog:0.03将产生与a cat基本相同的输出
这一个用法在结合使用多个embeddings的时候很有用。