Stable Diffusion Prompt权重语法

AIGC Prompt  收藏
0 / 1396

权重逻辑

  • 若是想明确某主体,应当使其生成步骤向前,生成步骤数加大,词缀排序向前,权重提高。画面质量主要元素细节
  • 若是想明确风格,则风格词缀应当优于内容词缀画面质量风格元素细节
  • 未证实:风格权重或许需要优于画面质量,从而不至于被画面质量污染特殊风格质感。

分割符

  • ,逗号:分割词缀,有一定权重排序功能,逗号前权重高,逗号后权重低,因而建议排序:

综述(图像质量+画风+镜头效果+光照效果+主题+构图)
主体(人物&对象+姿势+服装+道具)
细节(场景+环境+饰品+特征)

举例一:

// 超高分辨率, 8k, 漫画风, 相机取景框,一个男子, 奔跑(动词原型), 黑色头发, 橙色太阳, 蓝色天空
absurdres, 8k, comic, viewfinder, 1male, run, black hair, orange sun, blue sky,

1.png

根据上面的提示出的图,各元素都出现了,但是并没有实现run这个关键词,除了第一张图左下角几个奔跑的人物外,第三张图更是人物都没有了。

举例二:

// 超高分辨率, 8k, 漫画风, 相机取景框, 一个男子, 奔跑(现在分词), 黑色头发, 橙色太阳, 蓝色天空
absurdres, 8k, comic, viewfinder, 1male, running, black hair, orange sun, blue sky,

2.png

而当我们把run改为running时,跑步的姿态就出来了~~。

组合符

  • :冒号:自定义权重数值格式:左圆括号+ 词缀 + 冒号 + 数字 + 右圆括号
// 单人女孩词缀,权重为0.75
(1girl:0.75)
  • ()仅圆括号:增加权重0.1大部分情况用圆括号即可。
// 权重乘以1.1
(1girl)
  • {}花括号:增加权重0.05
// 权重乘以1.05
{1girl}
  • []方括号:减少权重0.1,也有说是减弱0.05的方括号中无法自定义权重数值,自定义权重只能使用(x:0.5)形式。
// 权重除以1.1
[1girl]
  • (()){{}}[[]]复用括号:叠加权重
// 权重乘以1.1*1.1,即权重为1.21
((1girl))

一般流程:先把要描述的画面写下生成一次,根据生成结果边试边改不满意或遗漏的描述,要强调的概念用 (xxx: 1.x ) 语法形式来提升权重,其中 xxx 是你要强调的词,1.x 代表要提升的比例,如 1.5 就是提升 150% 的权重。权重取值范围 0.4-1.6,权重太小容易被忽视,太大容易拟合图像出错。例:(beautiful:1.3) 。叠加权重:通过叠加小括号方式提高权重,每加一层相当于提高1.1倍权重,例:((((beautiful eyes))))

连接符

  • AND:将多个词缀聚合在一个提示词顺序位置中,其初始权重一致
// 三个词缀权重一致
bird and dog and pig

// 可使用冒号标记其权重
bird:1.5 and dog:1.2 and pig:0.8
  • +加号
(red hair:1.1)+(yellow hair:1.25)+(green hair:1.4)
  • |竖线
(red hair:1.1)|(yellow hair:1.25)|(green hair:1.4)
  • _下划线
(red hair:1.1)_(yellow hair:1.25)_(green hair:1.4)
  • 什么都不加
(red hair:1.1)(yellow hair:1.25)(green hair:1.4)
  • ,逗号对象一致时,逗号有连接的功能
(red hair:1.1),(yellow hair:1.25),(green hair:1.4)

3、分布与交替渲染

[] 方括号中使用:| 等符号,则可实现较为复杂的分布与交替渲染的需求。

  • [A:B:step][元素1:元素2:步骤比例] :渲染元素1到多少进度后开始渲染元素2,实现元素1与元素2的互相叠加,有类似于[from:to:when]的感觉,可用于两个词条的融合
// 渲染蓝色到40%进度后,开始渲染红色
[blue:red:0.4]

// 前12步渲染蓝色后,开始渲染红色
[blue:red:12]

注:step > 1 时表示该组合在前多少步时做为 A 渲染,之后作为 B 渲染。step < 1 时表示迭代步数(参与总步骤数)的百分比。

  • [A:step][元素1:步骤比例] :从多少进度开始渲染元素1
// 在执行40%的步骤后,开始渲染蓝色
[blue:0.4]
// 在执行15步之后,开始渲染蓝色
[blue:15]
  • [A::step][元素1::步骤比例]:渲染到多少进度的时候停止元素1的渲染(其它元素的渲染继续)
// 在执行了40%的步骤后,停止渲染蓝色
[blue::0.4]
// 在执行了15步后停止渲染蓝色
[blue::15]
  • [A|B][元素1|元素2]:元素1和元素2的交替混合渲染
// 融合蓝色与红色,紫色?
[blue|red]
// 某物与某物的交替演算,用于生成融合生物,句中词缀含义为融合牛与马。
[cow|horse]

[xx|xx|xx|xx|xx…] 本质为一种在平等权重下融合词缀生成单个元素,不限制混合元素的数量。

  • [A|B]C[元素1|元素2]元素3:括号外加词缀意味着融合过程中的共享元素。

举例七:

// 一个蓝红混色染发的短发女孩
1girl, [blue|red]hair, short hair

3.png

举例八:

// 合成“空中的鸟”与“空中的飞机”
[bird|airplane] in sky

4.png

好诡异的合体~~

举例九:

经过学习,现在我们利用第一个例子中的词缀再搞几个画面练手。

// 哇哦哇哦哇哦
absurdres,  8k, comic, [viewfinder], 1male+running, 1female ([red:blue:0.3]hair)(long hair) jumping, [[orange sun]], [blue sky], (bird and horse) in sky,

5.png

注意:因为加入了动物,所以femalmale可能被AI识别为雌性、雄性。。。目前发现仅用文字描述同一场景多人物,很难成功生图,看案例中男女混合了,还有很多错误的图我都没放上来。可能需要加入很多负面提示词来控制污染,并且要把不同人物的位置、状态明确告诉AI,这样成功几率才大。建议还是利用手稿、controlnet等方式来共同实现。

举例十:

反观单场景单人的实现就特别容易了,这或许也是为什么很多AI图片网站的成图都是单人肖像的原因。

best quality, very detailed, absurdres,  8k, comic, [viewfinder], one lady with long [blue|red]hair is sitting on ground, birds around her, blue sky+[orange sun],

6.png

这里的提示词使用了人类的英文阅读格式~~


4、调取 LoRA & Hypernetworks 模型

  • <>尖括号:调取LoRA或超网络模型等。输入:<lora:filename:multiplier><hypernet:filename:multiplier> 可调取相应模型。
<lora:cuteGirlMix4_v10:0.5>

注:要先确保在【…\models\lora】或【…\models\hypernetworks】文件夹已保存好相关模型文件。不会放的去参考这篇文章