AI・機械学習
Magnitude (YC S25) – エージェント向け自己最適化推論エンジン
Launch HN: Magnitude (YC S25) – Self-optimizing inference engine for agents (github.com)
要約
Magnitudeは、ローカルハードウェア上でエージェントの推論を高速化するために自己最適化する、Rust製のオープンソース推論エンジンです。既存のエンジンが抱えるパフォーマンスのトレードオフを解決し、オンデバイスコンパイル、動的メモリ割り当て、ハイブリッドページドアテンションなどの機能により、llama.cppと比較して最大2倍の速度を実現します。将来的には、エキスパートストリーミング、カーネルコンパイラ、マルチデバイス利用などの機能拡張が予定されています。
全文翻訳
HNの皆さん、AndersとTomです。私たちはMagnitudeを開発しています。これは、エージェント向けの推論エンジンで、お使いのハードウェア上で可能な限り高速に実行するために自己最適化されます。Mac、Linux、Windowsのあらゆるハードウェアで動作し、llama.cppよりも最大2倍高速です。
私たちは二人ともソフトウェアエンジニアで、以前は4k以上のGitHubスターと10万ダウンロードを達成したオープンソースのブラウザエージェントを開発しました。ローカルモデルでそれを実行したいという思いが強くなりましたが、私たちのユースケースに合う推論エンジンが見つかりませんでした。
今日の推論エンジンは、すべてパフォーマンスのトレードオフを抱えています。それらは以下のいずれかです。
- シングルセッションのパフォーマンスを犠牲にして、データセンターハードウェアでのバッチ推論向けに構築されている (vLLM, SGLang)
- 特定のハードウェアに最適化するのではなく、広範な互換性のために設計されている (llama.cpp, Ollama)
- 特定のハードウェアやモデルに特化しているが、エンジンの完全性が欠けている (oMLX, ds4)
さらに、ローカルでエージェントを実行するために設計されたものはありません。セッションは長く、同時に複数実行されることが多く、他の作業のためにコンピューターを使いたい場合もあります。
Magnitudeは、お使いのハードウェアでの最大パフォーマンスとローカルエージェントの実行のために構築されています。
- オンデバイスコンパイルとチューニング: カーネルは柔軟なパラメータで記述されており、モデル実行前に実際のデバイスでチューニングされます。これにより、ハードウェア固有のカーネルと同じパフォーマンス上限を維持しながら、広範なハードウェア互換性を実現します。
- ベストアーキテクチャへの注力: 最も人気のあるオープンウェイトファミリーのために、チューニング可能で高効率なカーネルを記述しています。これにより、パフォーマンスを犠牲にして過度に一般化することなく、ハードウェアまたはモデルに特化したエンジンのパフォーマンスに匹敵し、それを超えることができます。
- 動的メモリ割り当て: Magnitudeは、モデルウェイトを保持するために必要なメモリのみを事前に確保します。エージェントセッションが長くなるにつれて、メモリヒープは動的に増加し、エージェントが停止すると解放されます。エージェント実行中も、ハードウェアは他の作業に使用できます。
- ハイブリッドページドアテンション: SGLangのようなエンジンから最高のアイデアを借用し、同時セッションがプレフィックスキャッシュを共有できるようにしますが、シングルセッションのパフォーマンスが低下しないようにメモリ隣接性を最適化します。
Magnitudeは完全にオープンソース(Apache 2.0)です。カスタムGPUカーネルランタイムとオートチューナーを含むRustで構築しました。学術界(例: FlashAttention, FlashInfer, TurboQuant)や他のエンジン(例: SGLang radix attention)からの最高の推論イノベーションに着想を得て、パフォーマンスの天井に到達しています。
Qwen 3.6 35B A3B (4ビット)、64kコンテキスト、スペキュラティブデコーディングなしで、llama.cppと比較したベンチマーク結果:
Metal (Mac M4 Pro 48 GB)
- デコード速度が92%向上 (30トーク/秒 → 57トーク/秒)
- プリフィル速度が9%向上 (466トーク/秒 → 507トーク/秒)
- エージェントあたりのメモリ使用量が28%削減
CUDA (DGX Spark)
- デコード速度が19%向上 (49トーク/秒 → 58トーク/秒)
- プリフィル速度が23%向上 (2,033トーク/秒 → 2,507トーク/秒)
- エージェントあたりのメモリ使用量が27%削減
Magnitudeはデスクトップアプリとして提供され、既存のエージェント(Pi, OpenCode, Hermes, Codexなど)と簡単に接続できます。エージェントが必要なときにモデルをオンデマンドで自動的に実行し、非アクティブ時にはシャットダウンします。
その様子はこちらをご覧ください: https://www.youtube.com/watch?v=0qE8BWEZu7o
Magnitudeをさらに進化させ、同じハードウェアでより大きなモデルを実行できるようにし、パフォーマンスを継続的に向上させていくことに興奮しています。私たちの計画には以下が含まれます。
- エキスパートストリーミング: エキスパートをRAMまたはディスクに保存し、必要に応じてロードします。これにより、GPUに収まらないような大きなモデルを実行できます。
- カーネルコンパイラ: 現在のカーネルは、いくつかのパラメータをハードウェアに合わせてチューニングします。これをさらに進め、カーネルの融合方法や使用する実装を自動的に選択するカスタムコンパイラを開発することで、ハードウェアへの適合性をさらに高めることができます。
- マルチデバイス利用: CPU、GPU、RAM、ディスクなど、システム上のすべてのハードウェアを最大限に活用します。これらを検出し、最適なモデルレイアウトを自動的に解決します。
より多くの方に試していただき、フィードバックをいただけると嬉しいです。お気軽にコメントしてください。一日中対応します!