C03:ComfyUI インターフェースの操作方法:初心者ガイド

ComfyUI は、AI ワークフローを構築するために設計された強力なノードベースのインターフェースです。初心者でも経験豊富なユーザーでも、そのレイアウトと機能を理解することは、ワークフローを効率的に作成するために不可欠です。このガイドは、インターフェースの操作方法を理解し、基本操作を習得し、自信を持ってワークフローの作成を始めるのに役立ちます。



ComfyUI インターフェースの概要

ComfyUI を起動すると、いくつかのセクションに分かれたクリーンで直感的なインターフェースが表示されます。主要なコンポーネントを分解して見てみましょう。

ComfyUI インターフェース

インターフェースの主要セクション

ノードエディタ(キャンバス)

  • ノードを接続してワークフローを構築する中央のワークスペースです。
  • ノードは個々の操作やプロセスを表し、ノード間の接続がデータの流れを定義します。

ツールバー(トップメニュー)

  • ワークフローの保存、読み込み、エクスポートのオプションを提供します。
  • 元に戻す/やり直し、ズームなどの基本的なコントロールと、 ComfyUI Managerへのアクセスが含まれます。

プレビューウィンドウ(右パネル)

  • 画像や処理結果など、ワークフロー出力のリアルタイムプレビューを表示します。
  • 中間結果や最終結果を視覚化するのに役立ちます。

設定パネル(左パネル)

  • 選択したノードの設定オプションが含まれます。
  • ワークフローのパラメータと設定を微調整できます。

ステータスバー(下部)

  • GPU 使用率、VRAM、処理状況などのシステム情報を表示します。
  • ズーム、パン、接続の表示切り替えのためのクイックアクセスボタンが含まれます。

基本的なマウスとキーボードの操作

ComfyUI での効率は、基本的なマウスとキーボードの操作を習得することから生まれます。簡単に概要を説明します。

マウス操作

  • 左クリック: キャンバス上のノードや領域を選択します。
  • 右クリック: ノードメニューを開き、新しいノードを追加したり、ノード固有のオプションにアクセスしたりします。
  • 中央クリック(またはマウスホイール): ドラッグしてキャンバスをパンし、スクロールしてズームイン/ズームアウトします。
  • ドラッグ&ドロップ: キャンバス上でノードを移動したり、出力ポートから入力ポートへドラッグしてノードを接続したりします。

キーボードショートカット

  • Ctrl + Z / Ctrl + Y: 操作を元に戻す/やり直す。
  • Ctrl + S: 現在のワークフローを保存します。
  • Ctrl + O: 保存されたワークフローを開きます。
  • Ctrl + Shift + S: ワークフローを新しいファイルとして保存します。
  • Delete / Backspace: 選択したノードを削除します。
  • Ctrl + マウスホイール: キャンバス上でズームイン/ズームアウトします。
  • スペースキー: キャンバスをワークフローの中央に配置します。

ノードの追加と管理

ノードは ComfyUI におけるワークフローの構成要素です。ノードを効果的に追加、接続、管理する方法は次のとおりです。

ノードの追加

  • キャンバス上で右クリック:
    ノードメニューを開き、カテゴリ(例:Input、Processing、Output)を参照してノードを選択します。
    メニュー上部の検索バーを使用してすばやくアクセスします。

ノードの接続

  • 出力から入力へドラッグ:
    あるノードの出力ポートから別のノードの入力ポートへクリックしてドラッグします。データ型が一致していることを確認してください(例:画像から画像へ、テキストからテキストへ)。

ノードの切断

  • 接続線上で右クリック:
    2つのノード間の接続を削除します。

ノードの再配置

  • クリックしてドラッグ:
    キャンバス上でノードを移動し、ワークフローを整理します。

プレビューウィンドウの使用

ワークフローの出力を見ることができるのが プレビューウィンドウ です。最大限に活用する方法は次のとおりです。

  • 出力のプレビュー:
    出力ノード(例:Preview Image)をクリックすると、その結果がプレビューウィンドウに表示されます。
  • ズーム:
    マウスホイールを使用して、プレビューされた画像をズームイン/ズームアウトします。
  • 出力の保存:
    プレビューされた画像を右クリックして、コンピュータに保存します。

インターフェースのカスタマイズ

ComfyUI には、ワークフロー体験を向上させるためのカスタマイズオプションがあります。

キャンバスビューの調整

  • ズームイン/ズームアウト: マウスホイールまたは Ctrl + マウスホイールを使用します。
  • キャンバスのパン: マウスの中ボタン(またはスペースキー)を押したままドラッグして、キャンバスを移動します。

ノードの整理

  • ノードの整列: ノードを手動できれいな行や列にドラッグして、整理を改善します。
  • ノードのグループ化: カラフルな背景やラベル(サポートされている場合)を使用して、関連するノードを視覚的にグループ化します。

効率的なナビゲーションのヒント

  • ショートカットを使用: Ctrl + Z や Ctrl + S などの一般的なショートカットを覚えて、ワークフローをより速く管理します。
  • キャンバスを整理: 入力、処理、出力のノードを別々の領域に置き、可読性を高めます。
  • 頻繁に保存: Ctrl + S を頻繁に使用して進捗を保存し、データの損失を防ぎます。
  • ズームレベルを試す: ズームインしてノードを詳細に編集し、ズームアウトしてワークフロー全体を把握します。

よくある問題のトラブルシューティング

ノードが接続できない

  • あるノードの出力タイプが次のノードの入力タイプと一致していることを確認してください。たとえば、画像出力をテキスト入力に接続することはできません。

キャンバスが散らかって感じる

  • ズームとパン機能を使用してワークスペースを整理します。不要なノードや接続を削除します。

