PR

ComfyUIのプロンプト記号まとめ!ランダム生成や強調構文の使い方を解説

ComfyUI
ユキ
ユキ

管理人さーん、()は使うけど{}ってどういう意味?

管理人
管理人

{}はランダム生成するときに使われる記号だよ

ユキ
ユキ

そうなんだー、記号ってちょっとわかりにくいよね

管理人
管理人

そうだね、今回はプロンプトで使われる記号をまとめてみようか

ComfyUIで画像生成をしていると、プロンプトの中に

( )
{ }
[ ]
:
|

など、さまざまな記号が使われていることに気づくと思います。

これらは単なる記号ではなく、プロンプトの強調やランダム生成など、画像生成を便利にするための役割を持っています。

特に覚えておきたいのが、

  • () → プロンプトの重みを調整
  • {} → 候補からランダムに選択
  • : → 重みを数値で指定
  • | → ランダム候補を区切る
  • , → プロンプトを区切る

といった使い方です。

この記事では、ComfyUIの標準的なプロンプト入力で使える記号を中心に、実際の記述例を交えながら紹介します。

使用する生成AIによっては記号の意味が異なることがあります。

例えばSeaArtで{}は強調に使われ()は弱化に使われます。

同じ記号でも違う意味を持つことがありますので、使用するAIに適した記号を使うことが重要です。

プロンプトで記号を使う理由

通常のプロンプトは、

1girl, black hair, blue eyes, smile

のように単語をカンマで並べていきます。

もちろんこれだけでも画像は生成できます。

しかし、記号を使うことで、

「この要素をもっと強くしたい」

「髪色をランダムに変えたい」

「複数の候補を組み合わせたい」

といった細かな指定ができるようになります。


まず覚えたいプロンプト記号

最初に、今回紹介する主な記号をまとめます。

記号主な用途使用例
()プロンプトの重みを調整(red hair)
:重みを数値で指定(red hair:1.3)
{}ランダム生成{red hair|blonde hair}
``ランダム候補を区切る
,プロンプトを区切るred hair, blue eyes
//コメント// memo
/* */複数行・範囲をコメント化/* memo */
\記号を文字として扱うためのエスケープ\(word\)

ただし、すべての画像生成モデルやカスタムノードで同じ挙動になるとは限りません。

特にLoRAの記法や一部の特殊な構文は、使用するモデル・ノード・拡張機能によって異なるため注意しましょう。


()でプロンプトを強調する

ComfyUIでは、丸括弧を使ってプロンプトの重みを調整できます。

例えば、

(red hair)

とすると、red hairの重みがデフォルトの1.1になり、red hairをより重視させることができます。

数値を指定して強調する

さらに、

(red hair:1.3)

のように数値を指定することもできます。

例えば、

(red hair:1.1)
(red hair:1.3)
(red hair:1.5)

のように変更できます。

数値を大きくするほど、その要素の影響を強くする方向に働きます。

ただし、数値を上げれば上げるほど良い結果になるわけではありません

強くしすぎると、画像全体のバランスが崩れたり、不自然な結果になったりする場合があります。

まずは1.1~1.3程度から試してみるとよいでしょう。


:で重みを細かく調整する

先ほどの

(red hair:1.3)

に使われているのが:です。

この記号によって、括弧内の要素に具体的な重みを指定できます。

例えば、

(blue eyes:1.2)

なら、blue eyesの重みを1.2に設定します。

逆に、

(blue eyes:0.8)

のように1未満の数値を指定すると、影響を弱める方向に調整できます。


{}でランダム生成する

ランダム生成するための記号が波括弧{}です。

ComfyUIでは、{}を使ってDynamic Promptを作成できます。

例えば、

{black hair|blonde hair|silver hair}

と記述します。

すると、プロンプトが処理されるたびに、

  • black hair
  • blonde hair
  • silver hair

のいずれかがランダムに選択されます。

人物のプロンプトに組み込むと、

1girl, {black hair|blonde hair|silver hair}, smile

のように使えます。

これなら髪色だけをランダムに変更しながら、同じ条件で何枚も生成できます。


|でランダム候補を区切る

{}によるランダム生成では、縦棒の|も重要です。

{A|B|C}

という形で、複数の候補を区切ります。

例えば、

{school uniform|summer dress|hoodie}

なら、

  • school uniform
  • summer dress
  • hoodie

のいずれかが選択されます。

つまり、

{}=ランダム選択する範囲

|=候補を区切る

