【ComfyUI】カスタムノードの依存関係衝突エラーの解決法

どのような問題が発生するか

ComfyUIでカスタムノードをインストールしようとした際、最も遭遇しやすいのが「依存関係衝突(Dependency Conflict)」エラーです。症状としては次のようなものが挙げられます:

  • インストール中に「Package conflicts detected」「Requirement already satisfied」という矛盾したメッセージが表示される
  • 起動時に「ModuleNotFoundError: No module named ‘xxx’」が発生する
  • 特定のノードを使用すると「AttributeError: module ‘torch’ has no attribute ‘xxx’」というエラーが出る
  • ComfyUIが起動しても、特定のノードがグレーアウトして使用できない

代表的な環境:Windows 11 + Python 3.11 + ComfyUI Portable版、またはUbuntu 22.04 + miniconda環境

結論

カスタムノードの依存関係衝突は、requirements.txtの競合排查と、Pythonパッケージのバージョン固定、または新規環境でのクリーンインストールにより解決できる。

具体的な解決手順

ステップ1:問題の切り分けを行う

まず最初に、 проблемаがカスタムノード由来かどうかを確認します。ComfyUIをセーフモードで起動してください:

# ComfyUI起動時に以下のキーを押しながら起動
# Windows: Shiftキー
# Mac: Optionキー

セーフモードでは全カスタムノードが無効化されます。セーフモードで正常に起動すれば、問題の原因はカスタムノードにあると判断できます。

ステップ2:依存関係の競合を調査する

問題のカスタムノードがインストールされているディレクトリで、requirements.txtを確認します:

# Windowsの場合
cd E:ComfyUI_windows_portableComfyUIcustom_nodes対象のノード
type requirements.txt

# Mac/Linuxの場合
cd ~/ComfyUI/custom_nodes/対象のノード
cat requirements.txt

競合の典型例はtorchのバージョン指定です。例えば:

torch==2.4.1
torch>=2.4.2

のように異なるノードが相反するバージョンを要求している場合、pipは解決できません。

ステップ3:Python環境の直接確認

インストールされているパッケージのバージョンを直接確認します:

# ComfyUIのPython環境で実行
# Windows Portable版の場合
E:ComfyUI_windows_portablepython_embededpython.exe -m pip list | grep torch

# Anaconda/Miniconda環境の場合
conda activate comfyui
pip list | grep -E "torch|numpy|pillow"

インストールされているtorchのバージョンと、カスタムノードが要求するバージョンを比較します。

ステップ4:競合パッケージの解決

バージョン競合が検出された場合、いくつかの解決策があります:

方法A:特定バージョンをインストールする

# 例:torch 2.4.1に固定する場合
pip install torch==2.4.1 torchvision==0.19.1 --index-url https://download.pytorch.org/whl/cu121

注意:GPU環境に合わせてCUDAバージョンは適切に選択してください(cu118, cu121, cu124など)

方法B:requirements.txtを一時的に修正する(上級者向け)

# 対象のカスタムノードディレクトリ内のrequirements.txtを開く
# 以下のようにバージョンを緩和する

# 変更前
torch==2.4.1

# 変更後
torch>=2.4.0
torch<=2.5.0

方法C:新規クリーン環境を作成する

競合が複雑な場合、新規環境にインストールし直すのが最も確実です:

# Anaconda/Minicondaの場合
conda create -n comfyui_new python=3.11
conda activate comfyui_new

# PyTorchとComfyUIをインストール
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121

# ComfyUIをクローン
git clone https://github.com/comfyanonymous/ComfyUI

# カスタムノードを再度インストール

ステップ5:ComfyUI-Managerを使った再インストール

ComfyUI-Managerがインストールされている場合、一からノードを再インストールを試みます:

# custom_nodesディレクトリに移動
cd E:ComfyUI_windows_portableComfyUIcustom_nodes

# ComfyUI-Managerを最新版に更新
git pull

# 問題のありそうなノードを削除(ディレクトリごと)
rm -rf 問題のあるノードディレクトリ

# ComfyUIを再起動すると、Managerが再インストールを提案する

ステップ6:設定ファイルのリセット

稀に設定ファイル破損が原因の場合があります。その際は以下のファイルを削除します:

# Windows
del "%APPDATA%ComfyUIextra_models_config.yaml"
del "%APPDATA%ComfyUIconfig.json"

# Mac
rm "~/Library/Application Support/ComfyUI/extra_models_config.yaml"
rm "~/Library/Application Support/ComfyUI/config.json"

# Linux
rm "~/.local/share/ComfyUI/extra_models_config.yaml"
rm "~/.local/share/ComfyUI/config.json"

削除後、ComfyUIを再起動するとクリーンな状態で起動します。

補足・注意点

バージョン依存の罠

  • torchのバージョン固定は危険:あるノードがtorch==2.4.1を要求し、別のノードがtorch>=2.4.2を要求する場合、両立不可能です。必ずGitHubのIssueを確認して、どのバージョン組み合わせが安定しているかを確認してください。
  • GPU/CPU版の不一致:CPU版PyTorchを入れている環境にGPU版をインストールしようとするとエラーになります。インストールURLを正しく指定してください。

環境別の注意点

  • Windows Portable版:python_embededフォルダ内のPythonを使用するため、グローバルなPython環境とは別管理になります。
  • WSL/Ubuntu:miniconda環境を使用している場合は、condaとpipの混合に注意してください。
  • Mac(M1/M2):ARM版PyTorchが必要な場合があり、Intel版とはインストールURLが異なります。

git resetによる被害

GitHubのIssueで「git –hardを実行したら問題が起きた」という報告があります。カスタムノードディレクトリ内で安易にgit reset –hardを実行すると、ComfyUI本体に影響を与える可能性があります。操作は自己責任で行ってください。

ログの活用

詳細なエラー情報を得るには、ComfyUI起動時に出力されるターミナルログを確認してください。エラー発生時のスタックトレースから、問題の個所を特定できます。

参考元

おすすめ環境

💡 この問題を根本的に解決するには

ローカル環境でGPUトラブルが頻発する場合、クラウドGPUサービスの利用も検討してみてください。環境構築の手間なく、すぐにAI開発を始められます。

  • RunPod — RTX 4090が$0.44/h〜、ワンクリックでJupyter環境が起動
  • Vast.ai — コミュニティGPUマーケットプレイス、最安値でGPUレンタル
この記事は役に立ちましたか?