Retrieval-Augmented Prompting(リトリーバルオーグメンテッドプロンプティング)
LLMへのプロンプトに外部知識ベースから検索した関連情報を動的に付加する技法。RAG(Retrieval-Augmented Generation)のプロンプト設計側に焦点を当てた概念で、ハルシネーション抑制と回答品質向上に有効。
Retrieval-Augmented Prompting とは
Retrieval-Augmented Prompting(RAP)は、LLM へのプロンプトに外部知識ベースから検索(Retrieve)した関連情報を動的に付加(Augment)する技法です。RAG(Retrieval-Augmented Generation)パイプラインのうち、プロンプト構成・コンテキスト注入・ソース帰属の設計に焦点を当てた概念であり、「何を検索するか」ではなく「検索結果をどうプロンプトに組み込むか」を体系化します。
RAG パイプラインにおける位置づけ
RAG パイプラインは一般に3段階で構成されます。
| 段階 | 技術 | 主なツール |
|---|---|---|
| 1. インデックス構築 | チャンキング・ベクトル化 | LangChain, LlamaIndex, Pinecone, Qdrant |
| 2. 検索(Retrieval) | ベクトル類似度検索・BM25・ハイブリッド | FAISS, Weaviate, Elasticsearch |
| 3. プロンプト構成(RAP) | コンテキスト注入・ソース帰属・圧縮 | LangChain PromptTemplate, LlamaIndex |
RAP は第3段階に位置し、検索された文書断片(チャンク)をどのようにプロンプトへ配置するかを最適化します。
コンテキスト注入パターン
Stuff(詰め込み)方式
検索結果をすべてプロンプトに連結する最もシンプルな方式です。チャンク数が少ない場合(3〜5個)に有効ですが、コンテキストウィンドウの制約により大量のチャンクには対応できません。
Map-Reduce 方式
各チャンクを個別に処理(Map)し、結果を統合(Reduce)する方式です。大量の文書を扱えますが、API 呼び出しが増加するためコストとレイテンシが増大します。
Refine 方式
チャンクを順番に処理し、前の結果を次のチャンク処理の入力とする方式です。文脈の連続性を保ちやすいですが、順序依存性が生じます。
プロンプト設計のベストプラクティス
- ソース帰属の明示: 検索結果に出典情報を付与し、「以下の情報源に基づいて回答してください」と指示する。ハルシネーションを抑制し、回答の検証可能性を確保する
- 情報の優先順位付け: 類似度スコアが高い順にチャンクを配置する。LLM は冒頭の情報に重みを置く傾向がある
- コンテキスト圧縮: LongLLMLingua や LLMLingua-2 などのプロンプト圧縮技術で、検索結果から冗長な部分を除去し、情報密度を高める
- 「情報にない場合は回答しない」指示: 検索結果に該当情報がない場合のフォールバック動作を明示的に定義する
ハルシネーション抑制効果
Meta の RAG 原論文(Lewis et al., 2020)では、RAG を適用することでオープンドメイン質問応答の正答率が Non-RAG 比で15〜25%向上し、ハルシネーション率が40〜60%低下することが報告されています。ただし、検索結果自体が不正確な場合はハルシネーションが増幅される「Garbage In, Garbage Out」問題があるため、検索品質の担保が前提条件です。
最新動向(2025-2026年)
- Agentic RAG: LLM エージェントが検索クエリの生成・検索結果の評価・再検索判断を自律的に行うパラダイム
- Graph RAG: Microsoft Research が提案した、知識グラフを活用した構造化検索による RAG の発展形
- Self-RAG: LLM 自身が「検索が必要か」を判断し、検索結果の関連性と回答の正確性を自己評価するフレームワーク
FAQ
Q: RAP と RAG は何が違いますか?
A: RAG はパイプライン全体(インデックス構築→検索→生成)を指す広い概念です。RAP はその中の「検索結果をプロンプトにどう組み込むか」というプロンプト設計の側面に焦点を当てた概念です。RAG の品質は RAP の設計に大きく依存します。
Q: 検索結果をプロンプトに入れる際の最適なチャンク数は?
A: 一般的には3〜7チャンクが最適です。1〜2チャンクでは情報が不足し、10チャンク以上では「Lost in the Middle」問題(中間の情報が無視される)が発生します。コンテキストウィンドウの20〜40%を検索結果に充てるのが目安です。
Q: ハイブリッド検索を使うべきですか?
A: はい。ベクトル検索(セマンティック類似度)と BM25(キーワード一致)を組み合わせるハイブリッド検索は、単体手法より平均10〜15%高い検索精度を示します。Pinecone、Weaviate、Qdrant はハイブリッド検索をネイティブサポートしています。