見出し画像

Near-sighed Attention公開しました


SlothfulAttention の一部として公開しました。

ConfyUI Managerからインストール出来るはずなので、気になる方は試してみてください。

基本的には SD1.5 ベースのモデルで利用されることを想定していますが、
SDXL, SSD-1Bベースのモデルでも動作に問題は無さそうです。
(効果は弱いですが)

ついでに速度測ってみました

SD1.5ベースのモデルで、画像サイズ 1024x1024 なら サンプリングは40%~50%程度の高速化ができました。
※VAE Decodeとかもあるので、生成速度はそこまで速くなってないです

なお、512x512サイズだと -10%程度で、遅くなってます。

SlothfulAttention公開当初に遅くなったーとか言っていたのですが、
K, V用にブレンドしている箇所を

k = one * (1 - k_blend) + pool * k_blend

と書いていたのが良くなかったようです。

k = torch.lerp(one, pool, k_blend)

と pytorchの lerp メソッドを使うように修正したら、オーバーヘッドがそこそこ減りました。

教訓

ライブラリに実装済みであれば、ライブラリの機能を使おう。
最適化されているかもしれないし、自前で実装するより悪くなることは滅多にない

実装後に一度計測してみよう。
想像より時間が掛かってる箇所があるかもしれない。



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