How to fix custom nodes on ComfyUI
序文
ComfyUIは使いこなす事さえ出来れば、A1111やreForgeでは実現できない高度な画像生成や動画生成を実現することが出来ますが、様々な意味で難易度が跳ね上がります。
そもそもノードを組む以前に、環境構築の時点で壮絶に手間がかかります。
A1111やreForgeの場合、拡張機能をインストールすれば大概その機能はそのまま使えるし、+αの手間が発生するとしても精々モデルのダウンロードと設置位です。
しかし、ComfyUIは違います。
拡張機能のインストール一つとっても様々なカスタマイズが必要で、Pythonライブラリーのインストールであったり、自分でjsonファイルやpyファイルを書き換えなければならないことさえあります。
一つ例を取ってみましょう。
ComfyUI_LayerStyleはA1111やreForgeではなじみのない機能ですが、ComfyUIでは必要になることが多い拡張機能です。
インストールに関する記載を読むとわかりますが、A1111やreForgeのように指定フォルダに拡張機能ファイルをダウンロードし、WebUIを起動すれば自動的に拡張機能がインストールされ、すぐに使用できるようになる…という便利な動作はしてくれません。
Git CloneなりComfyUI Managerなりで必要なファイルをダウンロードした後、手動でinstall_requirements.batを実行し、手動で必要なPythonライブラリーをインストールする必要があるのです。
更に言えば、後述しますが他の拡張機能をインストールしたり更新した際に、ここでインストールしたPythonライブラリーのバージョンが書き換わってしまうことによるエラーも起こりうる為、最低でも「ここで何のPythonライブラリーをインストールしたか」という知識、記憶は持っておく必要があります。
更に更に、一部のフォルダを自分で移動する必要もあったりします。
このように、ComfyUIにおいて拡張機能を利用するに際して、高度なプログラムを自分で組む能力までは必要とされませんが、基本的に「パソコンをGUIではなくコマンドで操作する能力」は必要です。
また、高度なノードを多数組んでいくと、必要となる拡張機能の数もA1111やreForgeとは段違いの差で、しかもその都度設定が必要となる為に、自分で記憶しきれなくなってきます。
そこで、本稿では読者の為というよりもまず自分の為に、ComfyUIの様々な拡張機能において、必要だった様々な設定を備忘録的に、必要があり次第順不同で追記していきます。
ComfyUI-IF_AI_tools
IF_AIフォルダをコピーする
ファイルをダウンロード後、フォルダ内のバッチファイルを実行する。更に、「IF_AI」フォルダをコピーして「\ComfyUI\input」フォルダに張り付ける事。

ライブラリーの不足分を追加する
python_embeded\python.exe -m pip install pybind11
python_embeded\python.exe -m pip install nano_graphrag尚、この際に、VSにおける「C++ によるデスクトップ開発」環境のインストールは必須条件となる。
ComfyUI_LayerStyle
ImportError: cannot import name 'guidedFilter' from 'cv2.ximgproc'
他の拡張機能の更新やインストールで、opencv-contrib-pythonライブラリーのバージョン違いを起こした時に発生する。対処方法は以下参照。
Change the VitMatte model of the Ultra node to a local call. Please download all files of vitmatte model to the ComfyUI/models/vitmatte folder.
vitmatteフォルダをmodelsフォルダ内に作成し、以下の全ファイルをダウンロードする事。
LayerStyle Advance
ComfyUI LayerStyle 修正レポート
LayerStyle Advance – Transformers 5.0 Compatibility Fix
IPAdapter
モデル設置
下図のように、モデル設置場所のパス指定をextra_model_pathsファイル上で設定する必要がある。

Insightface
ReactorやIP-Adapterにおいて必須となるライブラリーであるが、自動でインストールもされず、更にはネットワーク経由でのpip installも効かない厄介な代物である。whlファイルをローカルにダウンロードして、python_embeded\python.exe -m pip install "ローカル上のパス"を実行する必要がある。また、当然最新のComfyUIにおいてはPython 3.12用が必要。
was-node-suite-comfyui
下図のように、was_suite_configファイルに、ffmpegをインストールしたパスの設定が必要。当然、それとは別に環境変数への追記も必要。

ComfyUI-WD14-Tagger
初回ロード時に、onnxruntime-gpuではなく、cpu用のonnxruntimeライブラリーがインストール(※拡張機能のインストール順次第でその状態になっていることがある)されていると、cpu用ライブラリーを使いに行って、しかもその設定が保存されてしまう為、以降激遅になる。
初回ロード時は必ずcpu動作用のonnxtuntimeを削除し、onnxruntime-gpuのみがインストールされている状態で行う事。ただし一度激遅状態に陥ってしまった場合は、一度拡張機能フォルダ自体を削除し、かつonnxruntime-gpuのみが有効になっている状態でtaggerを使用する。
ComfyLiterals
custom_nodesフォルダの「ComfyLiterals」フォルダそのものを、"\ComfyUI\web\extensions"フォルダにコピーする必要がある。
ComfyUI_ADV_CLIP_emb
カスタムが必要というよりも、どのノードで必要かわからない、かつ必要ない場合もあるのに、「! No module named 'custom_nodes.ComfyUI_ADV_CLIP_emb'」というエラーが出た時には必要になる拡張機能
ComfyUI-NAI-styler
数あるComfyUIのCustom Nodes関連エラーの中でも、極めつけに意味不明なエラー。「Error. No naistyles.csv found when connect comfyui web」とエラーが出た時には、何と自分でCustom Nodes自体を自作する必要がある。但し、簡単に作成できる。以下のファイルを解凍して使用すること。
念のため、作成手順は以下参照。
image-resize-comfyui
現時点、最悪のエラーがこれ。ノードウィンドウが下のように変形してしまい、元に戻らない。原因不明、対処も不明。ノードを再インストールしても無駄。ComfyUIそのものを新規でクリーンインストールすると直るが、最悪に手間がかかる。

ComfyUI-Custom-Scripts
Broken nodes
原因は不明だが、破損すると下図のようになる。カスタムノード自体を一度削除して再インストールすれば直る。尚、何故か同時にComfyUI Manegarも破損する為、そちらも再インストールする。

Fixed ComfyUI-Custom-Scripts
LCM_Inpaint_Outpaint_Comfy
2024年9月時点で、diffusers 0.28.2までしか対応しない。diffusersを更新すると、以下のエラーが出る。
Traceback (most recent call last):
File "D:\USERFILES\ComfyUI\ComfyUI\nodes.py", line 1993, in load_custom_node
module_spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "D:\USERFILES\ComfyUI\ComfyUI\custom_nodes\LCM_Inpaint-Outpaint_Comfy\__init__.py", line 1, in <module>
from .LCM_Nodes import NODE_CLASS_MAPPINGS
File "D:\USERFILES\ComfyUI\ComfyUI\custom_nodes\LCM_Inpaint-Outpaint_Comfy\LCM_Nodes.py", line 9, in <module>
from .LCM.LCM_reference_pipeline import LatentConsistencyModelPipeline_reference
File "D:\USERFILES\ComfyUI\ComfyUI\custom_nodes\LCM_Inpaint-Outpaint_Comfy\LCM\LCM_reference_pipeline.py", line 33, in <module>
from diffusers.models.unet_2d_blocks import CrossAttnDownBlock2D, CrossAttnUpBlock2D, DownBlock2D, UpBlock2D
ModuleNotFoundError: No module named 'diffusers.models.unet_2d_blocks'
このエラーはわかるかMistoControlNet-Flux-dev
ComfyUI Managerに登録されてこない拡張機能である為、自ら手動でgit cloneして導入する必要がある。
CLIPSeg
2024年11月現在、transformers を4.60.1以降に更新すると、動作しなくなる。動作可能な最新版は、4.45.2。2024年12月以降、4.47.0以降ではこの問題は解決したが、「こういうエラーが起きる可能性がある」と認識しておく必要がある。
comfyui-ollama
一般的に生じるものか固有の問題かは不明だが、2024年現在初期状態で正常処理できない。
修正した以下のファイル上書きが必要。
WaveSpeed
非常に多岐にわたる問題が発生する為、以下の記事を参照する事。
Reactor
Pytorch2.6.0以降において、モデルロード時にエラーを起こす為、以下の記事を参照する事。
Impact Pack
Fixing Protobuf
Layer_Style_Advancedの更新において、protobufのバージョンが5.29に固定されてしまう時に、FaceDetailer(Pipe)ノードがエラーを起こす。protobを再度更新する事で、直る。
かなりの頻度で発生するので、以下対策記事を参照する事。
fixed Impact-Pack for ComfyUI V3
Fixed Impact Pack for new API of ComfyUI
Impact Subpack
Pytorch2.6.0以降において、Skin Detailerのモデルロードでエラーが発生する場合、以下記事を参照する事。
Florence2
Archive of fixing Florence2 Loader to transformers 4.50.0
For loading Florence2 on Flash-Attention
Fixed Florence-2 for newest ComfyUI
Prompt Composer
Ultimate SD Upscale
5D tensor support
WAN2.x系やQwen Image系の拡大で発生するテンソル不一致エラー
Fixed Ultimate SD Upscale
comfyui-ollama
ollamaの更新によって、Ollama GenetateノードでThinking Mode非対応のLLMが問答無用で弾かれるようになってしまったので、その条件を除外する為の改造。
comfyui_patches_ll
LanPaint
マスクエリア外に編集がかかってしまう問題に対処した。
