生成AI活用

ベクトル検索とは?Vector Search・意味的類似検索

読み:べくとるけんさく / 英:Vector Search

更新日: 読了目安:約6分

ベクトル検索(Vector Search)は、文書や質問を埋め込みベクトルに変換し、意味的に近いベクトルを高速に探し出す検索です。本記事はRAG全体の設計ではなく、Retrieval(検索)段階の流れ——何と何を比較するか——に焦点を当てます。

試験で問われる見方

ベクトル検索単独の定義穴埋めは少ないですが、埋め込みの近さで関連文書を探すという理解が、ベクトルデータベースTF-0232)やRAGの説明とセットで問われます。

混同注意:「文書を小さく分割したもの」はチャンクチャンキング)、「検索しながら生成する手法」はRAGHQ-0370)。ベクトル検索はその中間の検索方式です。

演習で確認する

関連:TF-0232HQ-0370(RAGとの区別)G検定 TF-174(RAG)

ベクトル検索とは

従来のキーワード検索が語の一致を重視するのに対し、ベクトル検索は意味の近さで関連文書を並べます。「退職金の計算」と「退職時の支給額」が語彙は違っても近いベクトルになる、といったケースで有効です。

各文書チャンクは埋め込みモデルでベクトル化され、ベクトルデータベースに格納されます。質問も同じモデルでベクトル化し、コサイン類似度などで近傍(nearest neighbor)を探索します。

RAGでの流れ

  1. インデックスチャンキング → 埋め込み → DB登録
  2. クエリ埋め込み — ユーザー質問をベクトル化
  3. 近傍探索 — 上位k件のチャンクを取得(本記事の核心)
  4. 生成 — 取得結果をプロンプトに渡しLLMが回答

キーワード検索との違い

方式得意なこと弱み
キーワード(BM25等)固有名詞・型番の完全一致言い換えに弱い
ベクトル検索意味的な言い換え・類似表現短いクエリ・数値だけだと外しやすい
セマンティック検索意味に基づく検索(概念)実装はベクトル検索が多い

実務ではハイブリッド検索(キーワード+ベクトル)を採用することも多いです。

品質を左右する要因

  • チャンクサイズ — 大きすぎるとノイズ、小さすぎると文脈欠落
  • 埋め込みモデル — 日本語・ドメイン適性
  • top-kの数 — 少なすぎると取りこぼし、多すぎるとコンテキスト圧迫
  • 古い・誤った文書 — 検索できても正答にならない(TF-0171

よくある質問

ベクトル検索=RAG?

いいえ。ベクトル検索はRAGの検索段階で使われる手法の一つです。

ベクトル検索=ベクトルDB?

DBは格納・検索の基盤、ベクトル検索は検索の方式です。多くの場合セットで使います。

LLMそのものが検索する?

RAGでは別コンポーネントが検索し、結果をLLMに渡す構成が一般的です。