Using ()
in the prompt increases the model's attention to enclosed words, and []
decreases it. You can combine multiple modifiers:
Cheat sheet:
a (word)
- increase attention to word
by a factor of 1.1
a ((word))
- increase attention to word
by a factor of 1.21 (= 1.1 * 1.1)
a [word]
- decrease attention to word
by a factor of 1.1
a (word:1.5)
- increase attention to word
by a factor of 1.5
a (word:0.25)
- decrease attention to word
by a factor of 4 (= 1 / 0.25)
a \(word\)
- use literal ()
characters in prompt
With ()
, a weight can be specified like this: (text:1.4)
. If the weight is not specified, it is assumed to be 1.1. Specifying weight only works with ()
not with []
.
If you want to use any of the literal ()[]
characters in the prompt, use the backslash to escape them: anime_\(character\)
.
On 2022-09-29, a new implementation was added that supports escape characters and numerical weights. A downside of the new implementation is that the old one was not perfect and sometimes ate characters: "a (((farm))), daytime", for example, would become "a farm daytime" without the comma. This behavior is not shared by the new implementation which preserves all text correctly, and this means that your saved seeds may produce different pictures. For now, there is an option in settings to use the old implementation.
NAI uses my implementation from before 2022-09-29, except they have 1.05 as the multiplier and use {}
instead of ()
. So the conversion applies:
their {word}
= our (word:1.05)
their {{word}}
= our (word:1.1025)
their [word]
= our (word:0.952)
(0.952 = 1/1.05)
their [[word]]
= our (word:0.907)
(0.907 = 1/1.05/1.05)
Creates multiple grids of images with varying parameters. X and Y are used as the rows and columns, while the Z grid is used as a batch dimension.
Select which parameters should be shared by rows, columns and batch by using X type, Y type and Z Type fields, and input those parameters separated by comma into X/Y/Z values fields. For integer, and floating point numbers, and ranges are supported. Examples:
Simple ranges:
1-5
= 1, 2, 3, 4, 5
Ranges with increment in bracket:
1-5 (+2)
= 1, 3, 5
10-5 (-3)
= 10, 7
1-3 (+0.5)
= 1, 1.5, 2, 2.5, 3
Ranges with the count in square brackets:
1-10 [5]
= 1, 3, 5, 7, 10
0.0-1.0 [6]
= 0.0, 0.2, 0.4, 0.6, 0.8, 1.0
Prompt S/R is one of more difficult to understand modes of operation for X/Y Plot. S/R stands for search/replace, and that's what it does - you input a list of words or phrases, it takes the first from the list and treats it as keyword, and replaces all instances of that keyword with other entries from the list.
For example, with prompt , and Prompt S/R you will get three prompts:a man holding an apple, 8k clean
an apple, a watermelon, a gun
a man holding an apple, 8k clean
a man holding a watermelon, 8k clean
a man holding a gun, 8k clean
The list uses the same syntax as a line in a CSV file, so if you want to include commas into your entries you have to put text in quotes and make sure there is no space between quotes and separating commas:
darkness, light, green, heat
- 4 items - , , , darkness
light
green
heat
darkness, "light, green", heat
- WRONG - 4 items - , , , darkness
"light
green"
heat
darkness,"light, green",heat
- RIGHT - 3 items - , , darkness
light, green
heat
Prompt editing allows you to start sampling one picture, but in the middle swap to something else. The base syntax for this is:
[from:to:when]
Where and are arbitrary texts, and is a number that defines how late in the sampling cycle should the switch be made. The later it is, the less power the model has to draw the text in place of text. If is a number between 0 and 1, it's a fraction of the number of steps after which to make the switch. If it's an integer greater than zero, it's just the step after which to make the switch.from
to
when
to
from
when
Nesting one prompt editing inside another does work.
Additionally:
[to:when]
- adds to the prompt after a fixed number of steps (to
when
)
[from::when]
- removes from the prompt after a fixed number of steps (from
when
)
Example: a [fantasy:cyberpunk:16] landscape
At start, the model will be drawing .a fantasy landscape
After step 16, it will switch to drawing , continuing from where it stopped with fantasy.a cyberpunk landscape
Here's a more complex example with multiple edits: (sampler has 100 steps)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]
at start, fantasy landscape with a mountain and an oak in foreground shoddy
after step 25, fantasy landscape with a lake and an oak in foreground in background shoddy
after step 50, fantasy landscape with a lake and an oak in foreground in background masterful
after step 60, fantasy landscape with a lake and an oak in background masterful
after step 75, fantasy landscape with a lake and a christmas tree in background masterful
The picture at the top was made with the prompt:
`Official portrait of a smiling world war ii general, [male:female:0.99], cheerful, happy, detailed face, 20th century, highly detailed, cinematic lighting, digital art painting by Greg Rutkowski's
And the number 0.99 is replaced with whatever you see in column labels on the image.
The last column in the picture is [male:female:0.0], which essentially means that you are asking the model to draw a female from the start, without starting with a male general, and that is why it looks so different from others.
Convenient Syntax for swapping every other step.
[cow|horse] in a field
On step 1, prompt is "cow in a field." Step 2 is "horse in a field." Step 3 is "cow in a field" and so on.
See more advanced example below. On step 8, the chain loops back from "man" to "cow."
[cow|cow|horse|man|siberian tiger|ox|man] in a field
Prompt editing was first implemented by Doggettx in this myspace.com post.
原文
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#attentionemphasis
嘢仞Q 2023-06-05
牛牛的尾巴 2023-04-06
ParkerA 2023-02-18