ローカル言語モデルと補助タスクをAMD Strix Halo 1台で実行するhalogen-flash-serverが、2026年10月20日に0.18.12をリリースした。プロジェクトの発表によると、読み込み済みの補助モデルの起動待ちが短縮され、複数の写真を合成する編集が可能になった。Flashチェックポイント(モデルの重みファイル)は変更されていない。

4枚の画像編集とNPUの起動待ち短縮

複数画像の編集。写真内の物体を別の写真に入れるような編集に、複数の画像をまとめて送信できる。/v1/images/editsがimageパートを1~4個受け付けるようになり、プロンプトでは「image 1」「image 2」のように送信順で画像を指定する。機能要望はGitHubイシュー#179に寄せられ、要望者はある写真の物体を別の写真に配置する機能を求めていた。

NPUの起動待ち短縮。すべてのNPUモデルのファイル群が高速起動経路に対応して再配布された。プロジェクトの発表によると、読み込み済み(warm)の状態でのリクエストは約2%(1024x1024画像)~36%(写真への質問)高速化し、回答は変わらない。新しいファイルには0.18.12以上が必要だ。

キャッシュコピー中のGPU停止を削減。コピーは標準で、移動しないよう固定した中間領域であるステージングバッファを経由する。ホストがGPUに接続されたメモリを移動するとすべてのGPU作業キューが停止するが、新しい経路ではプロジェクトのテストでこの損失時間を半減した。

表:NPUによる画像生成・編集の所要時間

条件:編集出力は512×512で、入力写真が1枚の場合のみ1024×1024を指定可能

単位:秒(プロジェクトのドキュメントに記載された概算値)

4枚の画像編集とNPUの起動待ち短縮
NPU画像処理(flux2-klein-4b)所要時間
画像生成 512×512약 3
画像生成 1024×1024약 10
画像編集、512×512(写真1枚)약 5
画像編集、512×512(写真2枚)약 7.5
画像編集、512×512(写真3枚)약 10
画像編集、512×512(写真4枚)약 12.5
画像編集、1024×1024(写真1枚)약 12.5

プロジェクトのドキュメント(docs/NPU.md)の概算値では、写真を1枚追加するごとに時間が均等に増え、入力は最大4枚となる。maskは非対応のため、一部分だけを修正する編集はプロンプトで説明する必要がある。

同じマシンでプロンプト処理・生成速度がわずかに向上

プロジェクトはRyzen AI Max+ 395(128GB)2台にモデルを1つずつ載せ、標準設定(キャッシュ有効、推論過程の生成無効)で測定した。benchは候補トークンを事前生成してまとめて検証するドラフティングと、各段階で最も確率の高いトークンを選ぶグリーディ方式で10個のプロンプトを試した。平均生成速度はv2が64.0→66.1 tok/s、ht43が65.1→66.1 tok/sだった。

表:v2のプロンプト処理速度、0.18.11と0.18.12

条件:v2、約85Wの持続パッケージ電力、同一マシン・セッションでのA/B

単位:トークン/秒

v2のバージョン別プロンプト処理速度 (トークン/秒)キャッシュ無効、8,192トークン: v2 0.18.11 1,833, v2 0.18.12 1,877; キャッシュ無効、32,768トークン: v2 0.18.11 1,783, v2 0.18.12 1,822; キャッシュ有効(コールド)、8,192トークン: v2 0.18.11 1,746, v2 0.18.12 1,787; キャッシュ有効(コールド)、32,768トークン: v2 0.18.11 1,808, v2 0.18.12 1,849v2 0.18.11v2 0.18.12キャッシュ無効、8,192トークン1,8331,877キャッシュ無効、32,768トークン1,7831,822キャッシュ有効(コールド)、8,192トークン1,7461,787キャッシュ有効(コールド)、32,768トークン1,8081,849
v2のバージョン別プロンプト処理速度 (トークン/秒)
同じマシンでプロンプト処理・生成速度がわずかに向上
測定条件v2 0.18.11v2 0.18.12
キャッシュ無効、8,192トークン1,8331,877
キャッシュ無効、32,768トークン1,7831,822
キャッシュ有効(コールド)、8,192トークン1,7461,787
キャッシュ有効(コールド)、32,768トークン1,8081,849

表:ht43のプロンプト処理速度、0.18.11と0.18.12

条件:ht43、約120Wの標準設定、同一マシン・セッションでのA/B

単位:トークン/秒

ht43のバージョン別プロンプト処理速度 (トークン/秒)キャッシュ無効、8,192トークン: ht43 0.18.11 1,762, ht43 0.18.12 1,835; キャッシュ無効、32,768トークン: ht43 0.18.11 1,808, ht43 0.18.12 1,865; キャッシュ有効(コールド)、8,192トークン: ht43 0.18.11 1,743, ht43 0.18.12 1,815; キャッシュ有効(コールド)、32,768トークン: ht43 0.18.11 1,809, ht43 0.18.12 1,864ht43 0.18.11ht43 0.18.12キャッシュ無効、8,192トークン1,7621,835キャッシュ無効、32,768トークン1,8081,865キャッシュ有効(コールド)、8,192トークン1,7431,815キャッシュ有効(コールド)、32,768トークン1,8091,864
ht43のバージョン別プロンプト処理速度 (トークン/秒)
同じマシンでプロンプト処理・生成速度がわずかに向上
測定条件ht43 0.18.11ht43 0.18.12
キャッシュ無効、8,192トークン1,7621,835
キャッシュ無効、32,768トークン1,8081,865
キャッシュ有効(コールド)、8,192トークン1,7431,815
キャッシュ有効(コールド)、32,768トークン1,8091,864

プロンプト処理は約2.1~4.2%、生成はv2で約3.3%、ht43で約1.5%高速化した。リリースノートは、複数のドラフトをまとめて検証する段階の処理削減を改善点に挙げている。各表では同じマシンのバージョン間の変化のみを比較した。

新しいイメージタグでNPUファイルを更新

0.18.12のイメージのHALOGEN_DOWNLOADが新しいNPUファイルを取得する。以下は画像モデルを読み込んだ後に2枚の写真を合成する原文の例で、2枚目の写真の猫を1枚目の写真のベンチに置くよう求めている。

curl -s localhost:8731/v1/images/edits -F model=flux2-klein-4b -F "image[]=@scene.png" -F "image[]=@cat.png" \
  -F prompt="put the cat from image 2 on the bench in image 1, matching its light" -F seed=7

補助タスクを活用するチームに有利だが、メモリ・電力は共有

Flashモデルと併せて分類・埋め込み・リランキング・検閲・ストリーミングガード・音声認識・画像生成・編集を利用していたチームが最も恩恵を受ける。ただし、NPUが実際に動作している間はFlashモデルが少し遅くなる。2つのエンジンがメモリバスとチップの電力予算を共有するためだ。

プロジェクトのリリースノートによると、出力は温度0で0.18.11とバイト単位で一致する。

性能改善と新たな観測指標が必要ならイメージタグを0.18.12に変更し、画像編集も使うならHALOGEN_NPU_MODELSにflux2-klein-4bを追加すればよい。