一文定義
ユーザーの入力テキストの意味を分析して、適切な処理パイプライン・プロンプト・エージェントへルーティングするコンポーネント。
詳細解説
セマンティックルーター(Semantic Router)とは、ユーザーの入力テキストを埋め込みベクトルとして表現し、意味的類似度に基づいて事前定義されたルート(処理パイプライン・プロンプトテンプレート・専門エージェント等)へ振り分けるコンポーネントです。単純なキーワードマッチングと異なり、言い回しが異なっても意味が近いリクエストを同じルートに正確に分類できます。
動作原理として、(1)ルート定義:各ルートに対して代表的な発話例(utterances)を複数登録し、埋め込みモデルでベクトル化してインデックスに保存、(2)入力処理:ユーザーの入力テキストをリアルタイムで埋め込みベクトルに変換、(3)類似度計算:入力ベクトルと各ルートのベクトルのコサイン類似度を計算、(4)ルーティング決定:最も類似度が高いルートを選択し、対応するハンドラーを実行(閾値以下の場合はデフォルトルートまたは拒否)があります。
主要なユースケースとして、(1)マルチエージェントシステムでの専門エージェント選択(製品質問→製品エージェント、返品→サポートエージェント等)、(2)悪意あるプロンプト・ジェイルブレイク試行の事前フィルタリング、(3)言語・トピック・ユーザー意図に基づくプロンプトテンプレート選択、(4)RAGシステムでの検索対象データソース選択があります。
Aurelio AIのオープンソースライブラリ「semantic-router」(Python)が代表的な実装で、OpenAI・Cohere・HuggingFaceの埋め込みモデルをサポートします。LangChainのSemanticSimilarityExampleSelectorやLlamaIndexのルーターモジュールも同様の概念を実装しています。LLMルーターとの違いとして、LLMルーターがモデル選択に特化するのに対し、セマンティックルーターはより汎用的な意図分類・振り分け機構です。
参考情報・出典
- ▸semantic-router – GitHub— Aurelio AI(参照日: 2026-02-26)
- ▸LangChain Router – Documentation— LangChain(参照日: 2026-02-26)