SAG / ARCHITECTURE NOTE

DPRとbi-encoder:大規模な文書をすばやく検索する意味検索

DPRの定義と必要性、仕組み、SAGアーキテクチャへの適用基準と実務チェックリストを、研究論文と公式文書を根拠に解説します。

Markdownをダウンロード

一文で定義すると

DPRは、質問と文書をそれぞれベクトルにエンコードし、近いベクトルをすばやく検索する密ベクトル検索方式です。

要点:単語が異なっていても意味が同じ質問と文書を結び付けられます。また、文書ベクトルを事前に計算しておくことで、大規模なコレクションをすばやく検索できます。

なぜこの技術が必要なのか?

単語が異なっていても意味が同じ質問と文書を結び付けられます。また、文書ベクトルを事前に計算しておくことで、大規模なコレクションをすばやく検索できます。

仕組み

質問エンコーダーと文書エンコーダーは、関連するペアの距離が近くなるように学習します。検索段階では幅広く候補を見つけることに集中し、精密な判断は後続のrerankerに任せることができます。

設計時に見るべきなのは精度だけではありません。レイテンシ、コスト、データ境界、更新頻度、障害時の動作も併せて定義することで、運用時に再現可能な結果が得られます。自動化で確信が持てない値は、0や成功に置き換えず、未測定・要確認の状態にしておくのが安全です。

SAGの技術との関連

SAGに適用する場合は、顧客からの質問と承認済みの根拠文書をtenant単位でインデックス化し、検索結果に文書IDとバージョンを記録する必要があります。これは、現時点で外部モデルが接続されていない範囲における適用基準です。

実務チェックリスト

  • tenantフィルターがベクトル検索にも適用されているか確認します
  • hard negativeを使って、混同されやすい文書を学習・評価します
  • ベクトルモデルとインデックスのバージョンを記録します
  • 失敗・結果なし・権限エラーの状態を成功と区別します
  • 変更の前後を同一条件で再検証します

研究論文と公式文書

参考文書は原理と推奨事項の根拠となるものです。検索での露出、AIによる言及、順位、売上を保証するものではありません。実際の適用効果は、サービスのデータを使い、同一条件で観測して確認する必要があります。

選定基準と具体的な適用例

質問ベクトル1つと、事前に保存しておいた文書ベクトルを比較するため、文書ごとにモデルを再実行するコストを削減できます。ただし、「利用可能」と「利用不可」のように意味が近い反対の条件も候補に含まれる場合があるため、条件が一致しているか確認する必要があります。

SAGにおける適用範囲

この記事では、検索AIの研究原理と拡張設計を扱います。SAGのページ収集・根拠記録・レポート検証の仕組みと関連付けてお読みください。ただし、論文で扱われている検索アルゴリズムがすべて運用パイプラインに組み込まれているという意味ではありません。適用の有無は、検索モジュール、評価データ、実行記録で確認します。

この技術についてさらに読むには

RAG・GraphRAG・Self-RAGの論文と適用条件を比較します。

記事一覧