Z-Image-Turbo for onw-Image (FP8, Intel NPU / Panther Lake)

日本語 | English

Tongyi-MAI/Z-Image-Turbo を、Intel NPU で動かすアプリ onw-Image 用に変換したモデルです(Panther Lake 向け FP8 版)。単体では使えません。 onw-Image を入れると、このモデルも自動でダウンロードされます。

irm https://huggingface.co/ryugyosoft/onw-image/resolve/main/install.ps1 | iex

内容

フォルダ・ファイル 中身
dit2/ DiT(画像生成本体、6B)。OpenVINO IR、FP8(e4m3、重み・活性化とも)。全層共通の形(30 層+refiner 4 層。種類ごとに同じグラフで、重みだけが違う)
dit2_vec.npz 層ごとの正規化用ベクトル(ホスト側で使用)
te_seg/ テキストエンコーダー(Qwen3-4B の 35 層)。INT8 重み、5 層ずつ 7 グラフ。RoPE は NPU で正しく計算できる行列積の形(0.2)
vae/ VAE デコーダー(FLUX VAE)、fp16
host/ ホスト側で計算する小さな部分(時刻埋め込み、変調、最終層など)と、トークンの埋め込み表(INT8+行ごとの尺度、0.2 で 778 MB → 389 MB)
tokenizer.json トークナイザー
  • 対象:Panther Lake(Core Ultra シリーズ 3、NPU 5010 以降)、Windows 11。FP8 を NPU がそのまま計算できるのは NPU 5000 以降です
  • FP8 なのは DiT(5.7 GB)です。テキストエンコーダー(3.3 GB)は INT8 版と同じ INT8 重みです
  • 初回起動時に NPU 向けのコンパイル(約 8 分)が走り、結果はこのフォルダの npu_blobs3/ に保存されます(重みを持たない圧縮形式で合計約 8 MB。全層で 1 つのグラフを使い回します)
  • 1024×1024、9 ステップで 1 枚約 48 秒(onw-Image 0.3、2 枚目以降。テキストエンコーダー・DiT・VAE の合計)

変換について

  • 重み・活性化とも FP8(e4m3)。画像トークンは静的な尺度、プロンプトのトークンはトークンごとの尺度
  • 全層で同じグラフ(0.2):層ごとに違う値をグラフの外へ出しています。画像側の活性化の尺度はホスト側の変調ベクトルと 重みに折り込み、重みの尺度は種類ごとに全層共通の 2 のべき乗(出力チャネルごとの尺度と同じ誤差 2.7%)、 プロンプト側の補正係数は実行時の入力です。w1 と w3 は別の畳み込みです(1 つにまとめると w3 側が FP8 の下限に沈むため)
  • 画像側とプロンプト側の畳み込みは 1 つの重みを共有します(ファイルにも NPU 上にも重みは 1 組)
  • アテンションはマスクを使わず、詰め物のトークンの k・v を 0 にし、v に「本物のトークン」の印の列を足してその値で割ります
  • fp32 の元モデルとの比較(同じノイズから、NPU 5010 上):ステップごとの誤差 19% / 10% / 3.5%(1・5・9 ステップ目)。テキストエンコーダーまで含めた画像全体では PSNR 16.3 dB
  • テキストエンコーダー(0.2):NPU 上の出力と fp32 の元モデルとの差 1.3〜1.5%(0.1 は RoPE の計算が NPU で崩れて 8.2%)

ライセンス

元のモデルと同じ Apache License 2.0 です。元モデル:Tongyi-MAI/Z-Image-Turbo(テキストエンコーダーは Qwen3-4B、 VAE は FLUX VAE を含みます)。

Downloads last month
42
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for ryugyosoft/Z-Image-Turbo-onw-image-fp8

Finetuned
(173)
this model