Pythonについて
この世には数多のプログラミング言語がありますが、ComfyUIは Python(パイソン) という言語で動いています。
ComfyUIを使いこなすためにPythonでプログラミングできる必要はまったくありません。 が、少しだけ用語を知っておくと、これから直面するエラー達と戦う気力が湧くかもしれません。
バージョン
「言語」にバージョンがあるのは少し不思議な感じがしますが、昭和に無かった言葉が令和の時代に生まれるように、Pythonもアップデートを重ねるごとに新しい機能や改善が加えられています。
基本的には下位互換性(古いコードも動くようにすること)を保つように設計されていますが、バージョンが上がると動かなくなるプログラムもあります。
- 推奨バージョン
- 現在、Pythonの最新版はどんどん進んでいますが、ComfyUIで安定して動作するのは
3.10〜3.13の範囲です。
- 現在、Pythonの最新版はどんどん進んでいますが、ComfyUIで安定して動作するのは
ライブラリ
ComfyUIで例えるのも変な話ですが、「ライブラリ」は カスタムノード みたいなものです。 Python本体には無い機能を追加したり、複雑な処理を簡単に書けるようにするための「拡張パーツ」ですね。
便利ではありますが、ライブラリが他のライブラリに依存していたり、Python本体とのバージョンが合わなかったりすると、 「何もしていないのに壊れた」 ような状態を引き起こすことがあります。 実際、ComfyUIで出会うエラーのほとんどはライブラリが原因です。
pip install
その「ライブラリ」をインストールするためのコマンドです。
pip install <ライブラリ>
例えば上記のように打つと、インターネットからライブラリをダウンロードしてインストールします。
仮想環境
Pythonの強みであり、同時にエラーの要因にもなりやすいのがライブラリでした。 入れれば入れるほど便利になりますが、そのぶん依存関係が複雑になり、エラーを引き起こす可能性も上がります。
そこで登場するのが 「仮想環境」 です。
何もせずにライブラリを入れるとPCにあるすべてのPythonプログラムに影響してしまいますが、ソフトウェアごとに「専用の部屋」に分けて管理することで、複雑な依存関係になるのを防ぐことができます。
しばしば登場する venv は、この仮想環境をつくる機能のひとつです。
ポータブル版
ポータブル版のComfyUIはちょっと特別です。
ComfyUI_windows_portable フォルダを覗いてみると、python_embeded というフォルダが入っています。
- 手動インストール(venv): PCにPythonをインストールし、その中で仮想環境(部屋)を作る。
- ポータブル版: Pythonそのものをフォルダ内に内蔵している。
いわば「家ごと持ってきている」ような構造です。 そのため、PC本体にPythonをインストールしていなくても動作しますし、USBメモリに入れて別のPCで起動すれば、そのまま動かすことができます。
🚨 注意点
「どこでも動く」といっても限界はあります。
-
- OSの壁: Windows向けのポータブル版は、LinuxやMacでは動きません。
-
- ハードウェアの壁: CUDA (NVIDIA) 向けに設定しているComfyUIは、NVIDIAのGPUがないPCでは動きません。
-
- 環境依存の壁:
xformersやFlashAttentionなどの特定のライブラリは、ドライバやハードウェア構成、パスに強く依存するため、他のPCに持っていくと動かないことが多いです。
- 環境依存の壁:
あくまで「基本的なハードウェア構成やOSが同じなら動く」というレベルで捉えておきましょう。