仕事のAI
スペシャルサイト
RAG(検索拡張生成)とは?仕組みと導入メリット、活用例をご紹介!
社内FAQシステムや社内のドキュメント検索など、検索機能を要する仕組みを実装する際に、近年、活用が進んでいるのが、「RAG(検索拡張生成)」と呼ばれる技術です。
今回は、RAGの概要から、仕組み、導入メリット、活用例をご紹介します。

RAG(検索拡張生成)とは?
RAGとは「Retrieval-Augmented Generation」の略称で、検索拡張生成とも呼ばれる技術です。検索(Retrieval)機能を、拡張(Augmented)し、質の高い回答を生成(Generation)するという意味です。
簡単に言えば、データ検索結果の精度をAI(人工知能)によって高め、その結果を人間が理解しやすい自然な文章で生成する技術です。
検索機能と、自然言語処理(NLP)により、質の高い回答を生成する大規模言語モデル(LLM)とを組み合わせて用いられます。
大規模言語モデル(LLM)とは
大規模言語モデルとは「LLM(Large Language Models)」と呼ばれるもので、膨大なデータを学習し、トレーニングされることで構築されたAIの一種です。多様な自然言語処理(NLP:Natural Language Processing)を実行できます。
自然言語とは人間が日常的に話したり書いたりするときに使う言語を指します。自然言語処理では、AIが自然言語の文章を解析して分析する際に、離れた単語間の関係まで解釈し、文脈を考慮することができます。これにより、話し言葉、書き言葉共にコンピュータで取り扱うことができるようになります。
RAGでは大規模言語モデルが使われていることから、プログラミング言語などではなく、使い慣れた言葉で検索や指示出しによる検索が可能です。また、検索結果データも、自然な文章で得ることができます。

仕組みや種類・活用例をご紹介!
RAG(検索拡張生成)が注目される背景
RAGは、ハルシネーション防止に有効である点が注目されています。ハルシネーションとは、「幻覚」を意味し、AIが事実ではないことをあたかも事実であるかのように出力してしまうことを指します。
この問題を回避するには、信頼できるデータベースやソースを検索させて、回答を生成することが有効とされています。実際、RAGにはそのような仕組みが採用されています。
※生成した回答が100%正しいことを保証することではありません
また、RAGは非公開情報や最新情報も検索対象に含ませることができます。昨今、多く利用されている生成AIツールは、最新の情報を学習していないものもあり、それと比べ、優位性があります。

RAGとファインチューニングの違い
自社独自の情報を生成AIに活用する手法として、RAGのほかにファインチューニングという手法があります。両者の違いとしてはRAGが外部の辞書を参照するイメージであるのに対し、ファインチューニングはAI自体に知識を教え込むイメージです。
以下にそれぞれの違いについて、解説します。
| 比較項目 | RAG(検索拡張生成) | ファインチューニング |
|---|---|---|
| 情報の更新 | 外部データの差し替えで即座に反映 | 再学習が必要なため反映に時間がかかる |
| 導入コスト | 既存モデルを活用するため比較的低コスト | 学習データの準備や計算リソースに高コスト |
| 回答の根拠 | 出典(参照元)を明示でき、信頼性が高い | 根拠の特定が難しく「ブラックボックス」化しやすい |
| 主な用途 | 社内マニュアルやFAQなどの最新情報参照 | 特定の専門用語や独自の言い回し、文体の学習 |
RAGは、日々更新される社内規定や製品仕様書などの動的な情報を扱うのに適しており、ビジネスシーンではまずRAGから検討を始めるのが一般的です。一方、ファインチューニングは専門性の極めて高い業界用語への対応など、特定の文脈に特化させたい場合に適しています。
【関連コラム】
ファインチューニングとは?RAG、転移学習との違いを解説

