見出し画像

【ComfyUI】WAS Node Suiteを確実にインストールする手順

はじめに

ComfyUIを使う上で必需品扱いされているノードセットはいくつかありますが、その最たるもののうちの一つが今回のwas node suiteです。
本家はRetired廃止になり、更新が見込めなくなってしまっていたのですが、その後ltdrdata氏によってフォークされ、新たなプロジェクトとしてRevised改訂と銘打たれました。

今回は主に筆者のComfyUIセットアップ記事で環境を整えた方々が遭遇する可能性の高いトラブルがあったので、フォローの意味も込めて覚え書きを残しておきます。

実際の手順

まずはインストール

ひとまずはインストールを済ませます。ComfyUI ManagerからCustom Nodes Managerを開き、Wasで検索するとおそらく最初に引っかかってきますので、あとはいつも通りInstallしてRestartします。

まずは普通にインストール

リスタート後、再度ComfyUI Managerを開き、同じようにWasで検索してみると

インポートに失敗している

エラーステータスが表示されている場合があります。これは「インストールは出来ているけれど、ComfyUIに読めなかった」という意味です。
エラーステータスが出ていなければここでおしまい。無事にインストールできているので、あとはWNSの世界を楽しんでください。
出てしまっている人はIMPORT FAILEDをクリックすると詳細が表示されます。

Traceback (most recent call last):
File "D:\App\ComfyUI\nodes.py", line 2216, in load_custom_node
module_spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "D:\App\ComfyUI\custom_nodes\was-ns\__init__.py", line 1, in <module>
from .WAS_Node_Suite import NODE_CLASS_MAPPINGS
File "D:\App\ComfyUI\custom_nodes\was-ns\WAS_Node_Suite.py", line 14731, in <module>
build_info = ' '.join(cv2.getBuildInformation().split())
AttributeError: module 'cv2' has no attribute 'getBuildInformation'

インポート失敗の理由

慣れていれば「ああ、あれね」で終わってしまうエラーメッセージも、初心者にとっては高すぎる壁。なので、ここで詰まってしまっている方にこそこの記事が書かれています。
ちなみに、Try Fixではおそらく直らないです。

原因と調整

結論から言えば、これはWas node suiteで想定されているopencvのバージョンとvenv上のバージョンとの食い違いが原因です。
opencvにgetBuildInformationがあるはずなのに見つからないと言われています。
調整はopencvを最新版にアップグレードすること。
まずはComfyUIのvenvをアクティベートし、それから旧版を削除して新版を入れ直します。
なお、いつも通りComfyUIはD:\App以下にインストールされている前提です。違う場所にセットアップしている人たちは適宜読み替えてください。

cd D:\App\ComfyUI
venv\Scripts\activate
pip uninstall opencv-python opencv-contrib-python opencv-python-headless
pip install opencv-python

ここまで来ればComfyUIを再起動するだけ。
再起動後もう一度Managerで検索してみて、エラーステータスが消えていれば終了です。

一番使われているノード

ちなみに、Was node suiteのノードの探し方の説明を兼ねて、一番使われているバッチ用のノードの場所と、解説ページでよく出てくる旧版との違いを説明しておきます。まず場所ですが、Cメニュー下のノードメニューを開き、下にスクロールしていくと出てくる「WAS Suite」という項目以下に収録されています。
よく解説サイトに出てくるバッチローダーは、このうちIO項目以下にあります。

Load Image Batchカスタムノードの場所

このようなノードデザインになっています。

解説サイトたちででてくる入力コネクタがない

よく、整数ノードをindexという入力ノブに接続している画面が出てきますが、このように入力ノブが存在しません。
では整数の入力はどうするのかというと、つなごうとすると地味にseedとindexの横にグレーの丸が出現します。

じつは隠しコネクタに変更されていた

じつはこれが入力コネクタなので、以下のようにつなげます。

解説サイトの画像はこう読み替える

まとめ

というわけで、インストール方法とトラブルシュートの記事でした。お役に立てれば幸いです。
ただ、現在「生成AIの出力じゃなく、古い時代の低解像度かつノイズだらけ、あるいは色あせた写真や雑誌のスキャン」を、なぜか全然見つからない専用ツールに頼らずに自分たちでやってしまおうという、ワークフロー自作シリーズを書いています。

この記事の続きとして、Was node suiteのような大規模なノードセットをバッチ処理のためだけに導入するより、もっと単純な自作カスタムノードを導入しませんか?という趣旨の記事を用意しています。
自作カスタムノードの配布も行いますので、興味があったら過去記事も読んでおくことをおすすめします。

いいなと思ったら応援しよう!