- RouteLLMは、LMSysとAnyscaleが協力して開発した、LLMルーターのサービングと評価のためのフレームワーク
- 主な機能:
- OpenAIクライアントを置き換え、簡単なクエリを安価なモデルへルーティング
- 学習済みルーターの提供、新しいルーターへの拡張、ベンチマークでのルーター性能比較など
モデル対応
- GPT-4とMixtral 8x7Bに加え、
strong-modelとweak-model引数を変更することで、さまざまなモデルの組み合わせを利用可能
- LiteLLMを活用し、多様なオープンソースモデルおよびクローズドモデルでchat completionsをサポート
- OpenAI互換エンドポイントも利用可能
- さまざまなモデルプロバイダーのAPIキー設定方法を提供
開発の動機
- コストと機能が異なるLLMをデプロイする際、高品質な応答のために最も強力なモデルを使うと高コストになり、安価なモデルを使うと品質が低下する可能性がある
- LLMルーティングは、簡単なクエリを安価なモデルに送ることで、品質を維持しながらコストを削減するソリューションを提供
- 各リクエストには、コストと品質のトレードオフを決めるcost thresholdが関連付けられる
サーバー
- RouteLLMは、さまざまなルーティング戦略に従ってリクエストをルーティングするための軽量なOpenAI互換サーバーを提供
--routersで利用可能なルーター一覧を指定し、--configでルーター設定ファイルのパスを指定
- ほとんどの場合、強力かつ軽量な
mfルーターの使用を推奨
- クライアントは
modelフィールドにルーター名とthresholdを指定してリクエストする
Threshold補正
- ルーティングに使われるthresholdは、コストと品質のトレードオフを制御する
- ルーターの種類や受け取るクエリに応じて意味のあるthreshold範囲が異なるため、サンプルクエリと強いモデルに送るクエリの比率を使って補正するのが望ましい
- デフォルトではChatbot Arenaデータセットに基づくthreshold補正をサポート
- 実際に受信するクエリの種類に近いデータセットで補正するのが望ましい
評価
- RouteLLMには、ベンチマーク上でさまざまなルーティング戦略の性能を測定するための評価フレームワークも含まれる
--routersで評価対象のルーター一覧を指定し、--benchmarkで評価する特定ベンチマークを指定
- 評価結果はコンソールに出力され、ルーター性能グラフも生成される
- デフォルトではGPT-4とMixtralが評価に使用されるモデルペアであり、
--strong-modelと--weak-modelフラグで変更可能
ルーター
- RouteLLMは、
gpt-4-1106-previewとmixtral-8x7b-instruct-v0.1のモデルペア向けに学習された4つのルーターを提供
- ルーター一覧:
mf, sw_ranking, bert, causal_llm, random
- これらのルーターは他の強い/弱いモデルペアにもよく一般化するため、モデルペアを入れ替えても再学習は不要
GN⁺の見解
- RouteLLMは、多様なLLMを効率よく活用できる有用なフレームワークに見える。特に、簡単なクエリを安価なモデルへルーティングして、品質を保ちながらコストを削減できる点が魅力的
- 提供されるルーターがさまざまなモデルペアにうまく一般化する点も良い。ユーザー自身がルーターを学習させなくてよいという利点がある
- Threshold補正機能も有用に見える。ユーザーの実際のクエリデータを活用して最適なthresholdを見つけられる
- 評価フレームワークによって、さまざまなルーターやベンチマークの性能を簡単に比較できる点も利点
- ただし、フレームワークを使うには強いモデルと弱いモデルのAPIキー設定などの事前準備が必要。初心者にはやや導入のハードルがあるかもしれない
- 類似機能を提供する別プロジェクトとして、Multi-modelというオープンソースがある。複数の言語モデルを単一APIに統合し、ルーティングする機能を提供する
まだコメントはありません。