GEO

RAG評価

RAG評価とは、RAGパイプラインがどれだけうまく良質なコンテキストを検索し、正確な回答を生成するかを定量的に測定する方法論です。LLMは自由に生成を行うため、通常のソフトウェアをテストするように単純な入出力比較で品質を判断することはできません。そのため、専用の評価フレームワークが2026年のRAG開発における標準的なツールキットとなっています。

RAG評価とは、RAGパイプラインがどれだけうまく良質なコンテキストを検索し、正確な回答を生成するかを定量的に測定する方法論です。LLMは自由に生成を行うため、通常のソフトウェアをテストするように単純な入出力比較で品質を判断することはできません。そのため、専用の評価フレームワークが2026年のRAG開発における標準的なツールキットとなっています。

なぜ重要なのか

RAGシステムは複数の段階(クエリリライティング → ベクター検索 → リランキング → コンテキスト注入 → LLM生成 → 引用)で構成されており、どの段階も独立して失敗し得ます。たった1つの壊れたステップが回答品質を崩壊させますが、「最終的な回答は良かったか?」だけを見ても、どの段階が失敗したのかは分かりません。Stanford HAIの研究では、本番のRAGシステムの約35%がハルシネーション、検索漏れ、引用の破綻に悩まされていると推定されており、体系的な評価なしに修正することは不可能です。

中核となる指標

検索品質

  • Context Precision(コンテキスト適合率): 取得したチャンクのうち、実際に関連性のあるものの割合
  • Context Recall(コンテキスト再現率): 正解として関連性のあるチャンクのうち、実際に取得できたものの割合
  • MRR(Mean Reciprocal Rank): 最初の関連チャンクの逆数順位の平均
  • NDCG(Normalized DCG): 関連性と順位を組み合わせた標準的なIR指標

生成品質

  • Faithfulness(忠実性): 回答は実際に提供されたコンテキストに由来しているか?ハルシネーションの対極です。
  • Answer Relevance(回答の関連性): 回答は質問にどれだけ合致しているか?
  • Answer Correctness(回答の正確性): 回答は実際に正しいか(正解と比較して)?
  • Answer Completeness(回答の網羅性): 質問のあらゆる側面に対応したか?

引用品質

  • Citation Precision(引用の適合率): 引用された情報源は実際に主張を裏付けているか?
  • Citation Recall(引用の再現率): 回答内の主張のうち、情報源の引用を伴っているものの割合。

主要な評価フレームワーク

Ragas: RAG評価のためのオープンソースライブラリ。「LLM-as-Judge」のアプローチを用いて、Context Precision、Faithfulness、Answer Relevanceなどを自動的に測定します。

TruLens: RAGおよびLLMアプリのためのトレーシングと評価を統合したツールで、開発から本番モニタリングまでをカバーします。

LangSmith: LangChainの評価・観測ツールで、実験の比較、トレースのデバッグ、データセット管理が可能です。

ARES: 合成データを用いて自動ベンチマークを行う、学術水準の評価フレームワーク。

カスタム評価セット: 実務上もっとも重要です。50~500件の実際のユーザークエリと正解の回答を集め、回帰テストセットとして使用します。

LLM-as-Judgeの限界

最近のフレームワークの多くは、「別のLLMに回答品質を採点させる」(LLM-as-Judge)に依存しています。これは速くて安価ですが、注意点があります。

  • ジャッジのバイアス: ジャッジを務めるLLMは、特定のスタイル、長さ、モデルファミリーを好みます。
  • 一貫性のばらつき: 同じ入力でも同じスコアが出るとは限りません。temperatureを0にし、複数回の実行で平均を取ることで緩和します。
  • 複雑な事実性: ドメインの専門知識を要する判断は、依然として人間による検証が必要です。

重要な意思決定には、必ず人間によるレビューを組み合わせましょう。

実践的なヒント

段階ごとに評価する: パイプライン全体を一度に評価しないでください。検索、リランキング、生成を別々に測定し、ボトルネックを特定します。

回帰テスト: コード、プロンプト、モデルが変わるたびに同じ評価セットで再測定し、デグレを検知します。

本番モニタリング: 実際の回答からランダムにサンプリングしたものをLLM-as-Judgeで継続的に評価し、ドリフトを検知します。

ユーザーフィードバックと結びつける: グッド/バッド評価や再生成クリックを、評価指標と相関させます。

Sources: