Stable Diffusion Forgeのプロンプトの書き方

Stable Diffusion WebUI Forge(以下Forge)は、AUTOMATIC1111版WebUIをもとに高速化した派生版です。プロンプトの書き方はAUTOMATIC1111版と共通なので、ここで覚えた書き方はどちらでもそのまま使えます。強調の効き方は、Forgeで実際に生成した画像で確かめています。

基本:タグを並べる順番

Forgeのプロンプトは、英語の単語やタグをカンマで区切って並べます。文章で書くより、短いタグを重要な順に並べるほうが安定します。迷ったら次の順番がおすすめです。

  1. 人数・被写体(1girl, solo)
  2. 外見(black hair, long hair)
  3. 服装(school uniform)
  4. 表情・ポーズ(smile, standing)
  5. 背景・場所(park, outdoors)
  6. 光・時間帯(sunset, soft lighting)
  7. 画風(anime style)
masterpiece, best quality, 1girl, solo, black hair, school uniform, smile, standing, park, outdoors, sunset

先頭の masterpiece, best quality は品質を上げるための定番タグです。使っているモデルが推奨する品質タグがあれば、そちらに合わせてください。

強調(重み)の書き方と効き方

特定のタグを強く効かせたいときは、かっこと数値で重みを付けます。

書き方意味
(cherry blossoms:1.3)1.3倍に強める(数値で書くのがおすすめ)
(cherry blossoms)1.1倍に強める
((cherry blossoms))1.1×1.1=約1.21倍(重ねるほど強くなるが、読みにくい)
[cherry blossoms]弱める(1÷1.1倍)
(cherry blossoms:0.7)0.7倍に弱める

実際に生成して比べました

同じプロンプト・同じSeedで、cherry blossoms(桜)の重みだけを変えてForgeで生成しました(モデル: waiIllustriousSDXL)。

桜の重み1.0。人物が画面の主役になっている
1.0(指定なし)
桜の重み1.4。桜の木が画面の中心に来て人物が小さくなった
1.4
桜の重み1.8。桜の木が画面を占め人物が端に追いやられた
1.8

重みを上げるほど桜の木が画面の中心を占め、主役だった人物がどんどん小さく、端に追いやられていきます。強調は「そのタグを足す」だけでなく、ほかの要素から画面を奪う働き方をすることが分かります。

効かないからといっていきなり大きな数値にせず、0.1〜0.2刻みで上げるのがコツです。同時に強調するタグも1〜3個に絞りましょう。全部を強調すると、何も強調していないのと同じになります。

タグそのものにかっこが含まれる場合(例:作品名つきのキャラクタータグ)は、\( \) のようにバックスラッシュを付けると、重みの指定と区別されます。

BREAK の使い方

Forge(AUTOMATIC1111版も同じ)は、プロンプトを75トークンごとのかたまりに分けて処理しています。BREAK(必ず大文字)を書くと、その位置で今のかたまりを終わらせ、続きを新しいかたまりとして処理します。

1girl, solo, red hair, white dress BREAK
blue sky, green field, outdoors

主な使いどころは色移りを減らしたいときです。「赤い髪」と「青い空」のように色の指定が多いと、色が別の部分に混ざることがあります。人物とその他を BREAK で分けると、混ざりにくくなります。ただし効果はモデルやプロンプトによって変わるので、必ず効くわけではありません。

LoRA の書き方

LoRA(追加学習した小さなモデル)は、プロンプトの中に次の形で書きます。

<lora:ファイル名:0.8>

ネガティブプロンプト

ネガティブプロンプトには「出してほしくないもの」を書きます。まずは次のような定番の組み合わせで十分です。

lowres, bad anatomy, bad hands, missing fingers, extra digits, worst quality, low quality, jpeg artifacts, signature, watermark, text

書き方の早見表

やりたいこと書き方
区切る,(カンマ)
少し強める(tag:1.2)
弱める(tag:0.8) または [tag]
かたまりを区切る(色移り対策など)BREAK
LoRA を使う<lora:ファイル名:0.8>
かっこを文字として書く\( \)
出したくないものネガティブプロンプト欄に書く

英語のタグを考えるのが大変なら、PromptMaker(無料WEB版)で日本語の項目を選ぶだけでプロンプトを組み立てられます。重みも +/− ボタンで0.1刻みに調整でき、(tag:1.2) の形に自動で書き換わります。

PromptMakerからForgeへ直接送る

無料WEB版は、できたプロンプトをコピーしてForgeに貼り付けて使います。配布版なら、ForgeとAPIでつないでツールの画面から直接生成できます。

1. Forge を API つきで起動する

Forgeのフォルダにある webui-user.bat をメモ帳で開き、起動オプションに --api を加えます。

set COMMANDLINE_ARGS=--api
set COMMANDLINE_ARGS=--api --listen --cors-allow-origins=*

2. PromptMaker 配布版で接続する

  1. 配布版の本体(promptmaker_v8.html)をブラウザで開く
  2. 生成設定のベースURLに http://127.0.0.1:7860(別のPCなら http://そのPCのIPアドレス:7860)を入れる
  3. 「モデル更新」でモデル一覧が出れば接続完了。属性を選んで「画像生成を実行」を押すと、Forgeで生成された画像がツールに表示されます

プロンプト作成からForgeでの生成まで、ひとつの画面で。

無料WEB版でプロンプトを作る 配布版との違いを見る

よくある質問

Q. ForgeとAUTOMATIC1111版で、プロンプトの書き方は違いますか?
A. 基本的に同じです。強調 (tag:1.2)、BREAK、LoRA の書き方はどちらでもそのまま使えます。ForgeはAUTOMATIC1111版をもとに高速化した派生版です。
Q. 強調の数値はいくつにすればいいですか?
A. 1.1〜1.3 が実用の範囲です。1.4を超えるとそのタグが画面を支配しはじめ、ほかの要素が弱くなります。0.1〜0.2刻みで様子を見ながら上げてください。
Q. プロンプトは日本語で書いても効きますか?
A. ほとんどのモデルは英語のタグで学習しているため、日本語のままでは効きにくいです。日本語から英語のプロンプトを作る方法は日本語でプロンプトを作る方法で、実際の変換例10組とあわせて解説しています。
Q. LoRA を書いたのに効きません
A. ファイル名の綴り(拡張子は付けない)、モデルとLoRAの世代(SDXL用とSD1.5用)が合っているか、トリガーワードが必要なLoRAではないかを確認してください。
← PromptMaker(無料WEB版)を使う