生成AIパスポート › Web参考書 › 第3章

RAG(検索拡張生成)の仕組み・メリット・ユースケース

第3章 現在の生成AIの動向 / 節 3

シラバスのキーワード: RAG(Retrieval-Augmented Generation)チャンクベクトルデータベースRAGの歴史と発展RAGの仕組みとメリットRAGのユースケース

本文を読んだあと、覚えているか確認してください。

マンガで学ぶ RAG

Ai と みお の4ページ。上から順に読んでください。

RAGの解説マンガ 1/4ページRAGの解説マンガ 2/4ページRAGの解説マンガ 3/4ページRAGの解説マンガ 4/4ページ

このマンガのページ マンガ一覧

RAGとは

**RAG(Retrieval-Augmented Generation、検索拡張生成)は、言語モデルが回答を生成する前に、質問に関連する情報を社内文書やデータベースなどから検索(Retrieval)し、その内容をプロンプトに加えて(Augmented)回答を生成(Generation)**させる仕組みです。モデルを再学習せずに、最新情報や社内固有の情報を回答に反映できます。

2020年に Meta(当時 Facebook)の研究者らが発表した論文で提案され、ChatGPT の普及に伴い、2023年以降に企業での導入が急増しました。

処理の流れ

事前準備

  1. マニュアルや規程などの文書を、段落や一定の文字数ごとの断片(チャンク)に分割する。
  2. 各チャンクを埋め込みモデルで数値ベクトルに変換し、ベクトルデータベースに保存する。

質問時 3. 利用者の質問もベクトルに変換する。 4. ベクトルデータベースで、質問と意味的に近いチャンクを検索する。キーワードが一致しなくても意味が近い文書を見つけられる。 5. 検索したチャンクをプロンプトに付け加え、言語モデルが根拠付きで回答を生成する。

メリット

ユースケース

RAG とファインチューニングの使い分け

月に数回改訂される社内規程のように頻繁に更新される情報は、文書を差し替えるだけで済む RAG が向いています。ファインチューニングは改訂のたびに再学習が必要でコストがかかります。逆に、文体や応答の形式そのものを変えたい場合はファインチューニングが向いています。

限界

RAG はハルシネーションを「抑える」仕組みであり、完全になくすものではありません。検索で適切な文書が見つからなかったり、モデルが文書を誤って解釈したりすれば、誤った回答が出ます。検索対象の文書に誤りがあれば回答にも反映され、チャンクの分け方や検索精度が回答の質を左右します。人間による確認は引き続き必要です。

試験で問われる観点

この節の練習問題(18問)

