# ComfyUI-PromptRandomChoice 実行のたびに「プロンプトガチャ」を爆速で回す、超軽量なランダム選択ノードじゃ! 「背景や天気を適当に変えて、一晩中回しておきたいのう……」
そんなおぬしの願いを、実行時間 0.010s(注:作者環境で速いとき)という瞬速の魔法で叶えて進ぜよう! 背景・時間帯・天気などを別々にランダム化したい時に便利じゃ。
フロー内に複数個置いても、それぞれ独立して動くぞ。 ## 特徴 - **実行ごとにランダム選択** - キューを雑に100件積んでも、毎回候補を選び直すぞ。 - **区切りは `|` または実際の改行** - `|` と改行の両方を区切りとして扱うので、混在していても動くぞ。 - **候補の前後の `,` と空白を自動で整理** - `town,` - `coffee shop,` - `castle, fortress,` のような書き方でも大丈夫じゃ。 - **プロンプト結合向けの返り値** - 選ばれた候補の前後に `,` を付けて返すぞ。 - 例: `coffee shop` → `,coffee shop,` - **現在の選択結果をタイトル表示** - 実行時にノードタイトルが `Choice: coffee shop` のように更新されるぞ。 - KSamplerのプレビューと見比べやすいのじゃ。 - **複数設置に対応** - 背景用、時間帯用、天気用など、複数ノードを置いてそれぞれ別々に使えるぞ。 ## 導入方法 ComfyUIの `custom_nodes` ディレクトリで、以下のコマンドを打ち込むのじゃ! ```bash git clone https://github.com/ruminar/ComfyUI-PromptRandomChoice.git ``` ## 使い方 1. `Prompt Random Choice` ノードを置く 2. `options_text` に候補を入れる (入力例を参照) 3. 必要に応じて `change_every` を選ぶ (NEW) 4. `prompt_text` を文字列結合ノードなどでポジティブプロンプトへ足す 5. キューを好きなだけ積む
image ## 入力例 ### 改行区切り (改行前の`,`は任意です) ```text town, girl's room, park, lake, flower garden, castle, fortress, forest, grasslands, sea, snowy landscape, mountain, flower field, starry sky, coffee shop, ``` ### `|` 区切り ```text town| girl's room| park| lake| flower garden| castle, fortress| forest| grasslands| sea| snowy landscape| mountain| flower field| starry sky| coffee shop| ``` ### 選ばれやすさを調整したい場合 同じ候補を複数回書けば、そのぶん選ばれやすくなります。 ```text day|day|day|sunset|night ``` 昼を多めに出したい、たまに夕方や夜も混ぜたい、という時に便利じゃ。 ## 仕様 - `|` または実際の改行で分割 - `\n` という文字列は区切りとして扱わない - 各候補の前後の空白と `,` を trim - 空候補は無視 - 有効な候補が1件も無い場合は空文字 `""` を返す - 候補があれば `,selected,` を返す ## 出力 - `prompt_text` - 例: `,coffee shop,` (結合しやすいように、前後をtrimしてから`,`を付与します) ## ライセンス GPL-3.0(ComfyUI本体の掟に従っておるぞ!) ## 宣伝画像 PromptRandomChoice説明画像v0 2 0 ※ 区切り文字は 改行 または `|` です。カンマは候補の前後に付いた場合だけ自動で取り除きます。

(最初の版) PromptRandomChoice説明画像