RAG入門:AIに知識を与える技術

RAGとは?LLMに外部知識を与える検索拡張生成の仕組み

生田 陸人
LuaGate エンジニア / 現役エンジニア
編集 LuaGate編集部

このレッスンで分かること

  • この記事では「RAGとは?LLMに外部知識を与える検索拡張生成の仕組み」を RAG 実装 の現場で使える形で整理します
  • RAG(検索拡張生成)とは?基本概念をわかりやすく解説 をおさえれば、現場で迷ったときに立ち戻れる
  • なぜ今、RAGが必要なのか?LLMが抱える3つの限界 をおさえれば、現場で迷ったときに立ち戻れる
  • 1. 知識の鮮度(カットオフ) をおさえれば、現場で迷ったときに立ち戻れる
  • 2. 非公開情報の欠如 をおさえれば、現場で迷ったときに立ち戻れる

RAG とは

RAG(検索拡張生成)の基本概念を、図解と具体例で初心者向けに解説。LLMのハルシネーションや知識の鮮度問題を解決し、自社データを活用する仕組みを2,000文字以上のボリュームで詳しく学べます。

RAG(検索拡張生成)とは?基本概念をわかりやすく解説

ChatGPTClaudeといった高性能なAI(大規模言語モデル:LLM)を使っていると、「自社の最新製品について教えて」「昨日のニュースについて解説して」と聞いた際に、もっともらしい嘘をつかれたり、「最新の情報は分かりません」と回答されたりすることがあります。これは、LLMが「過去の学習データ」のみに基づいて回答しているために起こる現象です。

この課題を劇的に解決するのが、RAG(Retrieval-Augmented Generation:検索拡張生成)という技術です。RAGを一言で表現すると、「AIに参考書を持たせて、それを見ながら回答させる仕組み」のことです。

RAG — 「検索」+「生成」のハイブリッド。LLMを再学習せず、外部知識から関連箇所を引いてプロンプトに添えるだけで、最新情報や社内情報に強いAIに変えられます。

LLM自体を再学習させることなく、外部のデータベースやドキュメントから必要な情報を見つけ出し、それをAIに読み込ませた上で回答を生成させます。これにより、AIは「自分が知らないこと」についても、信頼できるソースを元に正確に答えられるようになります。本レッスンでは、この革新的な技術であるRAGの基礎と、なぜ今これが注目されているのかを深く掘り下げていきます。

なぜ今、RAGが必要なのか?LLMが抱える3つの限界

RAGの仕組みを理解するためには、まず現状のLLMが抱えている課題を知る必要があります。どれほど賢いAIであっても、以下の3つの壁に突き当たります。

1. 知識の鮮度(カットオフ)

LLMの学習には膨大な時間とコストがかかるため、リアルタイムの情報を常に学習し続けることは不可能です。これを知識のカットオフ(学習期限)と呼びます。例えば、2023年までしか学習していないAIに、2024年に発売された製品のことを聞いても正解は得られません。

2. 非公開情報の欠如

LLMはインターネット上の公開情報を中心に学習しています。そのため、あなたの会社独自の社内規定、秘密保持契約が必要なプロジェクト資料、個人の日記といった非公開データの内容は一切知りません。

3. ハルシネーション(もっともらしい嘘)

LLMは「次に来る確率が高い言葉」を予測して文章を作る性質があります。そのため、知らないことに対しても、まるで事実であるかのように自信満々に間違った情報を生成してしまうことがあります。これがハルシネーションです。

RAGは、AIに「回答する前に、手元の資料(外部知識)を検索しなさい」という命令を与えることで、これらの問題をスマートに解決します。

RAGの仕組み:検索から生成までの3ステップ

RAGは、大きく分けて以下の3つのステップで動作します。この一連の流れが、ユーザーが質問を投げてから回答が返ってくるまでの数秒間に行われています。

  1. Retrieval(検索)はユーザーの質問に関連する情報を、外部のナレッジベース(PDF、Webページ、データベースなど)から探し出します。
  2. Augmentation(拡張)は見つかった情報を、ユーザーの元の質問に「参考情報」として付け加えます。これにより、プロンプト(AIへの指示文)が強化されます。
  3. Generation(生成)は強化されたプロンプトを受け取ったLLMが、添えられた情報を読み解き、それに基づいた正確な回答を作成します。
diagram (will load when visible)

よく使われる例えとして、「試験」で考えてみましょう。

  • LLM単体は持ち込み禁止の試験。自分の記憶(学習データ)だけが頼り。
  • RAGは参考書持ち込みOKの試験。わからない問題があっても、参考書(外部データ)を引いて正解を見つけ出せる。

この「参考書を引く能力」こそが、RAGの本質です。

「検索」と「生成」を組み合わせるという発想は、人間が調べ物をしてレポートを書く流れにとても似ています。まずはこの3つのステップをイメージできるようになりましょう!

実践的な違い:プロンプトで比較するRAGの効果

実際に、RAGがどのように機能するのかをプロンプトの例で見てみましょう。ここでは、架空の社内ツール「Z-Works」の使い方を質問する場合を想定します。

RAGありの肝は「資料を添えてから聞く」こと — プロンプトの中に検索で得た本文を貼り付け、LLM に「この資料に基づいて答えて」と縛ることで推測回答(ハルシネーション)を抑えます。

