ComfyUI のインストールは、主に以下のいくつかのステップに分かれます:
- 仮想環境を作成する(システムレベルの Python 環境を汚染しないため)
- ComfyUI コードリポジトリをクローンする
- 依存関係をインストールする
- ComfyUI を起動する
ComfyUI のインストールには、ComfyUI CLI を参照することもできます。これは、ComfyUI を簡単にインストールし、その依存関係を管理できるコマンドラインツールです。
仮想環境の作成
独立した仮想環境は必要です。ComfyUI の依存関係がシステム上の他の依存関係と競合する可能性があり、システムレベルの Python 環境を汚染することも避けることができるためです。
Miniconda のインストール。これにより、ComfyUI で必要となる適切なバージョンの Python およびその他のライブラリをインストールできます。
Conda を使用して環境を作成します。
conda create -n comfyenv
conda activate comfyenv
ComfyUI コードリポジトリのクローン
システムに Git がインストールされていることを確認する必要があります。まず、ターミナル(コマンドライン)を開き、次にコードリポジトリをクローンします。
Microsoft Visual C++ Redistributable をインストールしていない場合は、
こちら からインストールしてください。
ターミナルアプリケーションを開きます。
git clone git@github.com:comfyanonymous/ComfyUI.git
GPU および ComfyUI 依存関係のインストール
GPU 依存関係のインストール
GPU 依存関係のインストール
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
Alternatively, you can install the nightly version of PyTorch.
Install Nightly version (might be more risky)
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch-nightly -c nvidia
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.0
Alternatively, you can install the nightly version of PyTorch.
Install Nightly version (might be more risky)
pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm6.0
conda install pytorch-nightly::pytorch torchvision torchaudio -c pytorch-nightly
ComfyUI 依存関係のインストール
cd ComfyUI
pip install -r requirements.txt
ComfyUI の起動
アプリケーションを起動するcd ComfyUI
python main.py
ComfyUI の更新方法
最新コードの取得
コマンドラインを使用して ComfyUI のインストールパスに入り、最新コードを取得します。cd <installation path>/ComfyUI
git pull
依存関係のインストール
コマンドラインを使用して ComfyUI のインストールパスに入り、依存関係をインストールします。現在の Python 環境が ComfyUI の仮想環境であることを確認する必要があります。そうでない場合、依存関係がシステムレベルの Python 環境にインストールされ、システムレベルの Python 環境を汚染してしまいます。
pip install -r requirements.txt
外部モデルパスの追加
ComfyUI/models ディレクトリの外部でモデルファイルを管理したい場合、以下のような理由が考えられます。
- 複数の ComfyUI インスタンスを運用しており、ディスク容量の節約のためにモデルファイルを共有したい
- WebUI などの異なる種類の GUI アプリケーションを併用しており、それらで共通のモデルファイルを使いたい
- モデルファイルが認識されない、または見つからない
このため、extra_model_paths.yaml 設定ファイルを用いて、追加のモデル検索パスを指定する方法を提供しています。
設定ファイルの開き方
ポータブル版/手動インストール版
ComfyUI Desktop
ポータブル版 や 手動インストール版 の ComfyUI の場合、ComfyUI のルートディレクトリに extra_model_paths.yaml.example という名前のサンプルファイルが含まれています。ComfyUI/extra_model_paths.yaml.example
このファイルをコピーし、名前を extra_model_paths.yaml に変更して使用します。ファイルは必ず ComfyUI のルートディレクトリ(ComfyUI/extra_model_paths.yaml)に保存してください。
また、このサンプル設定ファイルは こちら からも参照できます。 ComfyUI Desktop アプリケーションをご利用の場合、以下の画像を参考に、追加モデル設定ファイルを開くことができます:
または、直接以下のパスから開くことも可能です:C:\Users\YourUsername\AppData\Roaming\ComfyUI\extra_models_config.yaml
~/Library/Application Support/ComfyUI/extra_models_config.yaml
この設定ファイルは、上記の場所に常に保存しておく必要があります。他の場所へ移動しないでください。
該当ファイルが存在しない場合は、任意のテキストエディタで新規作成してください。
設定例
たとえば、以下の構造でモデルファイルを格納している場合:
📁 YOUR_PATH/
├── 📁models/
| ├── 📁 loras/
| │ └── xxxxx.safetensors
| ├── 📁 checkpoints/
| │ └── xxxxx.safetensors
| ├── 📁 vae/
| │ └── xxxxx.safetensors
| └── 📁 controlnet/
| └── xxxxx.safetensors
このパスを ComfyUI が認識できるよう、extra_model_paths.yaml を次のように設定できます:
my_custom_config:
base_path: YOUR_PATH
loras: models/loras/
checkpoints: models/checkpoints/
vae: models/vae/
controlnet: models/controlnet/
あるいは以下のようにも設定可能です:
my_custom_config:
base_path: YOUR_PATH/models/
loras: loras
checkpoints: checkpoints
vae: vae
controlnet: controlnet
デスクトップ版では、インストール時に自動生成されたパス設定を上書きせず、既存の設定ファイルに新しい設定を追加してください。誤った編集を行った場合に備えて、変更前に該当ファイルのバックアップを必ず取得してください。
そのほかの設定オプションについては、デフォルトの extra_model_paths.yaml.example をご参照ください。設定を保存した後は、ComfyUI を再起動する必要があります。
以下は、元の設定ファイルのサンプルです:
# このファイルを extra_model_paths.yaml に名前を変更すると、ComfyUI が読み込みます
# a1111 UI 向け設定
# 必要なのは、base_path をご自身のインストール先に変更することだけです
a111:
base_path: path/to/stable-diffusion-webui/
checkpoints: models/Stable-diffusion
configs: models/Stable-diffusion
vae: models/VAE
loras: |
models/Lora
models/LyCORIS
upscale_models: |
models/ESRGAN
models/RealESRGAN
models/SwinIR
embeddings: embeddings
hypernetworks: models/hypernetworks
controlnet: models/ControlNet
# ComfyUI 向け設定
# base_path には、既存の ComfyUI インストール先、またはすべてのモデル・LoRA などを一元管理する中央フォルダのパスを指定してください
#comfyui:
# base_path: path/to/comfyui/
# # is_default を true に設定すると、これらのフォルダが優先的にリスト表示され、ダウンロード先などデフォルトのディレクトリとして使用されます
# #is_default: true
# checkpoints: models/checkpoints/
# clip: models/clip/
# clip_vision: models/clip_vision/
# configs: models/configs/
# controlnet: models/controlnet/
# diffusion_models: |
# models/diffusion_models
# models/unet
# embeddings: models/embeddings/
# loras: models/loras/
# upscale_models: models/upscale_models/
# vae: models/vae/
# その他の UI 向け設定
#other_ui:
# base_path: path/to/ui
# checkpoints: models/checkpoints
# gligen: models/gligen
# custom_nodes: path/custom_nodes
たとえば、WebUI が D:\stable-diffusion-webui\ にインストールされている場合、対応する設定を次のように変更できます:
a111:
base_path: D:\stable-diffusion-webui\
checkpoints: models/Stable-diffusion
configs: models/Stable-diffusion
vae: models/VAE
loras: |
models/Lora
models/LyCORIS
upscale_models: |
models/ESRGAN
models/RealESRGAN
models/SwinIR
embeddings: embeddings
hypernetworks: models/hypernetworks
controlnet: models/ControlNet
追加のカスタムノードパスの登録
外部モデルの追加に加え、ComfyUI のデフォルトパスに含まれていないカスタムノードのパスも登録できます。
この設定は、カスタムノードのデフォルトインストールパスを変更するものではありません。ComfyUI 起動時に追加の検索パスとして認識されるようになります。ただし、実行環境の完全性を保つため、対応する環境においてカスタムノードの依存関係を引き続き正しくインストールする必要があります。
以下は、macOS 向けの簡単な設定例です。実際の環境に合わせて適宜修正し、対応する設定ファイルに追加してください。変更後は、ComfyUI を再起動することで設定が有効になります:
my_custom_nodes:
custom_nodes: /Users/your_username/Documents/extra_custom_nodes