Comfy によるカスタムノードの読み込み方法
Comfy の起動時、custom_nodes ディレクトリ内の Python モジュールをスキャンし、読み込みを試みます。
モジュールが NODE_CLASS_MAPPINGS をエクスポートしている場合、それはカスタムノードとして扱われます。
init.py
__init__.py は、Comfy がモジュールのインポートを試みるときに実行されます。カスタムノード定義を含むモジュールとして認識されるためには、NODE_CLASS_MAPPINGS をエクスポートする必要があります。エクスポートされており(かつインポート中に何も問題が起きなければ)、モジュール内で定義されたノードが Comfy で利用可能になります。コードにエラーがある場合、Comfy は続行しますが、そのモジュールの読み込みに失敗したと報告します。そのため、Python コンソールを確認してください!
非常にシンプルな __init__.py ファイルは以下のようになります:
NODE_CLASS_MAPPINGS
NODE_CLASS_MAPPINGS は、カスタムノード名(Comfy インストール全体で一意である必要があります)を対応するノードクラスにマップする dict でなければなりません。
NODE_DISPLAY_NAME_MAPPINGS
__init__.py は NODE_DISPLAY_NAME_MAPPINGS をエクスポートすることもできます。これは、同じ一意の名前をノードの表示名にマップします。
NODE_DISPLAY_NAME_MAPPINGS が提供されていない場合、Comfy は一意の名前を表示名として使用します。
WEB_DIRECTORY
クライアント側コードをデプロイする場合は、JavaScript ファイルが置かれているパスを、モジュールからの相対パスとしてエクスポートする必要もあります。これらをカスタムノード内のjs という名前のサブディレクトリに配置するのが慣例です。