避けたい例 ユーザーの質問: 「Z-Worksでの経費精算の仕方を教えてください」

プレーンテキスト

LLMの回答(RAGなし): 「Z-Worksについては一般的な情報がありませんが、通常、経費精算はダッシュボードの『申請』ボタンから行います(※適当な推測)」

問題点: AIが学習していない独自のツールの情報を、勝手な推測で生成してしまっています。

良い例 RAGを適用した場合のプロンプト(内部的な処理):

プレーンテキスト

「以下の【参考資料】に基づいて、質問に答えてください。 【参考資料】: Z-Worksでは左メニューの『経費管理』から『新規申請』を選び、レシートをアップロードします。 質問: Z-Worksでの経費精算の仕方を教えてください」

LLMの回答: 「資料によると、Z-Worksでは左メニューの『経費管理』から『新規申請』を選択し、レシートをアップロードすることで精算が可能です。」

解決策: 検索によって得られた具体的な手順をプロンプトに組み込むことで、正確な回答が得られます。

diagram (will load when visible)

RAGを導入するメリットと活用シーン

RAGを導入することで、企業や開発者は以下のような大きなメリットを享受できます。

  • コスト効率はLLM自体を再学習(ファインチューニング)させるには膨大な計算リソースが必要ですが、RAGはデータを準備して検索させるだけなので、はるかに安価で高速に実装できます。
  • 透明性と信頼性は回答の根拠となったドキュメントを「出典」として提示できるため、ユーザーが情報の正確性を確認しやすくなります。
  • データの安全性は元データをモデルに学習させる必要がないため、特定のユーザーのみがアクセスできる情報を切り分けて管理することが容易です。

主な活用シーン

  • 社内ヘルプデスク就業規則やマニュアルを読み込ませ、社員の質問に自動回答する。
  • カスタマーサポートは膨大な製品FAQから最適な回答を提示するチャットボット。
  • 専門職の支援は法律、医療、技術ドキュメントなどの専門性の高い文書から必要な箇所を要約して提示する。

やってみよう あなたが所属している組織や学校で、RAGを使って「AIに読み込ませたい資料」は何ですか?以下の3つの視点で考えてみましょう。

  1. 頻繁に更新される情報(例:今週のイベント予定)
  2. 誰もがアクセスできるわけではない非公開情報(例:部活動の連絡網)
  3. 専門的すぎて一般のAIが知らない情報(例:独自のプログラミング規約)

まとめ

RAG(検索拡張生成)は、LLMの「記憶力」の限界を、外部の「検索力」で補う非常に強力な技術です。AIを単なるチャット相手ではなく、「自社の専門知識に精通した優秀なアシスタント」へと進化させるための鍵となります。

次回のレッスンでは、LLMが直面する最大の課題の一つである「ハルシネーション」について、RAGが具体的にどのようにそれを防ぐのかをさらに詳しく学んでいきましょう。

RAGは現代のAI活用において最も実用的で、ビジネス価値を生み出しやすい技術の一つです。「AIが嘘をつくから使えない」と諦める前に、RAGで「正しい知識」を与えてあげましょう!

現場でよくある具体例

  1. 業務ケース 1 — 社内規程 200 ページに RAG を導入。チャンクサイズ 512、top-k=5、Re-ranker 有りで Recall@5 が 0.62 → 0.81
  2. 業務ケース 2 — エンジニア向け技術文書では「コードブロックを 1 チャンク」にしたら検索精度が大きく改善
  3. 業務ケース 3 — 営業 FAQ では BM25 + Embedding の Hybrid Retrieval で、固有名詞検索の取りこぼしが減った

次にとるべきアクション

  1. 手元の社内 PDF / FAQ 10 件で RAG ミニ版を作るLangChainLlamaIndex で構築し、「RAGとは?LLMに外部知識を与える検索拡張生成の仕組み」の論点を試す
  2. チャンクサイズと検索件数を 2 通り試す — 256 / 512 トークン × top-k=3 / 5 など、定量比較する
  3. 評価指標を 1 つ決める — Recall@k / 回答正答率 / コストのいずれかをチームで KPI 化する

次のレッスン

次は LLMのハルシネーション問題とRAGによる解決策 で、LLMのハルシネーション問題とRAGによる解決策 を学びます。

事前確認 — 進む前に次の 3 つができることを確認しましょう。

  1. RAGの仕組み の要点を自分の言葉で説明できる
  2. このレッスンの最小コード (または操作手順) を見ずに書ける
  3. 練習問題やクイズで間違えた箇所を読み直して理解した

理解度チェック (30 秒)

Q. RAGの仕組み とは何か、1 文で説明してください。

この章のポイント

A. 本文の「このレッスンで分かること」または冒頭の説明文を見直し、自分の言葉で要約できれば OK。詰まったら本レッスンの最初の H2 セクションを読み返してみましょう。

関連レッスン

参考にした出典

学習を加速したい方へ

RAG (検索拡張生成) 入門ガイドを体系的にマスターするなら、chotdekiru の無料学習ポータル で実際に手を動かして学習を始めるのがおすすめです。質問・つまずきも現役エンジニアが伴走します。

復習ミニクイズ

RAGを「参考書を持ち込める試験」に例えたとき、LLM単体での回答と比較して、なぜRAGはハルシネーション(もっともらしい嘘)を抑制できるのでしょうか?

参考リンク