NABLA Attention KJ(NABLA_AttentionKJ)
このノードは、モデルのアテンション計算関数をオーバーライドすることで機能を実現し、具体的にはNABLAスパースアテンションアルゴリズムを使用しています。
NABLA Attention KJ
NABLA Attention KJ ノードは、モデルのアテンション計算関数をオーバーライドすることで機能を実現し、具体的にはNABLAスパースアテンションアルゴリズムを使用します。
NABLA Attention KJは、ビデオ生成モデルのアテンションメカニズムを変更するための実験的なノードです。その中核機能は、モデルにNABLAスパースアテンションを適用し、ビデオ生成プロセスにおけるメモリ使用量と計算効率の最適化を目指すことです。
ノード機能
このノードは、モデルのアテンション計算関数をオーバーライドすることで機能を実現し、具体的にはNABLAスパースアテンションアルゴリズムを使用します。flex_attentionモジュールをサポートするためには比較的新しいバージョンのPyTorchが必要であり、現在は主にKadinsky5ビデオモデルに適合するように設計されています。その内部メカニズムは、提供された潜在空間の形状とウィンドウパラメータに基づいて、アテンション計算の範囲を制限するスパースアテンションマスクを動的に生成します。
ノードパラメータ説明 - NABLA Attention KJ
接続入力 (Inputs)
| パラメータ名 | データ型 | 必須 | デフォルト値 | 範囲/オプション | 説明 |
|---|---|---|---|---|---|
model | MODEL | はい | - | - | アテンションメカニズムを変更する必要があるベースモデル。このパラメータは標準的な生成モデルを受け取り、ノードはその内部のアテンション計算方法をオーバーライドします。 |
latent | LATENT | はい | - | - | 潜在形状を取得するためだけに使用されます |
コントロールパラメータ (Parameters)
| パラメータ名 | データ型 | 必須 | デフォルト値 | 範囲/オプション | 説明 |
|---|---|---|---|---|---|
window_time | INT | はい | 11 | ≥ 1 | 時間軸方向のアテンションウィンドウサイズ |
window_width | INT | はい | 3 | ≥ 1 | 空間方向(幅)のアテンションウィンドウサイズ |
window_height | INT | はい | 3 | ≥ 1 | 空間方向(高さ)のアテンションウィンドウサイズ |
sparsity | FLOAT | はい | 0.9 | 0.0 – 1.0 (ステップ: 0.01) | アテンションのスパース性の度合いを制御するパラメータ。範囲は0.0から1.0で、ステップは0.01です。値が高いほどアテンションはよりスパースになり、計算時に無視される関連性が多くなります。 |
torch_compile | BOOLEAN | はい | True | - | 合理的なメモリ使用量のためにほぼ必須 |
出力 (Output)
| パラメータ名 | データ型 | 説明 |
|---|---|---|
| MODEL | MODEL | NABLAスパースアテンションが適用された新しいモデル。この出力モデルは、後続の画像またはビデオ生成ステップで使用できます。 |
使用シナリオ
連続したビデオシーケンスを生成するワークフローでは、このノードをモデル読み込みノードの後に挿入することができます。時間ウィンドウと空間ウィンドウのサイズを調整することで、モデルがビデオフレームを生成する際に、過去の何フレームに注目し、各フレーム内のどの程度の領域に注目するかを制御でき、時間的な一貫性を保証しながら計算負荷を削減することができます。
注意事項
これは実験的なノードであり、その安定性と互換性には限界がある可能性があることに注意してください。比較的新しいバージョンのPyTorchが明確に要求されており、現在のところKadinsky5モデルとの連携動作のみが確認されています。他のモデルで使用すると、エラーや予期しない結果が生じる可能性があります。
NABLA Attention KJ ノードソースコードリンク
NABLA Attention KJ ノードは ComfyUI-KJNodes ノードパッケージから提供されています。
コメント
GitHubでサインインしてディスカッションに参加しましょう。