プロンプトエンジニアリング実践|CLIPスケジュール・条件分岐
ComfyUI(ノードをつないで画像生成AIを動かすツール)でプロンプトを入力するとき、テキスト欄に言葉を並べるだけで終わっていませんか。実はComfyUIには、プロンプトの効果をノード単位で細かく制御できる仕組みが備わっています。重み付けで特定の要素を強調したり、生成ステップの途中でプロンプトを切り替えたり、画像の領域ごとに異なる指示を与えたりと、AUTOMATIC1111にはない柔軟さが魅力です。
この記事では、ComfyUIのプロンプトエンジニアリングに必要な知識を体系的に解説します。CLIP Text Encodeの基本構造から、重み付け構文、CLIPスケジュール、領域別プロンプト指定まで、実践的なテクニックを順番に紹介します。
CLIP Text Encodeの仕組みを理解する
ComfyUIでプロンプトを処理する中心的なノードがCLIP Text Encodeです。ComfyUIのノードとは?初心者が最初に知る考え方を押さえたうえで、テキストがどのように画像生成に反映されるかを見ていきましょう。プロンプトは、設計現場でいう「要件定義書」のようなもの。書き方次第で成果物が大きく変わります。
トークン化と77トークン制限
CLIP Text Encodeは、入力テキストを2段階で処理します。まずテキストをトークンと呼ばれる単位に分割し、次にそれをエンベディング(数値ベクトル。AIが扱える形のデータ)に変換します。このエンベディングが、画像生成を方向づけるConditioningデータになります。
ここで注意したいのが、CLIPモデルの77トークン制限です。1チャンクあたり最大77トークンしか処理できません。英語の場合、おおむね1単語が1トークンに対応します。77トークンを超えた場合は自動的にチャンク分割されますが、チャンクをまたいだ語句の関連性は弱まる傾向があります。
チャンク境界を意図的に区切りたい場合は、後述のcomfyui-prompt-controlが提供するBREAK構文を使うと、エンコーダのチャンク区切りを明示できます(2026年4月現在)。ただしFluxやSD3に採用されているT5テキストエンコーダではBREAKが無視される挙動が報告されているため、モデルに応じた使い分けが必要です。
実務では、プロンプトが長くなりすぎないよう重要な要素を前方に配置するのがコツです。
CLIP Skipで出力層を変える
CLIP Set Last Layerノードを使うと、CLIPモデルのどの層からエンベディングを取り出すかを指定できます。これがいわゆる「CLIP Skip」の機能です。
設定値は負の整数で指定します。「-1」が最終層(デフォルト)、「-2」が最終層の1つ手前を意味します。モデルごとに推奨値が違い、SD1.5系のリアル系モデルはSkip 1(-1)、アニメ系モデルはSkip 2(-2)が定番とされています(2026年4月現在)。
この推奨値はSD1.5系を前提とした目安です。SDXLやFluxではテキストエンコーダの構造が変わっており、CLIP Skipの効果が薄い、または非対応のケースが増えています。使用モデルの推奨設定を公式Model Cardで確認したうえで適用するのが安全です。
使い方は簡単で、Load CheckpointのCLIP出力とCLIP Text Encodeの間にCLIP Set Last Layerノードを挟むだけです。
正プロンプト・負プロンプトの書き方
プロンプトは「この部屋にはこういう家具を、この素材で」と指示する発注書に近いものです。部屋ごとに必要な項目を順序立てて書き出すほど、先方(AI)が仕様を誤解しにくくなります。ComfyUI txt2imgワークフローの始め方|7ノードで画像生成では、正プロンプト用と負プロンプト用の2つのCLIP Text Encodeノードを配置します。それぞれの役割と書き方のポイントを整理します。
正プロンプトの構成テンプレート
効果的な正プロンプトには構成の型があります。以下の順序で要素を並べると、意図が伝わりやすくなります。
- 被写体(何を生成するか)
- スタイル・画風(写実、イラスト、水彩など)
- 照明・光源(自然光、スタジオ照明など)
- カメラアングル・構図(俯瞰、アイレベルなど)
- 品質タグ(masterpiece, high quality など)
カンマ区切りで短いフレーズを並べるのが基本です。文章形式よりもキーワード羅列のほうが、CLIPのトークン化と相性がよい傾向にあります。
負プロンプトで品質を底上げする
負プロンプトは「生成してほしくない要素」を指定する仕組みです。定番のネガティブ語句として、以下のようなものがあります。
- 品質系: ugly, blurry, low quality, worst quality
- 人体系: extra fingers, deformed hands, bad anatomy
- 構図系: cropped, out of frame, watermark
毎回同じネガティブ語句を入力する手間を省きたい場合は、EasyNegativeなどのテキストエンベディングを活用する方法もあります。エンベディングファイルをmodels/embeddingsフォルダに配置し、プロンプト欄で呼び出すだけで一括適用できます。プロジェクトテンプレートを使い回すように、定番のNG項目を1回登録しておくだけで済むのは大きな時短になります。
重み付け構文で強調・抑制する
重み付けは、設計図でハッチングの濃さを変えるのに似ています。強調したい箇所は濃く描き、目立たせたくない箇所は薄く描く。ComfyUIでも同じ発想で、特定のキーワードの影響力を数値で調整できます。A1111と構文ルールが違うため、違いを把握しておくことが大切です。
(keyword:1.3) 構文の仕組み
ComfyUIの重み付け構文は (keyword:数値) の形式です。数値1.0が標準で、1.0より大きいと強調、小さいと抑制になります。
(cinematic lighting:1.3), (blue sky:0.7)
この例では、映画的な照明効果を1.3倍に強調し、青空の影響を0.7倍に抑えています。
A1111では括弧 () だけで1.1倍の強調を意味しますが、ComfyUIでは数値なしの括弧には強調効果がありません。必ず数値をセットで記述する必要があります。この違いは、A1111からComfyUIに移行したときに見落としやすいポイントです(2026年4月現在)。
もう1つ押さえておきたいのが、ネスト構文の挙動です。ComfyUIのCommunity Manualによれば、((flowers:1.2):0.5) のようにネストさせた場合、重みは乗算で計算され実効0.6になります。意図せず値が掛け合わさると抑制が強く効きすぎるため、基本は1階層に留めるのが無難です。
重み解釈モードをA1111と揃える方法
A1111で作り込んだプロンプトをComfyUIに持ち込んだとき、同じ構文でも結果が微妙にズレることがあります。これはエンコーダの「重み解釈モード」がA1111とComfyUIで違うためです。
2026年4月現在、ComfyUI-ADV_CLIP_embやComfyUI_smZNodes(CLIP Text Encode++)といったカスタムノードを導入すると、A1111・compel・ComfyUI標準などの解釈モードを選択できます。A1111からの移植で出力を揃えたい場合に有効な選択肢です。
重みの調整幅と実用的な目安
重み付けの実用範囲は0.5〜1.5に収めるのが扱いやすい目安になります。この範囲なら画像の破綻が起きにくく、意図した効果も得やすくなります。
2.0を超える極端な値を設定すると、色が飽和したり形状が崩れたりするリスクが高まります。強調したい要素があるときは、重みを上げるよりもプロンプト内での語順を前方に移動させるほうが安定した結果を得られることが多いです。CADで線種を太くするより、そもそも前面に配置したほうが目立つのと同じ考え方です。
CLIPスケジュールで段階的にプロンプトを変える
ComfyUIの大きな強みの1つが、複数のConditioningを組み合わせるノード群です。生成の工程を時間軸で区切って、前半と後半で違うプロンプトを流す、そんな制御もできます。建築現場でいえば、前半は構造図面、後半は仕上げ図面、と段階ごとに見せる図面を切り替えるような使い方です。
ConditioningCombineで複数条件を合成する
ConditioningCombineノードは、2つのConditioningを結合して1つにまとめます。たとえば「夕焼けの空」と「モダンな建物」という2つのプロンプトをそれぞれCLIP Text Encodeで処理し、ConditioningCombineで合成できます。
このノードにはブレンド比率の設定がありません。両方の条件が等しく影響する点が特徴です。比率を調整したい場合は、次に紹介するConditioningAverageを使います。
ConditioningAverageでブレンド比率を調整する
ConditioningAverageノードは、2つのConditioningをstrengthパラメータで加重平均します。strengthが1.0なら最初の条件のみ、0.0なら2番目の条件のみが反映されます。0.5に設定すると両者が均等にブレンドされる仕組みです。
たとえば「写実的な写真」(strength: 0.7)と「水彩画風」(strength: 0.3)を組み合わせると、写実寄りでありつつ水彩のにじみが加わった表現が得られます。レンダリングとスケッチを重ねて見せるプレゼンボードの演出に近い使い方ができます。
ステップベースのスケジュール制御
生成ステップの進行に合わせてプロンプトを切り替えたい場合は、asagi4氏が開発するcomfyui-prompt-controlが高度スケジュールの現行デファクトです(2026年4月現在)。PCTextEncodeやPCLazyTextEncode、PCLazyLoraLoaderといったノードが提供され、A1111風のスケジュール構文をComfyUI上で使えるようになります。
[summer landscape:winter landscape:0.5]
この構文は「前半50%のステップではsummer landscape、後半50%ではwinter landscape」を意味します。構図を先に固めてからスタイルを変える、といった高度なワークフローに使えます。
より細かな切り替えには、語単位でスワップする [cat|dog:0.05] 形式も用意されています。この例では5%ステップごとにcatとdogが交互に入れ替わり、両者の中間的な特徴をブレンドした表現が狙えます。またPCLazyLoraLoaderを使うと、<lora:name:0.8> のようなA1111風LoRA記法もプロンプト内で完結させられ、LoRA強度のスケジュール化まで可能になります。
ConditioningSetAreaで領域別にプロンプトを指定する
画像全体に同じプロンプトを適用するのではなく、特定の領域だけに異なる指示を与えたい場面があります。ConditioningSetAreaノードは、まさにその用途に対応しています。
座標指定で画像を分割する考え方
ConditioningSetAreaノードには、以下のパラメータがあります。
- width / height: 領域の幅と高さ(ピクセル単位)
- x / y: 領域の左上座標
- strength: その領域の影響度
たとえば512×512の画像で上半分だけにプロンプトを適用するなら、width=512, height=256, x=0, y=0と設定します。
上下・左右分割の実践例
建築パースの生成では、空と建物で違うプロンプトを指定すると効果が出ます。具体的な手順は以下のとおりです。
- 「blue sky, clouds, sunlight」をCLIP Text Encodeで処理する
- ConditioningSetAreaで上半分の領域を指定する(y=0, height=256)
- 「modern building, concrete facade, glass windows」を別のCLIP Text Encodeで処理する
- ConditioningSetAreaで下半分の領域を指定する(y=256, height=256)
- ConditioningCombineで2つの条件を結合する
- KSamplerのpositiveに接続する
領域の境界にグラデーション的な重なりを持たせるため、strengthを0.8程度に下げると自然なつなぎ目が得られます。
3領域以上に分割したい、あるいは領域ごとに異なるサンプラー設定を与えたい場合は、ComfyUI-Impact-PackのRegional Samplerが選択肢になります(2026年4月現在)。ConditioningSetAreaが扱いにくくなる複雑な構図や多キャラクタ配置で有効ですが、この記事では詳細は割愛します。
建築プロンプトの実例集
ここまでのテクニックを踏まえて、ComfyUI×建築パース生成 完全ガイドで使える実践的なプロンプト例を紹介します。
インテリアパースの定番フレーズ
インテリアのAIパースでは、空間・素材・照明の3要素を意識してプロンプトを組み立てます。
modern living room, minimalist interior, (natural wood flooring:1.2),
white walls, large windows, (warm natural daylight:1.3),
mid-century modern furniture, indoor plants,
professional interior photography, 8k, high detail
素材感を出すキーワードとして、marble countertop(大理石天板)、exposed concrete(打ちっぱなしコンクリート)、brushed steel(ヘアラインステンレス)などが有効です。照明はwarm natural daylightやsoft ambient lightなど、光源の種類を明示すると雰囲気が安定します。
外観パースと素材指定のコツ
外観パースでは、視点と環境条件の指定が仕上がりを大きく左右します。
modern residential exterior, (three-quarter view:1.2),
white render facade, timber cladding accent,
(overcast sky lighting:1.1), lush garden landscaping,
architectural photography, even illumination, high resolution
実務では、視点にeye-level view(目線高さ)やbird’s eye view(鳥瞰)を明示するだけで構図の安定性が格段に上がります。天候や時間帯もgolden hour(夕方の光)、blue hour(日没直後の青い光)など具体的に指定すると、照明計算のシミュレーション代わりとして使えます。
ComfyUI LoRAの使い方|導入から建築向けおすすめの選び方で特定の建築スタイルを強化すれば、プロンプトだけでは表現しきれない細部の再現性も高められます。
まとめ
ComfyUIのプロンプトエンジニアリングは、テキスト入力にとどまらずノードレベルで制御できる点が最大の特徴です。CLIP Text Encodeの77トークン制限を意識した書き方、重み付け構文による強調と抑制、ConditioningCombineやConditioningAverageによるプロンプト合成、ConditioningSetAreaによる領域別指定と、段階的にテクニックを習得していくことで表現の幅が広がります。
まずは重み付け構文から試してみて、慣れてきたら領域分割やスケジュール制御に挑戦してみてください。
あわせて読みたい
- ComfyUI ノード基礎・基本ワークフローガイド — プロンプト制御の前提となるノード操作の基礎を押さえたい方向け
- ComfyUIのノードとは?初心者が最初に知る考え方 — CLIPやConditioningが流れるソケットの考え方から学びたい方向け
- ComfyUI×建築パース生成 完全ガイド — 建築パース生成に特化したワークフロー全体像を把握したい方向け
- ComfyUI LoRAの使い方|導入から建築向けおすすめの選び方 — プロンプトと組み合わせてスタイル表現を強化したい方向け