答えを見る前に選んでから開いてください。同じ問題は章別演習でランダム出題されます。

  1. 問1
    RAG(Retrieval-Augmented Generation、検索拡張生成)の説明として、最も適切なものを1つ選びなさい。
    1. 1入力画像に似た画像を外部のデータベースから検索し、その画像を参考にして新しい画像を生成させる仕組み
    2. 2質問に関連する文書を外部のデータベースから検索し、その内容を根拠として言語モデルに回答を生成させる仕組み
    3. 3言語モデルのパラメータ数を増やして内部に記憶できる知識量を大きくし、検索なしで回答の精度を高める手法
    4. 4質問に関連する文書を追加の学習データとして言語モデルに再学習させ、パラメータに知識を書き込む仕組み
    答えと解説

    正解: 2

    RAGは、言語モデルが回答を生成する前に、質問に関連する情報を社内文書やデータベースなどから検索(Retrieval)し、その内容をプロンプトに加えて(Augmented)回答を生成(Generation)させる仕組みです。モデル自体を再学習せずに、最新情報や社内固有の情報を回答に反映できます。パラメータの増加、広告の最適化、画像検索はRAGの説明ではありません。

  2. 問2
    RAGを構築する際、長い文書を検索しやすい大きさに分割した断片を何と呼ぶか。正しいものを1つ選びなさい。
    1. 1パラメータ
    2. 2プロンプト
    3. 3チャンク
    4. 4トークン
    答えと解説

    正解: 3

    RAGでは、マニュアルや規程などの長い文書を、段落や一定の文字数ごとの断片(チャンク)に分割してから、それぞれをベクトル化してデータベースに保存します。質問に近いチャンクだけを取り出して言語モデルに渡すことで、精度と効率を両立します。トークンは言語モデルが扱う最小単位、パラメータはモデル内部の数値、プロンプトはモデルへの指示文で、文書の分割単位ではありません。

  3. 問3
    RAGにおけるベクトルデータベースの役割として、最も適切なものを1つ選びなさい。
    1. 1利用者ごとの会話履歴を時系列のまま保存し、質問に含まれる単語と完全に一致する過去の回答を検索して再利用する。
    2. 2言語モデルのパラメータ(重み)を層ごとに分割して保存し、推論時に必要な層だけを読み込んで応答を高速に生成する。
    3. 3文書のチャンクを元のテキストのまま保存し、質問に含まれるキーワードとの文字列一致だけで該当する文書を検索する。
    4. 4文書のチャンクを数値ベクトル(埋め込み)として保存し、質問のベクトルと意味的に近いチャンクを高速に検索する。
    答えと解説

    正解: 4

    ベクトルデータベースは、文書のチャンクを埋め込みモデルで数値ベクトルに変換して保存し、質問のベクトルとの類似度で意味的に近いチャンクを検索します。キーワードが一致しなくても意味が近い文書を見つけられるのが特徴です。文字列やキーワードの完全一致で検索する方式は従来の全文検索であり、会話履歴の保存やモデルのパラメータの分割保存はベクトルデータベースの役割ではありません。

  4. 問4
    RAGで質問に回答するまでの処理の流れとして、正しい順序を1つ選びなさい。
    1. 1文書をチャンクに分割してベクトル化し保存する → 質問をベクトル化して類似チャンクを検索する → 検索結果をプロンプトに加えて言語モデルが回答を生成する
    2. 2言語モデルが質問だけから回答を生成する → 回答をチャンクに分割してベクトル化する → ベクトルデータベースの文書と照合して一致した部分を利用者に返す
    3. 3質問をベクトル化して類似チャンクを検索する → 文書をチャンクに分割してベクトル化し保存する → 検索結果をプロンプトに加えて言語モデルが回答を生成する
    4. 4文書全体をそのままプロンプトに加えて言語モデルに入力する → 言語モデルが回答を生成する → 回答をベクトル化してデータベースに保存し次回以降に再利用する
    答えと解説

    正解: 1

    RAGは、事前準備として文書をチャンクに分割し、埋め込みモデルでベクトル化してベクトルデータベースに保存します。質問時には、質問もベクトル化して類似度の高いチャンクを検索し、その内容をプロンプトに付け加えて言語モデルに回答させます。回答を先に生成してから保存する流れや、人手で回答を書く流れはRAGではありません。

  5. 問5
    RAGを導入するメリットとして、最も適切なものを1つ選びなさい。
    1. 1社内文書を追加学習してモデルのパラメータを更新するため、検索の仕組みを用意しなくても最新情報を回答に反映でき、推論のたびに文書を参照する必要がなくなる。
    2. 2根拠となる文書をもとに回答するためハルシネーションを抑えやすく、モデルを再学習しなくても最新情報や社内情報を回答に反映でき、出典を示せる。
    3. 3言語モデルのパラメータ数を自動的に増やして表現力を高めるため、事前学習に含まれない専門分野でも精度が上がり、出典を示さなくても回答を信頼できる。
    4. 4回答の根拠を外部から取り込まずモデルの内部知識だけで生成するため、通信が不要で応答が速く、参照文書の管理や更新の手間がかからない。
    答えと解説

    正解: 2

    RAGの主なメリットは、検索した文書を根拠に回答するのでハルシネーションを抑えやすいこと、モデルを再学習せずに最新情報や社内固有の情報を反映できること、回答の出典を示せることです。パラメータ数が増えるわけではなく、通信費の話とも無関係です。RAGでも検索漏れや誤読は起こるため、100%正確になる、人間の確認が不要になるという説明は誤りです。

  6. 問6
    RAGのユースケースとして、最も適切なものを1つ選びなさい。
    1. 1過去の売上データから将来の需要を予測し、店舗ごとの在庫の発注量を自動で決める需要予測システム
    2. 2従業員の顔写真を登録しておき、オフィスの入口でカメラ映像と照合して入退室を管理する認証システム
    3. 3社内規程やマニュアルを参照して、従業員からの問い合わせに根拠付きで自動回答する社内ヘルプデスク
    4. 4工場の機械に取り付けたセンサーの振動データを監視し、故障の兆候を検知して通知する予知保全システム
    答えと解説

    正解: 3

    RAGは、社内FAQ・ヘルプデスク、製品マニュアルを参照するカスタマーサポート、法令や社内規程を参照する法務支援、論文やガイドラインを参照する医療・研究支援など、「特定の文書群を根拠に回答させたい」場面で使われます。需要予測、顔認証による入退室管理、センサーデータによる予知保全は、いずれも文書を検索して文章を生成する仕組みではなく、従来の機械学習や画像認識の用途です。

  7. 問7
    RAGの歴史に関する説明として、最も適切なものを1つ選びなさい。
    1. 11956年のダートマス会議で提案された手法で、初期のエキスパートシステムの知識検索に広く用いられた。
    2. 22023年のChatGPT公開後に初めて考案された手法で、2026年時点ではまだ研究段階にとどまっている。
    3. 32012年の画像認識コンテストで提案された手法で、畳み込みニューラルネットワークとともに普及した。
    4. 42020年に研究論文で提案された手法で、大規模言語モデルの普及とともに企業での実用が急速に広がった。
    答えと解説

    正解: 4

    RAGは2020年にMeta(当時Facebook)の研究者らが発表した論文で提案された手法で、ChatGPTなど大規模言語モデルの普及に伴い、社内文書を活用する現実的な方法として2023年以降に企業導入が急増しました。1956年のダートマス会議はAI研究の出発点、2012年の画像認識コンテストはAlexNetによるディープラーニングの躍進で、RAGとは無関係です。ChatGPT公開後に考案された研究段階の手法という説明も誤りです。

  8. 問8
    ある企業が、頻繁に更新される社内規程について社員の質問に答えるチャットボットを作りたい。規程は月に数回改訂される。この要件に最も適した方式を1つ選びなさい。
    1. 1規程文書をRAGの検索対象にし、改訂のたびに文書を差し替える。
    2. 2規程の内容をモデルにファインチューニングで覚え込ませ、改訂のたびに再学習する。
    3. 3汎用の言語モデルにそのまま質問させ、社内規程は参照させない。
    4. 4規程を画像に変換して画像生成AIに学習させる。
    答えと解説

    正解: 1

    頻繁に更新される情報は、RAGで検索対象の文書を差し替えるだけで最新の内容を反映できるため、RAGが適しています。ファインチューニングは改訂のたびに再学習が必要でコストと時間がかかり、汎用モデルだけでは社内規程を知らないため正しく答えられません。画像生成AIに学習させるのは要件と無関係です。

  9. 問9
    RAGに関する記述として、不適切なものを1つ選びなさい。
    1. 1チャンクの分け方や検索の精度が回答の質に影響する。
    2. 2RAGを使えば言語モデルのハルシネーションは完全になくなる。
    3. 3RAGでは回答の根拠となった文書を利用者に示すことができる。
    4. 4検索対象の文書に誤りがあれば、RAGの回答にもその誤りが反映されうる。
    答えと解説

    正解: 2

    RAGはハルシネーションを「抑える」仕組みであり、完全になくすものではありません。検索で適切な文書が見つからなかったり、モデルが文書を誤って解釈したりすれば、誤った回答が生成されることはあります。検索対象の誤りが回答に反映されうること、チャンク分割や検索精度が品質に影響すること、根拠文書を示せることは、いずれも正しい記述です。

  10. 問10
    月に数回改訂される社内規程について、常に最新の内容で回答するチャットボットを作りたい。最も適した方法を1つ選びなさい。
    1. 1ファインチューニングで、規程の内容をモデルに学習させる。改訂のたびに再学習すれば最新を保てる
    2. 2言語モデルは最新の情報を自動で取得するので、規程を渡さなくても最新の内容で回答できる
    3. 3規程の全文をプロンプトに毎回貼り付ける。文書が増えてもトークン数の上限はないので問題ない
    4. 4RAGで、回答のたびに規程の文書を検索して読ませる。文書を差し替えるだけで最新の内容を反映できる
    答えと解説

    正解: 4

    頻繁に更新される情報には、文書を差し替えるだけで最新の内容を反映できるRAGが向いています。ファインチューニングは改訂のたびに再学習が必要でコストがかかります。言語モデルは学習時点の情報しか持たず、最新の規程を自動で取得することはありません。全文をプロンプトに貼る方法はトークン数の上限とコストの問題があり、必要部分だけを検索して渡す方が合理的です。

  11. 問11
    RAGの仕組みと限界に関する記述として、不適切なものを1つ選びなさい。
    1. 1根拠の文書をもとに回答するため、ハルシネーションは完全になくなり、人間の確認は不要になる
    2. 2回答を生成する前に関連する文書を検索し、その内容をプロンプトに加えて回答させる仕組みである
    3. 3根拠となる文書をもとに回答するため、ハルシネーションを抑えやすく、出典を示せる
    4. 4モデルを再学習しなくても、文書を差し替えるだけで最新情報や社内情報を反映できる
    答えと解説

    正解: 1

    RAGは検索した文書をプロンプトに加えて回答させる仕組みで、ハルシネーションを抑えやすく、出典を示せ、文書の差し替えで最新情報を反映できます。ただし「抑える」仕組みであって完全になくすものではなく、検索で適切な文書が見つからなかったり、文書に誤りがあれば誤った回答が出るため、人間の確認は引き続き必要です。

  12. 問12
    RAGの事前準備における「チャンク」の説明として、最も適切なものを1つ選びなさい。
    1. 1検索結果の中から、回答に使う文書を人間が選んで確定させる作業のこと
    2. 2マニュアルや規程などの文書を、段落や一定の文字数ごとに分割した断片のこと
    3. 3質問と文書の意味の近さを計算するために、文章を数値の列に変換したもの
    4. 4言語モデルが一度に処理できる文章の長さの上限を表す単位のこと
    答えと解説

    正解: 2

    チャンクは、文書を段落や一定の文字数ごとに分割した断片で、RAGではこの単位でベクトル化してベクトルデータベースに保存し、検索します。文章を数値の列に変換したものはベクトル(埋め込み)、処理できる長さの単位はトークン、人間が文書を選ぶ作業はRAGの自動処理には含まれません。

  13. 問13
    RAGでベクトルデータベースを使う利点として、最も適切なものを1つ選びなさい。
    1. 1キーワードが完全に一致する文書だけを返すため、無関係な文書が混ざる心配がまったくない
    2. 2文書の内容を人間が要約して登録するため、検索結果には誤りが含まれない
    3. 3質問と文書を数値ベクトルに変換して比べるため、キーワードが一致しなくても意味が近い文書を見つけられる
    4. 4文書を保存すると言語モデルの重みが自動的に更新され、再学習なしで知識がモデルに組み込まれる
    答えと解説

    正解: 3

    ベクトルデータベースには、チャンクを埋め込みモデルで数値ベクトルに変換したものを保存します。質問もベクトルに変換して意味的に近いチャンクを検索するため、キーワードが一致しなくても意味が近い文書を見つけられます。モデルの重みが更新されるわけではなく、キーワードの完全一致で検索するのでもなく、人間が要約して登録する仕組みでもありません。

  14. 問14
    RAGで質問を受けてから回答するまでの処理の流れとして、最も適切なものを1つ選びなさい。
    1. 1言語モデルが回答を生成 → 回答をベクトルに変換 → 似た文書を検索 → 見つかった文書を回答に付け足す
    2. 2文書を使ってモデルを再学習 → モデルの重みを更新 → 質問を入力 → 更新後のモデルが回答を生成
    3. 3質問をキーワードに分解 → 完全一致する文書を抽出 → 人間が文書を選ぶ → 言語モデルが要約を生成
    4. 4質問をベクトルに変換 → 意味の近いチャンクを検索 → 検索結果をプロンプトに付加 → 言語モデルが回答を生成
    答えと解説

    正解: 4

    RAGでは、利用者の質問をベクトルに変換し、ベクトルデータベースで意味的に近いチャンクを検索し、検索したチャンクをプロンプトに付け加えて、言語モデルが根拠付きで回答を生成します。回答を先に生成して後から文書を付ける流れ、モデルを再学習する流れ、人間が文書を選ぶ流れはいずれもRAGの処理ではありません。

  15. 問15
    「回答の文体を自社らしい丁寧な口調に統一したい」という要望と、「最新の製品マニュアルを参照させたい」という要望に対して、それぞれ向く手法の組み合わせとして最も適切なものを1つ選びなさい。
    1. 1文体の統一にはファインチューニング、最新マニュアルの参照にはRAG
    2. 2文体の統一にはRAG、最新マニュアルの参照にはファインチューニング
    3. 3どちらもRAGで対応でき、ファインチューニングは不要である
    4. 4どちらもファインチューニングで対応でき、RAGは不要である
    答えと解説

    正解: 1

    文体や応答の形式そのものを変えたい場合はファインチューニングが向き、頻繁に更新される情報を参照させたい場合は文書の差し替えで済むRAGが向きます。両者を逆にした組み合わせや、片方だけで両方をまかなう選択肢は、それぞれの手法の性質に合いません。

  16. 問16
    RAGを使った社内FAQボットが、古い手続きを案内してしまった。原因として最も可能性が高いものを1つ選びなさい。
    1. 1ベクトルデータベースはキーワードの完全一致でしか検索できないため、最新文書が見つからなかった
    2. 2検索対象の文書に古い版が残っていて、それが検索されて回答に反映された
    3. 3RAGは言語モデルを再学習する仕組みなので、学習が古いまま更新されていなかった
    4. 4RAGを使うとハルシネーションは完全になくなるため、古い案内は利用者の読み違いである
    答えと解説

    正解: 2

    RAGは検索した文書をもとに回答するため、検索対象の文書に誤りや古い版があれば、その内容がそのまま回答に反映されます。RAGはモデルを再学習する仕組みではなく、ハルシネーションを完全になくすものでもありません。ベクトルデータベースは意味の近さで検索するので、キーワードの完全一致しかできないという説明も誤りです。

  17. 問17
    RAGの歴史に関する記述として、最も適切なものを1つ選びなさい。
    1. 12017年にGoogleの論文「Attention Is All You Need」で提案され、Transformerと同時に普及した
    2. 22025年に日本のAI新法で定められた仕組みで、法律の施行後に導入が義務づけられた
    3. 32020年にMeta(当時Facebook)の研究者らの論文で提案され、ChatGPTの普及に伴い2023年以降に企業での導入が急増した
    4. 41956年のダートマス会議で提案され、第一次AIブームの中心技術として普及した
    答えと解説

    正解: 3

    RAGは2020年にMeta(当時Facebook)の研究者らが発表した論文で提案され、ChatGPTの普及に伴って2023年以降に企業での導入が急増しました。ダートマス会議はAI研究の出発点、2017年のGoogleの論文はTransformer、AI新法はRAGを定めた法律ではありません。

  18. 問18
    RAGの代表的な使いどころとして、最も適切なものを1つ選びなさい。
    1. 1指示文から映像を生成する商品紹介動画の作成
    2. 2実在しない人物の顔写真を本物そっくりに生成する処理
    3. 3画像の縦横サイズをモデルの入力サイズに揃える前処理
    4. 4社内規程やマニュアルを参照して回答する社内ヘルプデスク
    答えと解説

    正解: 4

    RAGの代表的なユースケースは、社内規程やマニュアルを参照する社内ヘルプデスク・FAQ、製品マニュアルを参照するカスタマーサポート、法令を参照する法務支援などです。動画生成、顔写真の生成、画像の前処理はRAGの用途ではありません。