github.devotd.
新着推論・サービング

andrei-borcea/liyab — スマートフォン向け GGUF 推論エンジン

andrei-borcea/liyab は、RAM より大きい GGUF モデルをフラッシュからストリーミングしてスマートフォンで実行する C++20 推論エンジンです。

リポジトリ情報andrei-borcea/liyab ↗

🔥 Run large open language models on your phone. A C++20 GGUF inference engine that streams models larger than RAM from flash, paces itself by the device's thermal forecast, and powers a private on-device assistant. Android · iOS · macOS · Linux.

スター
★ 7
フォーク
0
言語
C++
ライセンス
Apache-2.0
原文を見る ↗GitHub で見る ↗

andrei-borcea/liyab は、RAM より大きい GGUF モデルをフラッシュからストリーミングし、スマートフォンで実行する C++20 推論エンジンです。README は Android と iOS に加えて macOS と Linux もサポート対象として挙げています。プロジェクトは Apache-2.0 ライセンスで公開されています。このリポジトリは、特定のバージョンのリリースではなく、スマートフォンのメモリ制約と発熱制約を扱うプロジェクト紹介にあたります。

README によると、Snapdragon 8 Elite で 22 GB の Qwen3.6-35B-A3B を実行したとき、コマンドラインでは毎秒約 9〜10.5 トークン、アプリでは 7.5〜9.4 トークンとなります。CPU では NEON、SDOT、i8mm を使い、GPU 側には Metal と Vulkan のバックエンドを用意しています。OS の余裕熱の予測値を読み取り、デバイスの発熱に合わせてクロックとトークン生成速度を調整する方式です。README は、GGML のテンソル形式とアーキテクチャを llama.cpp のリファレンスデコーダとビット単位で一致させたと説明しています。ルーターが次のブロックで使うエキスパートを先読みする機能と、キーの量子化誤差を減らすチャネル単位のキースケーリングも示しています。

README には、ルーターのプリフェッチヒット率が 79〜83% であり、チャネル単位のキースケーリングによって Q8_0 キーの平均 KL が 0.070 から 0.0018 に下がったと記載されています。ビルドは CMake と ctest を使い、投機的デコードにはサフィックスドラフト方式と、デバイス上でドラフト数を調整する方式が含まれます。ただし、性能と精度の数値は作者自身の計測によるもので、独立に検証された結果は FACTS にありません。したがって現在確認できる根拠は README に限られ、実際のデバイス上の性能は別途検証する必要があります。