FLUX.1 [dev] fp8 versions - Scaled fp8/fp8_e4m3fn/fp8_e5m2

詳細

ファイルをダウンロード

モデル説明

更新:

私は、CivitaiにホストされていないFLUX.1[dev]の他のfp8バージョン、特にfp8_e4m3fnとfp8_e5m2を追加しました。これは、元々投稿したスケール済みfp8 FLUX.1[dev]バージョンに加えたものです。

fp8_e4m3fnとfp8_e5m2モデルは、もともとKijaiさんがHugging Faceのこちらにアップロードしたもので、E5M2とE4M3はわずかに異なる結果をもたらすが、どちらが優れているかを判断するのは難しい/不可能であると記載されています。E4M3は、人々が通常「FP8」と言うときに指しているものです。

以下は、このReddit投稿からのfp8_e4m3fnとfp8_e5m2に関する情報です:

FPは「浮動小数点」を意味します。任意の符号付き浮動小数点数は、以下の3つの部分で構成されます:

  1. 符号ビット

  2. 仮数

  3. 指数

したがって、数値 = 符号 × 仮数 × 2^指数

E5M2とは、仮数に2ビット、指数に5ビットを使用することを意味します。E4M3とは、仮数に3ビット、指数に4ビットを使用することを意味します。

E5M2はE4M3よりも広い範囲の数値を表現できますが、その代わりに数値の精度は低くなります。ただし、表現可能な異なる数値の種類はどちらも同じで、256個の異なる値です。したがって、0付近でより高い精度が必要な場合はE4M3を、最小値/最大値付近でより高い精度が必要な場合はE5M2を使用します。

どの形式を選択するかの最良の方法は、モデル内の重み値の分布を分析することです。重みが0に近い傾向がある場合はE4M3を、そうでない場合はE5M2を使用します。

元の記述:

私はこのモデルがここにアップロードされているのを見たことがありません。

これは、comfyanonymousさんがHugging Faceにアップロードしたスケール済みfp8 FLUX.1[dev]モデルです。通常のfp8モデルよりも良い結果をもたらし、fp16に非常に近い品質を実現しますが、Qクオンティズドモデルよりはるかに高速に動作します。TorchCompileModelノードと互換性があります。注意:何らかの理由で、このモデルはReduxや一部のControlNetモデルとは動作しません。

fp8スケールチェックポイントは、40シリーズ/Ada/H100などでのfp8行列乗算を使用しながら最高品質を達成することを目的として特別に調整されたやや実験的なものです。したがって、Q8_0よりも品質は低くなる可能性が高いですが、ご使用のハードウェアがfp8演算をサポートしている場合、推論速度は速くなります。

HuggingFaceからの情報:

テスト用スケール済みfp8 FLUX devモデル。ComfyUIの最新版と併用し、weight_dtypeをデフォルトに設定してください。ComfyUI/models/diffusion_models/フォルダに配置し、「Load Diffusion Model」ノードで読み込んでください。

このモデルで生成された画像

画像が見つかりません。