RAGルーティング — 1つのAPI、複数のアーキテクチャ
RAGルーティング
1つのAPIエンドポイント。10種類の検索アーキテクチャをサポート。ルーターはお客様の過去のクエリトラフィックから学習し、新しい質問ごとに「正しく回答できる可能性が最も高いバックエンド」へ、品質基準を満たす範囲内で最も低コストな選択肢に振り分けます。
3つのアーキテクチャ — コンセプト概要
多くの本番RAGシステムは、1つの検索アーキテクチャを出荷してそれで完結としています。私たちは、アーキテクチャ的に異なるスタック間で選択するルーターを提供します。コーパス内のすべてのクエリに対して最適な選択肢が同じであることは、ほとんどありません。
→ stuff context
→ generate
最適な用途
単一事実の検索、FAQ型のクエリ、フラットチャンク化されたコーパス上での「Xとは何か?」型の質問。
→ Reciprocal Rank Fusion
→ cross-encoder reranker
→ generate
最適な用途
字句的シグナルと意味的シグナルが一致しないクエリ — コード、固有名、略語、技術用語、エラー文字列など。
at ingest → agent walks tree
→ opens / reads sections
→ generate
最適な用途
長い構造化文書のマルチホップ読解 — 法務契約書、財務10-K、コンテキストが隣接していないセクションにまたがる技術PDFなど。
ルーターが実際にどのように判断するか
公開されている多くのRAGルーターは、クエリを事前に複雑さで分類します。私たちのものは違います。学習型ルーティングを採用しており、成功したクエリはすべて、それに回答したバックエンドとともに保存され、新しいクエリは埋め込み類似度によってその履歴と照合されます。
ルックアップアルゴリズム — 各クエリで実行される処理
- 質問をハッシュ化します。SHA-256で計算し、16文字のキーに切り詰め、Cloudflare KV内の顧客ごとのルーティングストアで完全一致を検索します。過去に回答済みであれば、その時に最良だったバックエンドへ即座に振り分けます。
- ミスした場合、質問を埋め込み、過去の質問埋め込みのキャッシュインデックスに対してコサイン検索を行います。最近傍の類似度が0.88を超えていれば、そのバックエンドへ振り分けます。
- 閾値以上の一致がない場合は、そのコーパスに対する顧客のデフォルトバックエンドにフォールバックします。
- 回答がレンダリングされた後、(質問ハッシュ、バックエンド、品質スコア)のタプルが顧客ごとのルーティング履歴ストアに書き戻され、将来のルックアップのための種データとなります。
現在ルーティング対象としている10のバックエンド
ルーターは10種類の名前付きバックエンドのいずれかへ振り分けます。そのうち3つは「Tier 3型」(階層的またはグラフ拡張型)です。残りはピュアベクトルエンジンで、運用上のトレードオフが異なるTier 1として扱われます。
Tier 2(BM25 + dense fusion + cross-encoder reranker)は、現在ワークフローキャンバス上でコンポーザブルなノードとして提供されています。自動ルーターは、コーパスごとのルーティングデータが正当化するにつれ、次に同レイヤーを取り込みます。
APIサーフェス — 1つのエンドポイント、監査グレードの透明性
ルーターは呼び出し側からは見えません。リクエスト形式は1つで、レスポンスにはルーティング判断が含まれるため、どのバックエンドが回答したか(そしてその理由)を監査できます。
# 1つのエンドポイント。ルーターがどのバックエンドを使用するか判断します。
curl -X POST https://api.divinci.app/v1/rag/query \
-H "Authorization: Bearer $DIVINCI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"question": "What clauses in the 2024 amendment override section 7.3?",
"corpus": "legal-contracts-q4"
}'
# レスポンス — エージェントが回答の根拠とするためのチャンク。
{
"items": [
{
"content": "Section 7.3 is superseded by …",
"metadata": { "doc": "amendment-2024.pdf", "section": "II.4.b" },
"score": 0.91
}
/* … */
],
"routing": {
"backend": "pageindex", // 振り分け先はtier-3のpage-index
"match_source": "learned-history", // arena · auto-fix · またはフォールバック
"similarity": 0.92, // ≥ 0.88の閾値
"ttl_remaining":"23d 14h" // 再ベンチマークまでの鮮度ウィンドウ
}
}
現在、routingメタデータは内部でログ記録され、監査証跡を通じて参照可能です。レスポンスへのインライン配信は2026年Q3にかけて段階的に展開されます。
既存のルーターとの違い
RAGルーティングは新しいアイデアではありません。Adaptive-RAGやProbing-RAGなどの学術的ルーターは、既にクエリを複雑さで分類しています。差別化要因は、Divinciが1つのマネージドエンドポイントの背後で、お客様自身のトラフィックから学習しながら、アーキテクチャ的に異なる検索スタック間でルーティングする点にあります。
| 提供サービス | ルーティング対象 | ルーティング軸 | マネージド? |
|---|---|---|---|
| Divinci RAG Routing | 10バックエンド(PageIndex、RAPTOR、LightRAG、neo4j、6つのベクトルエンジン) | アーキテクチャ · 履歴から学習 | はい — 単一エンドポイント |
| LlamaIndex RouterRetriever | BYOリトリーバー | LLM/Pydanticセレクター | いいえ — 自前で組み立てるライブラリ |
| Adaptive-RAG (Jeong et al.) | no-retrieval / single-step / iterative | 深さ · クエリ複雑度の分類器 | 研究 |
| Cloudflare AI Search (旧AutoRAG) | 単一のハイブリッドパイプライン | ルーティングなし | はい |
| AWS Bedrock Knowledge Bases | 単一のハイブリッドパイプライン | ルーティングなし | はい |
| Azure AI Search Agentic Retrieval | ハイブリッド + 別途エージェント型モード | ユーザーが手動でモード選択 | はい |
| VectifyAI PageIndex | 単一アーキテクチャ(階層的走査) | ルーティングなし | OSSスタンドアロン |
私たちの提案における正直な弱点:クエリごとのRAGルーティングというコンセプト自体は新しくありません。私たちがルーティングを発明したわけではありません。本当の差別化要因は、(a)深さのバリエーションではなくアーキテクチャ的に異なるスタック間でルーティングすること、(b)PageIndex/RAPTOR/LightRAG型の階層的走査を別製品ではなくファーストクラスのバックエンドとして組み込んでいること、そして(c)自前で組み立てて運用するライブラリではなく1つのマネージドエンドポイントであること — この組み合わせにあります。
ルーティング設定の種データはどのように投入されるか
ルーティングモデルは事前学習されていません — お客様自身のトラフィックから学習します。3種類のシグナルがルーティング履歴ストアに供給されます。
- アリーナでの選択。クエリをRAG Arenaを通じて複数のバックエンドで実行し、結果を並べてスコアリングし、勝者を選びます。(質問、勝利したバックエンド)のペアがルーティングストアに登録されます。
- 自動修正の出力。当社の自動修正機能が、取り込み時または定期監査の際に代表的なクエリで比較検索を実行すると、クエリごとに最も性能の高いバックエンドが同じストアに書き込まれます。
- 本番フィードバック。成功したクエリ(オンライン評価ゲートを通じて品質閾値を超えてスコアリングされたもの — リグレッションテスト記事を参照)は、リクエスト時に(質問ハッシュ、バックエンド)のペアをルーティングストアに書き戻し、コーパスの進化に応じてルーティングモデルが鮮度を保つよう30日間のTTLを設定します。
最も価値を発揮する場面
同質なコーパスで一様なクエリ形式しか扱わない場合、恩恵はわずかです — 手動で1つのバックエンドを選べば終わりです。本当の強みは、混在したコーパスと混在したクエリ形式にあります。
「標準契約書における不可抗力の定義は何か?」(Tier 1、300ms未満)と、「当社の47件のベンダー契約全体で、非標準の解約条項を含むのはどれで、そのパターンは何か?」(Tier 3、数秒のページインデックス走査)の両方を尋ねる法務チームは、どちらか一方のバックエンドを選びたくはありません。シンプルな質問は速くて安く返ってきてほしく、深い質問は多少コストがかかっても正しく返ってきてほしい — それも2つのスタックを運用することなく。
これこそが、アーキテクチャ的に異なるバックエンド間でルーティングする1つのマネージドエンドポイントがその価値を発揮するケースです。トラフィックが一様なら、不要です。トラフィックが混在しているなら — 実際のエンタープライズコーパスのほとんどがそうですが — 必要になります。
関連する詳細解説と隣接製品
アーキテクチャの詳細な解説はブログ記事RAGシステムの未来:シンプルなドキュメント検索を超えてでご覧いただけます。上記ステップ1を支えるアリーナはRAG Arena & Dynamic Routingにあります。ルーティング判断は、プラットフォーム全体で利用しているリリースマニフェストパターンと同じ仕組みで監査アンカーされています — 規制業界におけるカスタムLMの検証とリリースを参照してください。そして、検索品質をオンラインでどのように評価しているか(上記ステップ3に供給されるシグナル)を知りたい場合は、リグレッションテスト記事から始めるのがおすすめです。