見出し画像

Dynamic Promptsの使い方を実運用して分かったことをもとに解説します

Stable Diffusionの拡張機能「Dynamic Prompts」について

基本的な使い方

ランダムに1個

{ A | B | C }

ランダムに2個

{ 2$$ A | B | C }

注意点など

スペースはあってもなくても(バラバラでも)良い

{A| B |C }

選ばれるプロンプトはシード値に依存する

シード値を固定して、バッチ処理を繰り返しても、同じ組み合わせで生成されるのでほんとにランダム?と思われるかもしれません。

a random prompt is also generated using the chosen seed

https://github.com/adieyal/sd-dynamic-prompts

ランダムプロンプトはシード値に依存しているから、シード値を固定しても、ランダムだけど、同シード値内ではそれ以上ランダムにならないということです。

応用的な使い方

Loraにも使える

{ <lora:A:1> | <lora:B:1> | <lora:C:1> }

複数置くことも可能

もちろん、それぞれからランダムに生成される。

{ A | B | C }, { D | E }, { <lora:A:1> | <lora:B:1> | <lora:C:1> }

すべての組み合わせを総当たりする

全組み合わせが、3通りある場合、その3通りのパターンを作ってくれる。通常のBatch countは無視される。

ただし、最大値はデフォルトで100なので、変えたい場合はui-config.jsonから変更する

txt2img/Batch count/maximum": 10000

どうでもいいかもしれないが、{ 2$$ A | B | C | D }の場合、12通りで実行される。順番ありの組み合わせらしい。
ただし、{ A | B | C }, { D | E }の場合は、6通りで実行される。つまり順番なしの組み合わせ

すべての組み合わせを5回総当たりする

すべての組み合わせをさらに、複数回実行したい場合、Combinatorial batchesが使える

この記事が気に入ったらサポートをしてみませんか?