RAG(検索拡張生成)の仕組み
RAGは、どのような仕組みで検索を実現するのでしょうか。その仕組みを見ていきましょう。
RAGは、チャットAIアプリなどに搭載されることが多いため、ここではチャットAIアプリを例に挙げて解説します。
1.チャットAIアプリに入力する
ユーザーがチャットAIアプリに、知りたい内容を日本語で入力します。
2.AIがデータベースを検索する
ユーザーの問いに対して、AIはインターネットや社内データなどのナレッジベース(ベクトルデータベースなどの情報源)の検索を開始します。
インターネットだけでなく、社内に蓄積されたデータまで検索対象とすることで、信頼性の高い結果が得られます。ベクトルデータベースとは、ベクトルと呼ばれる数値表現で情報データが保存されたデータベースを指します。
このとき、AIは「ベクトル検索」や「キーワード検索+ベクトル検索」のハイブリッド検索によって検索を行います。ベクトル検索とは、テキストや画像検索の際に、データを数値ベクトルとして表現した上で、ベクトル間の類似度から関連情報を見つけ出す検索方法です。ベクトル検索を用いることで検索スピードが上がり、検索結果の精度が高まります。
そしてベクトル検索単独で行うよりも、キーワード検索もあわせて行うハイブリッド検索のほうが、検索結果の精度が高まりやすいといわれています。
3.AIが検索結果データを取得する
AIが検索結果データを取得します。
4.AIが大規模言語モデル(LLM)に質問する
検索結果データを取得しても、AI単体ではユーザーに返答を返す術がないため、大規模言語モデル(以下、LLM)に問いかけます。
5.LLMが回答を生成し、AIへ返す
LLMがAIより指示された回答を自然言語処理によって生成し、AIへ返します。
6.AIがLLMから得た回答をユーザーへ出力する
ユーザーは、最終的に、検索結果データを自然な文章で得ることができます。

RAG(検索拡張生成)の導入メリット
RAGを導入することで、企業は次のメリットを得られます。
ハルシネーションの回避、回答精度の向上
先述の通り、RAGはインターネット上の正誤が定かではない情報も含む情報源だけでなく、社内データなどの信頼の置けるナレッジベースなどの情報源も含めて検索するため、ハルシネーションが回避できます。同時に回答精度や信頼性向上にもつながります。
※生成した回答が100%正しいことを保証することではありません

業務効率化を狙う際に知っておくべきリスクと対策
「わかりません」と回答させられる
RAGでは、曖昧な表現や複雑すぎる質問文に対しては、「わかりません」と回答させるように設定することも可能です。虚偽の内容が表示され、本当に正しいかどうか判断つかない状況になるよりも、「わかりません」と回答が来たほうが効率的といえます。
最新情報を取得できる
RAGはユーザーからの質問が発生したときに、その都度、データベースを検索するため、常に最新情報に基づく検索結果が得られます。
少ない学習データでも高精度なタスク実行が可能
RAGは、比較的少ない学習データであっても、高精度なタスクの実行が可能です。学習させるための諸作業にかかる工数が低減できればコスト削減にもつながります。

RAG(検索拡張生成)の活用例
RAGはその便利さから、ビジネスにおけるさまざまなシーンで活用できます。主な活用例を見ていきましょう。
社内FAQシステム
従業員が、社内のあらゆる情報を効率的に検索できる、よくある質問がまとめられた社内FAQシステムは、RAGによってその精度が高まり、効率化が可能です。

Q&Aとの違いや必要性について解説します
社内ドキュメント検索
業務や手続きに必要な社内のあらゆるナレッジや資料を一元管理し、RAGによってより高精度かつわかりやすい結果データの生成を行うことができます。
社内に散在する膨大な数のドキュメントをすぐに取り出すことができれば、業務改善につながります。「あの資料どこに行った?」と社内に聞いて回る工数と時間を大幅に削減できます。
営業・マーケティング分野のリード特定
営業やマーケティング分野においては、見込み客の行動データやソーシャルメディア上の発言などを分析し、購買意欲の高いリードを自動的に特定する用途で役立てられています。
顧客サポートの精度向上
お客様からの問い合わせに対応するAIチャットボットはすでに多く取り入れられていますが、RAGを搭載することで、精度が上がります。お客様からの問いに対して、過去の顧客の問い合わせ履歴や購買データを解析し、最適な回答を返すことができます。個別最適化された顧客サポートを実現できるでしょう。

