ハイブリッド検索とは、キーワードベースの全文検索(BM25 等)とベクトル検索(セマンティック検索)を組み合わせ、両者の長所を活かして検索精度を向上させる手法である。
RAG の検索精度を左右する最大の要因は、関連文書を正しく取得できるかどうかだ。ベクトル検索だけでは「ISO 27001」のような固有名詞の完全一致に弱く、BM25 だけでは「情報セキュリティの国際規格」のような意味的な言い換えに対応できない。ハイブリッド検索はこの二つの弱点を相互に補完する。
実装パターンはいくつかあるが、最も一般的なのは BM25 とベクトル検索をそれぞれ実行し、結果を RRF(Reciprocal Rank Fusion)で統合する方式だ。各検索手法が返すランキングの逆数を足し合わせ、最終スコアとしてリランキングする。数式は単純だが、単独の検索手法より一貫して高い精度を示すことが実証されている。
pgvector + PostgreSQL の全文検索を組み合わせれば、追加のインフラなしでハイブリッド検索を実現できる。Supabase 上では、ベクトルカラムと tsvector カラムを同一テーブルに持ち、SQL の中で両方のスコアを計算して統合するアプローチが実用的だ。チャンクサイズの設計も精度に影響する。
小さなチャンクはベクトル検索の精度を高めるが、BM25 では文脈が失われやすい。実務では 500〜1000 トークン程度のチャンクに、前後の文脈をオーバーラップさせる設計が多い。


BM25(Best Matching 25)とは、文書中の単語の出現頻度と文書長を考慮してクエリとの関連度をスコアリングする確率的情報検索アルゴリズムである。

コンテキスト・エンジニアリング(Context Engineering)とは、AI モデルに与えるコンテキスト——コードベースの構造、コミット履歴、設計意図、ドメイン知識——を体系的に設計・最適化する技術領域である。

RAG(Retrieval-Augmented Generation)とは、外部の知識ソースから関連情報を検索し、その結果を LLM の入力に付加することで、回答の正確性と最新性を向上させる手法である。


ヒューマン・イン・ザ・ループ(HITL)とは?AIで業務自動化を定着させる「人間参加型」設計の基礎
機能テスト(フィーチャーテスト)とは、特定の機能やユースケース単位でシステムの振る舞いを検証するテスト手法である。単体テストより広い範囲を対象とし、複数のモジュールが連携して正しく動作するかを確認する。