概要

最新のドキュメントやナレッジベースをベクトル DB に保存し、クエリ時に関連文書を検索して LLM に供与する手法。LLM の知識カットオフを補い、ハルシネーション低減に効果的。

仕組み

  1. ドキュメントをチャンクに分割
  2. Embeddings でベクトル化してベクトル DB に格納
  3. クエリ時に類似ベクトルを検索
  4. 検索結果をコンテキストとして LLM に渡す

RAG の限界と LLM Wiki

Karpathy は RAG を「毎日同じ本を初めて読む人に質問を投げるようなもの」と評し、知識を積み上げる LLM Wiki パターンを提案した。RAG は都度検索、LLM Wiki は事前コンパイル。

アダプティブ検索 RAG(新手法)

従来の RAG は検索戦略が固定されているため、クエリに合わない場合は精度が著しく低下する。モデル自身が検索方法を選択・組み合わせるアダプティブ RAG は、この問題に対応する新手法。

3つの検索戦略

検索戦略向いているケース
キーワード検索固有名詞・型番・コマンドなど特定語句の検索
意味検索(セマンティック)概念的な質問、言い換えが多い文書
チャンク全文読み文脈・前後関係が重要な長文

モデルの推論能力が高いほど検索戦略の判断精度が向上するため、モデル進化と共に RAG 全体の性能が自然にスケールする構造となっている。読み込むテキスト量は従来と同等以下でも回答精度は向上する。

関連ページ

ソース記事