【ITニュース解説】RAGの基礎を理解する Part3
2025年09月08日に「Qiita」が公開したITニュース「RAGの基礎を理解する Part3」について初心者にもわかりやすく解説しています。
ITニュース概要
生成AIが外部情報を参照し回答を作る技術「RAG」。この技術では、AIの回答が参照した情報にどれだけ忠実かという「依存度」の評価が重要となる。本記事は、RAGの回答の質を測るための「依存度」を評価する具体的な手法について解説する。
ITニュース解説
生成AI、特に大規模言語モデル(LLM)は、人間のように自然な文章を作り出す能力で広く利用されているが、いくつかの重大な課題を抱えている。その一つが「ハルシネーション」と呼ばれる現象で、AIが事実に基づかない誤った情報を、さも真実であるかのように生成してしまう問題である。また、AIは学習した時点までの情報しか持たないため、最新の出来事や、社内文書のような限定公開の情報には対応できない。この課題を克服するために開発された技術が、RAG(Retrieval-Augmented Generation)である。RAGは、質問が与えられると、まず関連情報を外部のデータベースや文書から検索(Retrieval)し、見つけ出した情報を参考資料としてLLMに渡し、回答を生成(Generation)させる仕組みを持つ。これにより、AIは常に最新で正確な情報源に基づいて回答を生成することが可能となり、ハルシネーションのリスクを大幅に低減させ、回答の信頼性を高めることができる。
しかし、RAGを導入すると、新たな課題が浮かび上がってくる。それは、AIが生成した回答が、本当に検索してきた文書の内容に忠実に基づいているのか、それとも結局はLLMが元々持っている内部知識に依存して生成されたものなのか、という点である。例えば、企業の法務部が社内規定に関する質問応答システムをRAGで構築したとする。ある質問に対し、システムが生成した回答が、参照した社内規定の条文から正確に導き出されたものなのか、それともLLMが一般的な法律知識から推測して生成したものなのかを判別することは極めて重要だ。もし後者であれば、その回答は企業の状況に即しておらず不正確な可能性があり、RAGを導入した目的が達成されない。このように、「生成された回答が、参照した文書にどれだけ依存しているか」という度合いを客観的に評価する必要性が生じる。
この依存度を正確に測るためには、信頼できる評価基準、すなわち「物差し」が必要となる。開発者は、構築したRAGシステムが意図通りに機能しているかを確認するために、定量的な評価指標を用いる。その中でも特に重要なのが「Faithfulness(忠実度)」と「Answer Relevancy(回答の関連性)」の二つである。これらの指標は、RAGが生成する回答の品質を多角的に分析し、システムの弱点を特定して改善していく上で不可欠なツールとなる。
「Faithfulness(忠実度)」とは、生成された回答が、参照した文書(コンテキスト)の情報のみによってどれだけ裏付けられるかを測定する指標である。これは、AIが参照文書に書かれていない情報を勝手に創作したり、付け加えたりしていないか、つまりハルシネーションを起こしていないかをチェックする役割を持つ。例えば、ある技術文書に「システムAの処理速度は毎秒1000リクエストです」と記載されていたとする。この文書を参照してAIが「システムAは1秒間に1000リクエストを処理できます」と回答した場合、その内容は完全に文書によって支持されるため、忠実度は非常に高いと評価される。しかし、AIが「システムAは1秒間に1000リクエストを処理でき、業界最高水準です」と回答したとする。もし参照文書に「業界最高水準」という記述がなければ、この部分はAIによる付加情報でありハルシネーションと見なされ、回答全体の忠実度は低くなる。
もう一つの重要な指標が「Answer Relevancy(回答の関連性)」である。これは、生成された回答が、ユーザーからの元の質問に対して、どれだけ的確で関連性が高いかを評価する。たとえ回答に含まれる情報がすべて参照文書に基づいていて忠実度が高くても、質問の意図から外れた情報や冗長な内容が含まれていれば、ユーザーにとって価値のある回答とは言えない。例えば、「システムAの処理速度は?」という簡潔な質問に対して、AIが「システムAの処理速度は毎秒1000リクエストです。このシステムは2022年に開発が開始され、開発チームは5名で構成されていました」と回答したとする。処理速度に関する情報は正しく質問に答えているが、開発開始年やチームの人数は質問では求められていない余分な情報である。このような場合、回答の関連性は低いと評価される。この指標は、AIの回答が簡潔かつ要点を押さえているかを評価し、ユーザーを不要な情報で混乱させることを防ぐために用いられる。
信頼性の高いRAGシステムを構築するためには、「忠実度」と「回答の関連性」の両方を高い水準で維持することが不可欠だ。実際のシステム開発の現場では、「ragas」のような専門的なライブラリ(ツール)を用いてこれらの指標を自動で算出し、システムの性能を継続的に監視する。質問、システムが生成した回答、参照した文書などのデータセットを用いて評価を実行すると、各指標が数値(スコア)として算出される。このスコアを分析することで、開発者はシステムの具体的な問題点を特定し、改善策を講じることができる。生成AI技術の応用が広がる中で、RAGはその精度と信頼性を高める鍵となるが、その性能を正しく評価し、品質を管理する能力は、これからのシステムエンジニアにとって極めて重要なスキルとなるだろう。