Better Promptは従来のプロンプト入力・編集作業におけるさまざまな煩わしさを軽減するために作られました。Extra networks(🎴)を表示せずにTextual InversionやLoRAを設定したり、プロンプトの順番をドラッグ操作で入れ替えたり、プロンプトの強調レベルをGUIで調整したりすることが可能になります。
Better PromptはJavaScriptベースの拡張機能です。--data-dir
のオプションを使用するなどでJavaScriptファイルが正常に読み込まれなかった場合、Better Promptが機能しなくなりますのでご留意ください。
Extensions タブの Install from URL からインストールすることができます。"URL for extension’s git repository" の項目に https://github.com/eideehi/sd-webui-better-prompt.git を入力して「Install」ボタンを押すだけです。
Stable Diffusion web UIをインストールしたディレクトリで以下のコマンドを実行してもインストールすることが可能です。
git clone https://github.com/eideehi/sd-webui-better-prompt.git extensions/sd-webui-better-prompt
上記の方法でインストールを行うと、最新のバージョンがインストールされます。しかし、それではあなたの使用しているWeb UIのバージョンではうまく動作しないかもしれません。Better Promptが正常に表示されない場合、別のバージョンを使用することで解決できるかもしれません。
Tip
|
Better Promptのバージョンは Settings タブから変更することができます。詳しくは Version of Better Prompt を参照してください。 |
Better Promptにより、以下の画像の赤い線で囲われた部分が追加されます。以降ではこの追加された内容について、使い方を説明していきます。
デフォルトで表示されているコンテンツで、プロンプトの編集を行うことができます。
プロンプトの追加は次の画像で示される3つの要素を使用して行います。
このフィールドにプロンプトを入力して、エンターキーを押すことでポジティブプロンプトへ入力した内容が追加されます。またシフトキーを押しながらエンターキーを押すことでネガティブプロンプトに内容が追加されます。また、入力した内容に類似するTextual Inversion・LoRA・Danbooruタグ・My Promptが存在する場合、[3] サジェストエリア に一覧で表示されます。
Tip
|
類似判定にはFuse.jsを使用しているため、「完全一致」、「接頭辞・接尾辞」、「AND・OR・NOT」などのさまざまな判定方法を利用することが可能です。詳細は fusejs.io のドキュメント を参照してください。 |
Tip
|
タブキーを押すと [3] サジェストエリア の要素にフォーカスが移り、エスケープキーを押すとフォーカスが戻ります。選択された要素はエンターキー(あるいはシフトキーを押しながらエンターキー)を押すとポジティブ(ネガティブ)プロンプトへ追加することができます。 |
これらのフィルターにチェックが入っている要素のみ、[3] サジェストエリア に表示されます。
[1] プロンプト入力フィールド に入力された内容に類似する要素を最大20件まで一覧で表示します。追加されるアイテムの例を画像で示します。
緑はTextual Inversion、青はLoRA、最後はDanbooruタグです。これらの要素をクリック(あるいはシフトキーを押しながらクリック)することで、ポジティブ(ネガティブ)プロンプトへ追加することができます。
Note
|
LoRAはネガティブプロンプトには追加できないので注意してください。 |
Tip
|
Textual InversionとLoRAの要素は右クリックすることでサムネイルを確認することができます。 |
プロンプトの編集は次の画像で示される2つの要素を使用して行います。
プロンプト追加フォーム により追加されたプロンプトはこのエリアに表示されます。この要素はWeb UIのポジティブプロンプト入力エリアと相互に同期しています。
Tip
|
各プロンプトはドラッグ操作で入れ替えることが可能なほか、シフトキーを押しながらクリックすることで削除することができます。 |
Tip
|
LoRAと通常のプロンプトは右クリックすることで強調レベルを調整するためのポップアップが表示されます。 |
LoRAを追加することができない以外は [1] ポジティブプロンプト と同じです。
任意のプロンプトに対して別名とタグを付けて管理することができます。登録したMy Promptはプロンプト編集時に [3] サジェストエリア に表示されます。
Add new My Prompt
ボタンを押すとMy Promptの登録を行うためのポップアップが表示されます。
ラベルにはMy Promptの表示名を設定します。これはサジェストに表示される場合などに使用されます。この項目は必須であり、省略することはできません。また、すでに存在するラベルを設定することもできません。
タグを設定することで、タグによるMy Promptの絞り込みが可能になります。入力フォームがアクティブになると既存のタグがサジェストとして一覧表示されます。入力した文字列はエンターキーを押すことで新しいタグとして追加することができます。この項目はオプションであり、入力を省略することができます。
My Promptには任意のプロンプトを設定します。 [3] サジェストエリア に表示されたMy Promptをクリックした際にここで設定したプロンプトが展開されます。この項目は必須であり、省略することはできません。
Select and delete My Prompt
ボタンを押すことで一覧表示されているMy Promptをクリックにより選択することが出来るようになります。Delete selected My Prompts
ボタンを押すことで選択したMy Promptをすべて削除することができます。削除したMy Promptを復元することはできないので気をつけて使用してください。
Better Promptは、Settings タブに独自のコンフィグセクションを作成します。ここでは、それぞれの項目について説明します。
Better Promptのバージョンを変更することができます。空白を選択するとその時点での最新バージョンに変更されます。設定を変更した場合、Web UIの再起動が必要です。(リロードではありません)
Tip
|
Better Promptの現在のバージョンはWeb UIのコンソールに表示されます。各バージョンが対応するWeb UIのバージョンは以下の表を参照してください。 |
バージョン |
Web UIのバージョン (最小) |
Web UIのバージョン (最大) |
0.1.0 - 0.3.0 |
9e1afa9e (2023-03-25) |
1.3.2 |
0.4.0 |
9e1afa9e (2023-03-25) |
1.4.0 |
0.4.1 |
1.1.1 |
~ |
Better PromptはMITライセンスの下で開発・公開されています。ライセンスの詳細については、以下のリンクからライセンス条文を参照してください。