エージェント
検索拡張生成 (RAG)
検索システムと言語モデルを組み合わせたアーキテクチャパターンです。モデルは回答する前に外部の知識ベースから関連ドキュメントを取得し、実際のデータに根ざした出力を生成します。
**検索拡張生成(RAG、Retrieval-Augmented Generation)**は、大規模言語モデルから正確で最新の回答を得るための主要なパターンです。LLMの固定された訓練データのみに依存するのではなく、RAGシステムはまず外部の知識ベース(社内文書、Webページ、顧客データなど)から関連するチャンクを取得し、それをプロンプトのコンテキストとしてモデルに提供します。
典型的なパイプライン構成は次のとおりです。
- インデックス作成: ドキュメントをチャンクに分割し、エンベディングに変換してベクトルデータベースに格納します。
- クエリ処理: ユーザーの質問をエンベディングし、データベースが意味的に類似した上位k件のチャンクを返します。
- 生成: 取得したチャンクを「以下のコンテキストのみを使用して回答してください」という指示とともにLLMのプロンプトに挿入します。
RAGはハルシネーションを軽減し、再訓練なしにコンテンツを最新の状態に保ち、ユーザーが検証できる引用を提供します。Perplexity、ChatGPTのブラウジングモード、エンタープライズ向けナレッジアシスタント、そして大多数の本番LLMアプリケーションを支えるエンジンです。
2025年にはさまざまな発展形が登場しました。ハイブリッド検索(ベクトル+キーワード)、リランカー(Cohere、Jina)、複雑な関係性に対応するGraphRAG(Microsoft)、エージェントが多段階の検索計画を立てるAgentic RAGなどです。基本原則は変わりません。適切なコンテキストをモデルに届けることで、根拠のある回答が生まれます。