asagi4/comfyui-prompt-control

ComfyUI nodes for prompt editing and LoRA control

ComfyUI プロンプト制御

これは、多数のノードを手動で接続する代わりに、プレーンテキストのプロンプトを使用して複雑なAI画像生成ワークフローを制御できる ComfyUI 拡張機能 です。

機能

ComfyUIでは、複雑なワークフロー(プロンプトが変化するタイミングのスケジューリングや、異なるステップで異なるLoRAを読み込むなど)を構築するために、相互に接続されたノードの乱雑な「ヌードルスープ」を作る必要があります。このツールは、特別なテキスト構文を解析し、そのノードグラフを自動的に生成します。プロンプトのスケジューリング、LoRAの読み込み、高度なテキストエンコーディング、リージョナルプロンプティングをすべて単一のテキストボックスから行えます。

主な機能

  • プロンプト・スケジューリング: 特定のステップでプロンプトを切り替えます(例: [cat:dog:0.1] は生成の10%の時点で cat から dog に切り替わります)。
  • LoRAスケジューリング: ComfyUIの組み込みフックシステムを使用して、LoRA(微調整されたモデルアダプター)をロードおよびスケジューリングします。
  • 高度なテキストエンコーディング: PCTextEncode ノードを使用して、エンコーダーごとのプロンプト(SDXL/Fluxなど、複数のテキストエンコーダーを持つモデルに有用)、BREAK や AND といったプロンプトコンバイナー、および異なる重み解釈スタイルを使用できます。
  • リージョナルプロンプティング: Attention Coupleを実装し、画像の異なる領域に異なるプロンプトを適用します(例: 背景に犬、前景に猫)。
  • 遅延グラフ実行: PCLazyTextEncode のようなノードは、実際に変化するスケジュールの部分のみを再エンコードするため、反復作業が高速化されます。
  • マクロとセグメント: 非常に複雑なプロンプトを再利用可能なセグメントに整理できます。

仕組み

特別な構文でプロンプトを記述します。拡張機能のパーサー(速度向上のため parsy ライブラリで書き換え済み)がこのテキストを読み取ります。次に、PCLazyTextEncode や PCLazyLoraLoader のようなノードが、標準的なノード(CLIPTextEncode や LoraLoader など)を使用して、基盤となるComfyUIグラフを動的に構築します。ComfyUIのコアエンジンに重い処理を委ねるため、ほとんどのモデルや他のカスタムノードとの互換性が維持されます。

ユースケース

  • 多数のノードを手動で配線することなく、複雑でダイナミックな画像生成ワークフローを作成する。
  • 生成の特定のステップで被写体やスタイルを切り替える。
  • 生成プロセス中に異なるタイミングで異なるLoRAを適用する。
  • 単一のテキストプロンプトからリージョナルプロンプティングを行う(例: 前景と背景の要素を制御する)。

技術的な詳細

  • ComfyUI v0.8.0 以上が必要 (v3.0.0+)。
  • 既存のワークフローとの後方互換性があります。
  • Cutoff 機能(プロンプトマスキング用)は、Fluxモデルで使用されるような非CLIPテキストエンコーダーでは動作しません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト