Magnitude、エージェント推論をllama.cppより最大2倍高速化
Launch HN: Magnitude (YC S25) – Self-optimizing inference engine for agents
Magnitudeは、エージェント向けのオープンソース推論エンジン。デバイス上でカーネルをコンパイル・チューニングするため、llama.cppより最大2倍高速に動作する。Apple Silicon、NVIDIA、AMD、CPUのみでも利用可能。既存のエージェントにワンクリックで接続でき、トークンコストなし、データはマシン外に出ない。Apache 2.0で公開。
Magnitudeは、あなたの正確なハードウェアに合わせて自己最適化するエージェント向けのオープンソース推論エンジンです。
HNでの議論
58- kmike84
UIの速度推定値はどのくらい正確なんでしょうか?というのも、Qwen 3.8(Q8)についてUIに表示されている速度の数字がかなり低く見えるからです:
あなたのマシンでの推定速度
コンテキストトークン トークン/秒
25 000 17
50 000 16
75 000 16
262 144 12
262Kの数字はまあ許容範囲ですが、より小さいコンテキストサイズ(<128K)だと、qwen3.8 q8(mac m5 max)で実際のmtplxセッションから得ている数字の約2倍遅いです。
これは最適化の不足なのか、数字が間違っているのか、それともベンチマークのアーティファクト(例えば、通常のエージェントセッションよりもspec decodingにとって難しい何か)なのでしょうか?
- happybox2016
llama.cppの2倍って、何で?M3 Maxで?llama.cppのmetalカーネルはすでにメモリ帯域を飽和させてるよ。実際のエージェントのボトルネックはシングルストリームのtok/sじゃない——24GBのVRAMで5つ以上の同時128kコンテキストを扱うKVキャッシュだ。実際にローカルでマルチエージェントを動かしてる人ってどれくらいいる?A) シングルセッションのみ B) 2〜3エージェント C) 5以上 D) 諦めた
- lxe
自分のローカル推論ボックスでは、llama.cppのチェックアウトの中で常時codexスレッドを開いていて、定期的に現在保留中のllama.cppのPRを見てみたり、最新のMTP、Dflash、その他の予測やアテンションの最適化について調べたり、最新のモデルの量子化やファインチューニングについて調べたり、localLlamaのRedditスレッドを眺めたりして、要するにフロンティアを一通りスイープしている。
その後、最新のllama.cppをリビルドし、テストすべき関連PRを拾ってきて、ベンチマークを実行し、アップグレードを確定させ、どのモデル、バリアント、あるいは別のファインチューニングを動かすべきかを検証する。
時折、自分自身で最適化を行ってコミットすることもあるが、それは後にPRやマージされたコードに取って代わられ、結局モデル自身の最適化の方向性が正しかったことが裏付けられる。
- kmike84
これは良いアイデアだと思う。ただ、速度でllama.cppを打ち負かすのはハードルが低い :)
良いベースラインだとは思うけど、少なくともMacではいつも何かずっと速いものや、メモリ要件がより良いものがあって——君が言ったようにds4、omlx、mtplxなどだ。ローカルLLMを本気で使うなら、より最適化されたエンジンのどれかを使わない理由はほとんどないように思える。
エンジンで観察した主な失敗モードは3つ:
* 利用可能な最良のspec decodingを使っていない
* KVキャッシュにVRAMを使いすぎている(例えば、ds4ではKVキャッシュがほとんど何も使わなかったのに、deepseekモデルではunsloth/llama.cppで大量のVRAMを消費していた)
* 大きなコンテキストサイズでの性能低下——4Kや32Kでのベンチマークは素晴らしいが、現実的な100〜200Kでは、いくつかの馬鹿げたベースラインよりも遅い
- singh_abinashi
これが実際のエージェントワークロードで、合成ベンチマークと比べてどう機能するのか気になります。自分の経験では、ツール使用のループが関わるとエージェントのコストとレイテンシのプロファイルは大きく変わります。というのも、トークン分布が単一プロンプトよりもずっとバースト的になるからです。マルチステップのツール呼び出しトレースで評価しましたか、それとも主にシングルターンですか?