ComfyUI Extension: ComfyUI-Imatrix

Authored by laksjdjf

Created

Updated

1 stars

This is an experimental node for generating an imatrix file to reduce quantization errors in GGUF files used with ComfyUI-GGUF.

Custom Nodes (0)

    README

    ComfyUI-Imatrix

    ComfyUI-GGUFで利用するGGUFファイルの量子化誤差を小さくするための、imatrixファイルを作るための実験的ノードです。

    ↓Flux-dev Q2_Kでの実験

    モデルはここにおいてます。 ああ

    使い方

    • MODELをImatrixUNETLoaderノードで読み込みます。
    • 何かしらのワークフローを実行します。
    • SaveImatrixノードでimatrixをセーブできます。
    • ファイルはこのフォルダのimatrix_dataに保存されます。

    SaveImatrixノードにあるImage入力は実行順をコントロールするためのものであり使われませんが、 生成IMAGEをつけるといいタイミングで実行してくれそうです。

    モデルをロードしてから、実行のたびにimatrixが更新され続けるはずなので、 何度か実行した結果を平均したい場合は、最後の実行時にだけセーブノードを追加するといいと思います。

    量子化

    ComfyUI-GGUFのtoolsにある説明文通りGGUFファイルをつくって、 量子化時に--imatrix <imatrix_file>を追加するとできます。

    注意

    GGUFファイルのテンソルは1次元目が256の倍数になるよう変換されるため、一部のモデルではconvert.pyを買い替える必要があると思います。 ただし256の倍数でないとQX_K量子化ができないので、解決策もとむ。

    またConv層があるモデルもconvert.pyの書き換えが必要です。カーネル次元をflattenして2次元テンソルにしてください。