と覚えると簡単です。


{}を使って髪型・服装・背景をランダム化

複数の項目をランダムにすることもできます。

1girl,
{black hair|blonde hair|silver hair},
{long hair|short hair|ponytail},
{school uniform|summer dress|casual clothes},
smile

この場合、

  • 髪色
  • 髪型
  • 服装

がそれぞれ候補から選ばれます。

例えば、

black hair
ponytail
summer dress

になったり、

silver hair
short hair
school uniform

になったりします。

毎回プロンプトを手動で書き換える必要がないため、バリエーションを大量に試したいときに便利です。

カンマ,はプロンプトを区切る

カンマ,は最も基本的な記号です。

1girl, black hair, blue eyes, smile

のように、プロンプトの要素を区切るために使用します。


記号を組み合わせて使う

記号は単独で使うだけでなく、組み合わせることもできます。

例えば、

1girl,
({black hair|blonde hair|silver hair}:1.2),
smile

のようにすれば、髪色の候補をランダムに選びながら、その部分に重みを設定するという使い方ができます。

ただし、複雑な構文にすると何が原因で意図した結果にならないのか分かりにくくなります。

最初はシンプルな記法から試すのがおすすめです。

//でコメントを書く

ComfyUIでは、プロンプトの中にコメントを記述することもできます。

例えば、

1girl, black hair, blue eyes
//服装
summer dress

のように//を使うと、その行をプロンプトから除外できます。

記述するプロンプトの説明を書いたり、プロンプトの一部を無効化したいときに便利です。

例えば、

1girl,
black hair,
blue eyes,
// summer dress
smile

とすれば、summer dressを一時的に外して比較できます。

/* */で複数の範囲をコメントにする

複数行やプロンプトの一部分をまとめて無効化したい場合は、

/*
summer dress,
beach,
sunset
*/

のように/* */を使用できます。

大量のプロンプトを試行錯誤するときに便利な機能です。

例えば、いくつかの背景候補を残したまま、一時的に無効化して比較するといった使い方ができます。

\で記号をそのまま入力する

ここは少し特殊ですが、覚えておくと便利です。

例えば、プロンプト内に本来の記号としてではなく、文字として()を入れたい場合があります。

その場合は、

\(word\)

のようにバックスラッシュを付けてエスケープします。

{}についても同様に、

\{word\}

とすれば、Dynamic Promptとして解釈されず、波括弧を文字として扱えます。

実際に記号を使ってプロンプトを作ってみる

最後に、ここまで紹介した記号を使って、実際のプロンプトを作ってみましょう。

1girl,
//髪色
{black hair|blonde hair|silver hair},
//髪型
{long hair|short hair|ponytail},
(summer dress:1.2),
{beach|cafe|park},
{smile|wink|serious}

このプロンプトでは、

髪色

{black hair|blonde hair|silver hair}

髪型

{long hair|short hair|ponytail}

衣装の強調

(summer dress:1.2)

背景

{beach|cafe|park}

表情

{smile|wink|serious}

というように、それぞれ役割を分けています。

このように記号を使えば、1つのプロンプトからさまざまなバリエーションを作れるようになります。


まとめ

ユキ
ユキ

記号ってなんとなく使っていたけど、よく分かったかも!

管理人
管理人

それはよかった、記号はワンランク上のプロンプトを作るうえで欠かせないものだからね

ユキ
ユキ

これからは記号をどんどん使っていくぞ~♪

ComfyUIのプロンプトでは、記号を活用することで画像生成をより柔軟にコントロールできます。

特に覚えておきたいのは次の4つです。

記号役割
()プロンプトの重みを調整
:数値重みを具体的に指定
{}候補からランダムに選択
|候補を区切るときに使用

まずは、

{A|B|C}

でランダム生成を試し、

(keyword:1.2)

で強調を試してみると、記号によるプロンプト制御の違いを理解しやすいでしょう。

さらに複数の候補を組み合わせれば、髪型・衣装・表情・背景などを自動的に変更しながら、大量のバリエーションを効率よく生成できます。

ComfyUIに慣れてきたら、次はDynamic Promptsのワイルドカード機能もおすすめです。

ワイルドカードを使えば、候補をプロンプト内に直接書くのではなく、外部のテキストファイルにまとめて管理できます。

「髪型だけランダム」「衣装だけランダム」といった使い分けもしやすくなるため、大量の画像を生成するときに特に便利です。

コメント

タイトルとURLをコピーしました