QUIZ 30分

クイズの説明

Step 3「ベクトルDBと検索パイプラインを構築しよう」の理解度を確認します。ベクトルDBのセットアップ、ハイブリッド検索、メタデータフィルタリング、検索パイプラインについて問います。

合格ライン: 80%(5問中4問正解)


問題

Q1. ハイブリッド検索の利点

ベクトル検索とBM25キーワード検索を組み合わせるハイブリッド検索の最大の利点はどれですか?

  • A. ベクトル検索よりも常に高速になる
  • B. 意味的な類似度検索とキーワード完全一致検索の両方の強みを活用できる
  • C. ベクトルDBのストレージ容量を削減できる
  • D. LLMのAPIコストを削減できる
答えを見る

正解: B

ハイブリッド検索の最大の利点は、ベクトル検索の強み(意味的な類似度、言い換え対応)とキーワード検索の強み(固有名詞、型番、コード名の完全一致)を組み合わせられることです。例えば「デプロイ手順」のような意味的なクエリにはベクトル検索が有効で、「ECS-2847」のようなID検索にはBM25が有効です。速度向上(A)は主目的ではなく、ストレージ削減(C)やAPIコスト削減(D)とも直接関係しません。


Q2. Reciprocal Rank Fusion(RRF)

RRFスコアの計算で、ドキュメントAがベクトル検索で2位、BM25で8位の場合、RRFスコア(k=60)として正しいものはどれですか?

  • A. 1/(60+2) + 1/(60+8) = 0.0161 + 0.0147 = 0.0308
  • B. 2 + 8 = 10
  • C. (2 + 8) / 2 = 5
  • D. 1/2 + 1/8 = 0.625
答えを見る

正解: A

RRFスコアの計算式は RRF(d) = Σ 1/(k + rank_i(d)) です。k=60とすると、ベクトル検索2位の寄与は 1/(60+2) = 0.0161、BM25 8位の寄与は 1/(60+8) = 0.0147 で、合計 0.0308 となります。RRFの特徴は順位ベースであるため、異なるスコア体系(コサイン類似度とBM25スコア)の正規化が不要である点です。B(単純加算)、C(平均)、D(逆数の単純和)はRRFの計算方法ではありません。


Q3. メタデータフィルタリング

「開発部の技術文書の中から、2025年以降に更新されたもの」という条件で検索する場合、最も適切なフィルタリング方式はどれですか?

  • A. ポストフィルタ — ベクトル検索後に条件でフィルタリング
  • B. プリフィルタ — ベクトル検索前に条件で対象を絞り込み
  • C. フィルタリングは不要 — ベクトル検索だけで十分
  • D. LLMにフィルタリングを任せる — 検索結果をLLMが判断
答えを見る

正解: B

明確な条件(department = “開発部”、doc_type = “技術文書”、updated_at >= “2025-01-01”)が指定されている場合は、プリフィルタが最適です。検索対象をあらかじめ絞り込むことで、無関係なドキュメントがTop-Kに含まれるのを防ぎ、検索精度が向上します。また検索対象が少なくなるため速度も向上します。ポストフィルタ(A)ではTop-Kに不要な結果が含まれ、最終結果が少なくなる可能性があります。フィルタリング不要(C)は非効率で、LLM判断(D)はコストが高くスケーラブルではありません。


Q4. 検索パイプラインのレイテンシ

検索パイプラインの体感レイテンシを最も効果的に改善する方法はどれですか?

  • A. ベクトルDBのRAMを2倍に増やす
  • B. LLMのmax_tokensを半分にする
  • C. LLM応答をストリーミング出力にして、最初のトークンを早く表示する
  • D. Rerankerを2回実行して精度を上げる
答えを見る

正解: C

ストリーミング応答は、LLMの最初のトークンが生成された時点から逐次ユーザーに表示するため、ユーザーの体感待ち時間(TTFT: Time To First Token)を大幅に短縮します。全体のレイテンシが3秒でも、ストリーミングなら最初の文字が1秒以内に表示され始めるため、ユーザー体験が大きく改善します。RAM増加(A)はベクトル検索のわずかな高速化にしかならず、max_tokens削減(B)は回答品質に影響します。Rerankerの2回実行(D)はレイテンシを悪化させます。


Q5. RAGプロンプト設計

RAG用プロンプトに「コンテキストに情報がない場合は”該当する情報が見つかりませんでした”と回答すること」と指示する主な目的はどれですか?

  • A. LLMの応答速度を向上させるため
  • B. APIコストを削減するため
  • C. LLMがコンテキスト外の知識で推測して回答する(ハルシネーション)を防止するため
  • D. ユーザーの質問が不明確であることを示すため
答えを見る

正解: C

この指示の主な目的はハルシネーション防止です。RAGシステムでは、LLMが検索結果(コンテキスト)に基づいて回答することが前提です。しかし、コンテキストに該当情報がない場合、LLMは自身のパラメトリック知識(学習時の知識)で推測して回答してしまう傾向があります。これは社内ナレッジ検索において特に危険で、誤った情報を「自信を持って」回答してしまいます。「情報がない」と正直に答えることは、信頼性の高いRAGシステムの基本要件です。


結果

合格(4問以上正解)

Step 3の内容をよく理解しています。ベクトルDBと検索パイプラインの構築方法を身につけました。次のStep 4「検索精度を最適化しよう」に進みましょう。

不合格(3問以下正解)

Step 3の内容を復習しましょう。特に以下のポイントを重点的に確認してください:

  • ハイブリッド検索 — ベクトル検索とBM25の補完関係
  • RRF — Reciprocal Rank Fusionの計算方法と利点
  • フィルタリング — プリフィルタとポストフィルタの使い分け
  • パイプライン設計 — レイテンシ最適化とプロンプト設計

推定所要時間: 30分