xiaol/wkvm
Inference for hybrid LLMs: Gemma, RWKV, and all kinds of hybrids.
何を解決するか
WKVM は、線形およびハイブリッド線形モデル(RWKV-7、GDN、Mamba2 など)向けに設計されたモデル状態用のハイパーバイザーです。従来のページ化された KV ブロックチェーン(長文コンテキストではメモリを大量に消費する)を、リクエストごとの固定サイズの状態スロットに置き換えます。これにより、リクエストごとのメモリ使用量が一定で非常に小さくなり、スケジューリングが簡素化され、高度な状態管理が可能になります。
動作方法
複雑な KV キャッシュを管理するのではなく、WKVM はモデル状態を仮想マシンとして扱います。各リクエストに対して固定サイズの状態スロットを割り当て、エンジンが状態の作成、スナップショット、フォーク、休止、再開などの操作を実行できるようにします。ハイブリッドモデルの場合、フルアテンション層は単純なページ化されたゲストプールで処理されます。また、「永続的状態 API」と呼ばれる機能により、状態ハンドルを名前付き、バージョン管理可能、かつ GPU、ホストメモリ、NVMe などの異なるストレージ層間でエクスポートできます。
対象ユーザー
再帰的または線形アテンションモデルを扱う開発者や研究者で、高スループットの推論、効率的な状態管理、そして最小限のメモリオーバーヘッドで数千もの同時セッションを処理できる必要がある人向けです。
特徴
- 状態ネイティブ推論:状態を移行、フォーク、休止できる一級オブジェクトとして扱います。
- 永続的状態 API:GPU、ピン止めされたホストメモリ、NVMe など、複数のストレージ層に保存可能な名前付き、バージョン管理可能、変更可能な状態ハンドルをサポートします。
- 高スループット:特定の線形/ハイブリッドモデルワークロードにおいて、vLLM や SGLang と比較して顕著なスループット向上を実現しています。
- 効率的なスケジューリング:無料スロット数に基づく正確なアドミッションを実現する、フェーズなしの連続バッチスケジューラを使用しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch