AI・機械学習
Show HN: Astraレベルのパフォーマンスを持つコーディングエージェントのためのオープンソースモデルルーティング
Show HN: Open-source model routing for coding agents at Astra-level performance
要約
Astraというコーディングエージェントのパフォーマンスを凌駕することを目指し、オープンソースのモデルルーター「Weave Router 2.0」が発表されました。このルーターは、複数の大規模言語モデル(LLM)をインテリジェントに切り替えることで、コストを抑えつつ処理速度を向上させます。新しいアーキテクチャ、大規模なトレーニングデータセット、およびキャッシュ管理の改善により、同等の精度でコストを半減し、処理速度を2倍以上に向上させることに成功しました。
全文翻訳
数ヶ月前、私たちは単一のモデルよりもアンサンブルアプローチで優れたパフォーマンスを発揮できると考え、コーディングエージェント用のモデルルーターの構築を開始しました。最近、そのマイルストーンを達成したので、どのようにしてそれを実現したかについてお話ししたいと思います。
まず、簡単な説明です。Weave Router(https://github.com/weave-os/router)は、あらゆるコーディングエージェント(例:Claude CodeやCodex)にプラグインし、LLM間をインテリジェントに切り替えます。例えば、Astraは難しいデバッグや複雑なシステム設計タスクを処理し、Deepseek v4 Flashは簡単なフロントエンドの更新を処理します。
本日発表するのは、Weave Router 2.0と呼ぶ新しいルーティングモデルです。2.0をTerminal Bench 4.0とSWE AtlasでGPT-6 Astraと比較ベンチマークしました。両方のベンチマークで、ルーターはAstraと同等のパス率を達成しました。Terminal Benchでは、ルーターはAstraのコストの52%で、タスクを2.2倍速く完了しました。SWE Atlasでは、ルーターのコストはAstraの54%で、2.5倍速く実行されました(全結果は当社のウェブサイトhttps://weaveos.com/routerでご覧ください!)。
モデルの機能、コスト、キャッシュ認識などを考慮して効果的にルーティングするようにモデルをトレーニングすることは、非常に難しい問題であることがわかりました!この数ヶ月でこれほど大幅に改善できた3つの方法についてお話ししたいと思います。1) 新しいアーキテクチャ、2) より大きなトレーニングデータセットサイズ、3) よりスマートなキャッシュエビクション影響計算です。
1) 新しいアーキテクチャ。当初のアプローチは、多くの事前知識を持たないRLモデルを使用していました。RLは依然として物語の重要な部分ですが、ルーティング決定の空間を完全に探索するコストは非常に高いため、パフォーマンスを大幅に向上させるショートカットを取りました。
ルーティング問題の検索空間の大きさを考えてみてください。典型的なコーディングエージェントセッションでは、約100回のエージェントターン(つまり100回のLLM API呼び出し)があります。技術的には、モデルを選択する機会は100回あります。約10個のモデルのローテーション(もちろん、もっと多くのモデルがありますが、パレート支配されているモデルはすべて削除できます)があると仮定すると、そのセッションを通過するパスは10^100通りあります。私たちはそれらすべてを探索することはできません!だからこそ、この空間を縮小するための巧妙なトリックが非常に重要なのです。
特に、セッション状態をトレースするために隠れマルコフモデル(HMM)をトレーニングし、次に分類器がセッションを類似モデルのいくつかのバケットのいずれかにマッピングします。HMMを使用することで、セッションが現在どこにあるかだけでなく、*どのようにしてそこに到達したか*を評価できます。この情報を取り込むことで、バケット選択のパフォーマンスが大幅に向上しました。これは、単純な分類器には非常に似ているように見える2つのセッションが、このHMMアプローチによってはるかにうまく区別できると信じているためです。
このHMM + 分類器を使用して最初にバケットを選択することで、与えられたセッションを合理的に処理できるほとんどのモデルを除外することにより、探索する空間が大幅に縮小されます。この再アーキテクチャは、パフォーマンスを最も大きく向上させた要因でした。
2) より大きなトレーニングデータセットサイズ(技術的にはあまり面白くありませんが、物語の重要な部分です)。最先端のLLMを使用して、より大きく多様なコーディングエージェントセッションのセットにラベルを付けることで、1)で議論した2つのモデルをより良い状態にブートストラップすると同時に、RLのためのより豊かな報酬信号を提供することができました。
3) よりスマートなキャッシュエビクション影響計算。うまくルーティングする(お金を節約したい場合)上で最も難しいことの1つは、モデルキャッシュをインテリジェントに使用することです。私たちは、モデルを切り替える(そして異なるキャッシュを埋めるために高い一時費用を支払う)ことの期待値をはるかに正確に計算できるサブシステムを構築しました。これにより、コストのかかる不要な切り替えをより多くのケースで回避できるようになり、それでもメリットがコストを上回る場合には切り替えを行うことができます。ここが、コストに関する改善のほとんどがもたらされた場所です。
私たちはまだ改善の余地がたくさんあります(Astra/Fableに常に勝てるようになるまで休むつもりはありませんが、タイするだけでは満足しません!)。しかし、最先端モデルのパフォーマンスに匹敵することは、私たちのルーティングモデルにとって大きなマイルストーンであり、私の意見では、モデルのアンサンブルは単一のモデルが決してできないことよりも優れていることができるという最初の仮説を検証しています。
私たちのルーターはオープンソース(https://github.com/weave-os/router)なので、誰でも試すことができます。または、ホストバージョン(https://weaveos.com/router)を使用することもできます。