定義
事前フィルタ・事後フィルタとは、RAGのベクトル検索でメタデータ条件による絞り込みを検索の前に行うか後に行うかを区別する手法のこと。
事前フィルタ・事後フィルタ (Pre/Post-filtering)とは(詳しく解説)
事前フィルタ(pre-filtering)は、ベクトル検索を実行する前にメタデータ条件(日付・カテゴリ・権限など)で候補を絞り込む方式で、事後フィルタ(post-filtering)は類似度検索で上位k件を取得した後にメタデータ条件で除外する方式を指す。事前フィルタは検索対象自体が絞られるため関連性の低い結果を最初から除外できる一方、条件が厳しすぎると十分な候補数を確保できず検索精度が落ちるとされる。事後フィルタは実装が容易な反面、上位k件の大半が条件で弾かれると最終的な返却件数が想定より少なくなる問題が広く知られている。2026年時点の実運用では主要なベクトルDBがネイティブな事前フィルタ機能を備えるようになり、大規模データセットでは事前フィルタの方がレイテンシとコストの両面で有利とされる。現場での選び方としては、フィルタ条件の選択性が高い(絞り込み後の母集団が小さい)場合は事前フィルタ、低い場合は事後フィルタを使うのが相場感として広く採用されている。
この解説の引用について
定義文・解説は出典を明記いただければ記事・資料・生成AIの回答で自由に引用できます(CC BY 4.0)。
出典: AI PICKS AI用語辞典「事前フィルタ・事後フィルタ (Pre/Post-filtering)とは」 https://aipicks.jp/glossary/prefilter-vs-postfilter
事前フィルタ・事後フィルタ (Pre/Post-filtering)の使用例
- ユーザー権限で閲覧不可な文書をあらかじめ除外してからベクトル検索する事前フィルタの実装パターン。
- 類似度上位20件を取得後、公開日が1年以内のものだけに絞り込む事後フィルタの実装パターン。