RAGとは
Retrieval-Augmented Generation (RAG) は、大規模言語モデル(LLM)によるテキスト生成に、外部情報の検索を組み合わせることで、回答精度を向上させる技術のこと。
「検索拡張生成」、「取得拡張生成」などと訳されます。外部情報の検索を組み合わせることで、大規模言語モデル(LLM)の出力結果を簡単に最新の情報に更新できるようになる効果や、出力結果の根拠が明確になり、事実に基づかない情報を生成する現象(ハルシネーション)を抑制する効果などが期待されています。
(読み:ラグ)
RAGの構成
RAGには大きく2段階のプロセスが存在します。
プロセス①:検索フェーズ
ユーザから入力された質問に関連する情報を、データベースや文書から検索します。
プロセス②:生成フェーズ
①で得られた検索結果とユーザからの質問を組み合わせたプロンプトを大規模言語モデルに入力し、テキスト生成結果を取得します。
また、RAGの回答精度向上には、プロセス①の検索フェーズの工夫が特に重要になります。外部情報のフォーマットをどのように整備するか、検索方式(キーワード検索やベクトル検索など)をどのように設計するかなどを考慮する必要があります。
RAGの強み
RAGの特徴は、一般的な大規模言語モデルに加えて、情報検索を組み合わせていることです。この構成により、下記のような強みが発揮されます。
・情報更新の容易性
RAGでは外部情報とされる文書やデータベース内の情報を最新化することで、最新の情報を即座に大規模言語モデルから出力結果に反映させることができます。大規模言語モデルのみ用いた構成の場合に比べて、モデルの再学習が必要でなくなるため、コストが抑制される可能性があります。
・出力結果の信頼性
RAGでは外部情報の検索結果を利用して回答を出力するため、根拠が明らかになり、回答の信頼性が高まります。また、大規模言語モデルによるハルシネーションのリスク軽減も期待できます。
RAGのユースケース
RAGを活用することで、社内に蓄積されたあらゆる業務分野の文章ナレッジを効率的に活用することができます。
例えば、顧客からの問合せに対応するサポートデスクでは、よくある質問(FAQ)やマニュアルを外部情報とし、チャットボットやオペレーター支援ツールをRAGの方式で開発することにより、従来オペレーターが問合せを受けてから社内マニュアルや過去のFAQを手作業で探していた時間を短縮することが可能です。また、業務習熟度に関わらずオペレーターの応答品質を一定値まで高めることが期待でき、ひいては顧客の問合せ待ち時間の短縮に繋がります。それ以外でも、リアルタイムで商品・在庫の情報が更新される金融や小売業界や、医療や法務など、根拠が明らかで正確な回答が求められるシーンでの大規模言語モデルに利用に向けて、RAGの活用が進んでいます。