プレビューが更新されない

  • 必要なノードがすべて接続され、正しく設定されているか確認してください。一部のノードは、動作するために特定の入力が必要です。

演習:シンプルなワークフローを構築する

次の手順に従って、基本的なワークフローを作成します。

デフォルトノードをクリア または 新しいワークフローを作成。

デフォルトのワークフローをクリアするには、 Edit -> Clear Workflow に移動します。

入力ノードを追加:

キャンバス上で右クリックし、Input カテゴリに移動して、load checkpoint ノードを追加します。

KSampler ノードを追加:

次に必要なノードは KSampler です。右クリックして、次に移動します。

Add Node > sampling > KSampler

KSampler は生成プロセスの主力です。

ランダムな画像ノイズを受け取り、ノイズの中から一貫性のある画像を見つけようとします。これを「サンプリング」と呼びます。自分が見ていると思うものに基づいて画像のノイズを少し減らし、もう一度見ます。指定した回数だけこれを繰り返します。

ランダムに切り取られた粘土の塊の中に形を想像しようとするようなものです。次に、その粘土をほんの少しだけ、自分が見ているものにより似せて形作ります。友達にも同じものが見えるよう説得できるまで、少しずつ彫刻を続けます。

ノードの接続:

各ノードの右側にはそのノードの出力があり、左側は入力です。Load Checkpoint ノードの右側にある MODEL 出力点を、KSampler ノードの model 入力点に、マウスを1回ドラッグするだけの簡単な操作で接続して、KSampler の想像力を助けましょう。

CLIP Text Encode (Positive Prompt)

KSampler が想像できるようになったすべてのものの中で、想像してほしいものをどうやって伝えるのでしょうか?それがテキストプロンプトの役割です。空白の場所を右クリックして、次に移動します。 Add Node > Conditioning > CLIP Text Encode (Prompt)

CLIP は、SDXL ファイルに組み込まれたもう1つの辞書のようなもので、英語と AI が理解する言語の間の翻訳辞書のように機能します。AI は単語では話しません。「トークン」で話します。トークンとは、モデルファイルの持つ巨大な辞書にある概念に対応付けられた、単語と数字の意味のあるまとまりです。

Load Checkpoint ノードの CLIP 出力点を取り、clip 入力点に接続します。次に、CLIP Text Encode (Prompt) ノードの出力の conditioning 点を、KSampler ノードの positive 入力点に接続します。

これにより、CLIP がプロンプトボックスに送られ、単語を飲み込み、トークンに変換し、KSampler 向けの「conditioning」を吐き出します。Conditioning とは、KSampler が最初に持つランダムなノイズの中から特定のものを探すように仕向けることを表す用語です。KSampler は、英語からトークンに翻訳されたプロンプトを使って、想像力を導いています。

CLIP Text Encode (Negative Prompt)

Conditioning は双方向に機能します。KSampler に特定のものを探すように指示すると同時に、特定のものを 避ける ように指示することもできます。これがポジティブプロンプトとネガティブプロンプトの違いです。

ネガティブプロンプトには2つ目の CLIP Text Encode (Prompt) ノードが必要になるので、空白の場所を右クリックして、もう一度次に移動します。

Add Node > Conditioning > CLIP Text Encode (Prompt)

Load Checkpoint の CLIP 出力点をもう一度接続します。CONDITIONING 出力点を KSampler の negative 入力点に接続します。

Empty Latent Image

ここで、KSampler に「空の潜在画像」を与えることで、明示的に出発点を与える必要があります。空の潜在画像は、白紙の画用紙のようなものです。KSampler に白紙を与えることで、描くように指示したものを描く場所ができます。

空白の場所を右クリックして、次を選択します。

Add Node > latent > Empty Latent Image.

LATENT 点を KSampler の latent_image 入力に接続します。

Vae Decode

空の潜在画像には非常に多くの数学的な層と次元が含まれているため、私たち人間は、普通の紙やデジタル画像を見るようには見ることができません。多面的な潜在画像は、はるかに単純なものに圧縮されなければなりません。控えめな2次元スクリーンに表示するために、正方形ピクセルのグリッドに「デコード」しなければなりません。これは「VAE」(Variational Auto Encoder)によって行われ、VAE も都合よく SDXL モデルに組み込まれています。

右クリックして次に移動し、VAE Decode ノードを追加します。

Add Node > latent > VAE Decode.

VAE Decode ノードが、KSampler の画像を人間が見える PNG に圧縮するという仕事をするには、2つのものが必要です。KSampler が空の潜在画像上に描いた絵と、その絵をピクセルに翻訳し直す方法を正確に知るための VAE です。

KSampler の LATENT 出力を VAE Decode ノードの samples 入力に接続します。次に、Load Checkpoint ノードまで戻って、VAE 出力を vae 入力に接続します。

画像を保存

あと1つ、とてもシンプルなノードを追加すれば完了です。画像をコンピュータに保存するノードが必要です!空白の場所を右クリックして、次を選択します。

Add Node > image > Save Image.

次に、VAE Decode ノードの出力を Save Image ノードの入力に接続します。

ワークフロー

ワークスペース上のすべてのノードの入力と出力が接続されました。ワークフローが完成しました!あとは試してみるだけです。KSampler の「positive」入力に接続されている CLIP Text Encode テキストボックスに何か入力します。

次に、右側の Queue Prompt をクリックします。

以上です…それだけです!これまでに存在したすべてのテキストから画像へのワークフローは、この7つのノードの拡張またはバリエーションにすぎません!


結論

ここまでで、ComfyUI インターフェース、基本的なショートカット、基本操作についてしっかりと理解できたはずです。これらのスキルがあれば、自信を持ってワークフローの構築を始めることができます。次の記事では、ノードの操作をさらに深く掘り下げ、より複雑なワークフローの作成方法を探ります。

コメントを残す