このプロジェクトについて

LLM Routerは、FastAPIベースのバックエンドサービスであり、ユーザーのプロンプトをOpenAI、Google Gemini、Mistralのうち最も適した大規模言語モデル(LLM)へと動的にルーティングするよう設計されています。パフォーマンスだけでなく、有用性・コスト・信頼性をバランスよく評価するスコアリングシステムを用いてモデルを判定します。 3つのルーティングモードに対応しています:完全自動(システムが最適モデルを選択)、セミ自動(ユーザーがプロバイダーを選定、システムがモデルを選択)、手動(ユーザーが両方を指定)。また、Mistral埋め込みとコサイン類似度検出に基づくRetrieval-Augmented Generation(RAG)をサポートし、.txt、.md、.pdfファイルに対応しています。/uploadエンドポイントでドキュメントのアップロード、/clear-dataエンドポイントでデータの削除が可能です。各ユーザーは文脈対応応答のための2ターン会話メモリを保持します。 アーキテクチャは意思決定と実行を分離しており、ルーティングロジックがモデル選択を担当し、クライアントモジュールが実際のAPIコールを処理します。トークン制限を超えたモデルはディス qualifizされます。レスポンスにはプロバイダー、モデル名、信頼度、使用トークン数、コスト見積もりなどのメタデータが含まれます。WebSocket対応によりリアルタイムストリーミングも可能です。 将来の計画としては、フィードバック駆動のチューニング、ローカルLLM統合、A/Bテストが挙げられています。本プロジェクトは現在も活発に開発中で、意図認識型ルーティング、コスト最適化、RAGなどの中核機能はすでに実装済みです。