RAG導入における注意点と対策
RAGは、活用の幅が広く非常に強力な手法ですが、実務に導入するにあたってはいくつか注意すべきポイントがあります。これらをあらかじめ把握し、適切な対策を講じることで、より実用性の高いシステム構築が可能になります。
検索精度の限界とデータの品質
ユーザーの質問に対して、AIが適切な資料を見つけ出せないと、正しい回答は生成されません。検索漏れを防ぐには、データのチャンク分割を適切に行う必要があります。
対策:データの構造に合わせた最適な分割ルールを設けるほか、キーワード検索とベクトル検索を組み合わせた「ハイブリッド検索」を導入し、検索精度を底上げすることが有効です。

RAGにおけるチャンキングの手法をご紹介
ハルシネーションのリスク
参照すべきデータ内に答えが存在しない場合でも、AIが過去の学習知識からそれらしい誤回答を作成してしまうことがあります。
対策:AIへのプロンプトに「参照データに答えがない場合は、推測せず『わかりません』と答える」よう厳格に定義します。また、回答に必ず出典を表示させる設定にすることで、ユーザーが内容を再確認できる仕組みを整えます。
セキュリティとアクセス権限の管理
社内の機密情報を扱う場合、一般社員が閲覧権限のない役員会議事録などの情報を検索できてしまうといったリスクに注意が必要です。
対策:ユーザーの権限設定とAIの検索範囲を連動させることができる、エンタープライズ向けのセキュアな基盤を選択することが不可欠です。

企業のリスクと具体的な対策を解説

RAGの精度を高めるには
RAGの精度を高めるためのアプローチ方法をいくつか紹介します。
高品質なリトリーバルデータの準備
検索対象となるデータベースやドキュメントの質を高めることが重要です。情報が正確で最新であることを確認し、ノイズを減らすためにデータをクリーニングします。
効果的なリトリーバルモデルの選択とチューニング
リトリーバルモデル(例:BM25、DPRなど)を適切に選択し、特定のタスクに合わせてチューニングします。DPRのような学習ベースのリトリーバルモデルを使用する場合、ドメインに特化したデータで再トレーニングすることが有効です。
生成モデルの最適化
生成モデル(例:GPT、BERTなど)をタスクに特化したデータでファインチューニングします。生成モデルがリトリーバルから得られた情報をうまく活用できるようにすることが重要です。
エンドツーエンドのトレーニング
リトリーバルと生成の両方を含むエンドツーエンドのトレーニングを行うことで、両者の連携を最適化し、精度を向上させることができます。
フィードバックループの導入
ユーザーからのフィードバックを活用してモデルを改善します。ユーザーのフィードバックをもとに、誤った生成やリトリーバルのケースを分析し、モデルの改善に役立てます。
多様なデータセットの使用
モデルがさまざまな状況に対応できるように、異なるタイプのデータセットを使用してトレーニングします。これにより、モデルの汎用性と頑健性が向上します。
ハイパーパラメータの調整
モデルのハイパーパラメータを調整して、最適なパフォーマンスを引き出します。特にリトリーバルの数や生成時のビームサーチの幅などが重要です。
これらの方法を組み合わせて試行錯誤することで、RAGの精度を高めることができるでしょう。

まとめ
RAG(検索拡張生成)は社内ナレッジやデータを効率的に検索して得たいデータを得られる業務効率化につながる技術です。うまくシステムに搭載することで、利活用を進めていくことができるでしょう。
リコーの自然言語処理AI技術によるドキュメントのDX化を推進できるサービス「仕事のAI」では、ソリューションの一つとして「RICOH デジタルバディ」をご提供しております。
社内ドキュメントを検索する際には、多少質問が曖昧であっても、意図をしっかり汲んで的確な資料を抽出します。ご興味のある方は、ぜひお気軽お問い合わせください。









