Databricks Certified Generative AI Engineer Associate 教科書
第5章 評価とモニタリング(Evaluation and Monitoring, 12%)
🎯 この節の学習目標
従来の機械学習モデル(分類や回帰)であれば、accuracy や RMSE のように「正解と比べて何点」という単一の数値で品質を測れました。しかしLLMの出力は自由形式のテキストです。同じ質問に対して、表現の異なる正しい答えが無数に存在します。
したがって、生成AIアプリケーションの評価では「正解と一致したか」という単一の物差しではなく、複数の観点(dimension)ごとに品質を測るアプローチが必要になります。これが本章全体の土台となる考え方です。
📝 試験のポイント
試験では「LLMアプリの品質を評価したい。従来の accuracy だけで十分か?」という趣旨の問題が出ます。答えは不十分で、「関連性・忠実性など観点別の指標を組み合わせる」方向の選択肢が正解になります。また、パープレキシティ(perplexity)のような言語モデルの学習用指標は「モデルが次のトークンをどれだけ予測できるか」を測るものであり、生成アプリの業務品質(質問に正しく答えているか)の評価には不十分である点も押さえてください。
なお、こうした観点別の評価を実行する基盤として、現在の Databricks では MLflow 3 の統合評価フレームワーク(unified evaluation framework)が中心に位置付けられています。MLflow 3 は Tracing(実行記録)/ Evaluation(mlflow.genai.evaluate())/ LLM judges(組み込みジャッジ)/ Human feedback(人間フィードバック)/ Scorers(カスタムスコアラー)を1つのフレームワークに統合しており、従来 Mosaic AI Agent Evaluation として提供されていた評価機能は、この MLflow 3 への移行が公式に案内されています。本章の各節(5-2〜5-6)は、いずれもこのスタックの構成要素を学ぶ流れになっています。
図:MLflow 3 の統合評価スタック(本章全体の見取り図)
生成AIアプリケーション、特にRAGやエージェントの評価で使われる代表的な観点は次のとおりです。名前は英語のまま出題されることが多いため、英語表記とセットで覚えましょう。
| 観点 | 問い | 典型的な失敗例 |
|---|---|---|
| 関連性(Relevance) | 出力はユーザーの質問・依頼に答えているか | 質問と関係のある話題だが、聞かれたことに答えていない |
| 忠実性/根拠性(Faithfulness / Groundedness) | 出力は提供されたコンテキスト(検索結果など)に忠実か。コンテキストにない内容を捏造していないか | 検索結果に書かれていない「もっともらしい事実」を付け足す(ハルシネーション) |
| 正確性(Correctness) | 出力は正解データ(ground truth)と意味的に一致しているか | 期待回答と異なる誤った結論を返す |
| 安全性(Safety) | 有害・不適切・危険な内容を含んでいないか | 攻撃的表現、危険行為の助長、差別的内容 |
| 流暢さ(Fluency) | 文章として自然で読みやすいか | 文法崩れ、不自然な繰り返し |
| 簡潔さ(Conciseness) | 冗長でなく要点がまとまっているか | 同じ内容を何度も言い換える長文 |
このうち試験で特に重要なのは上の4つです。とりわけ忠実性(Groundedness)はハルシネーション検出の指標である、という対応付けはよく問われます。「関連性は高いが忠実性が低い」=質問には答えているが根拠のない内容を語っている、のように観点を独立に評価できることが強みです。
💼 例:1つの回答を観点別に採点する
質問:「当社の返品ポリシーでは何日以内に返品できますか?」
検索されたコンテキスト:「未開封の商品は購入後30日以内に返品可能です。」
LLMの回答:「購入後30日以内であれば返品可能です。また、開封済みでも手数料を払えば返品できます。」
単一スコアではこの「半分正しく半分捏造」という状態を捉えられません。観点を分けることで「検索は機能しているが、生成が余計なことを言っている」と診断でき、修正すべき箇所(プロンプトで『コンテキストにない情報は答えない』と制約する等)が特定できます。
評価は「正解データ(リファレンス)と比較できるか」で2系統に分かれます。
質問ごとに期待回答(expected response / ground truth)を用意し、モデル出力と比較します。Correctness の判定はこの系統です。比較方法には次があります。
正解データがなくても、出力そのもの(と入力・コンテキスト)だけから判定できる観点があります。関連性(質問と回答を見れば判定可能)、忠実性(コンテキストと回答を見れば判定可能)、安全性、そして「敬語で書かれているか」のようなガイドライン準拠がこれに当たります。正解データの作成はコストが高いため、リファレンスなし評価を活用できると評価の立ち上げが速くなります。
| 系統 | 必要なもの | 判定できる主な観点 |
|---|---|---|
| リファレンスあり | 質問+期待回答のペア | Correctness(正確性) |
| リファレンスなし | 質問(+コンテキスト)と出力のみ | Relevance、Groundedness、Safety、ガイドライン準拠 |
「何を測りたいか(観点)」と「どう測るか(手段)」を整理すると次のようになります。手段の詳細は5-2(LLMジャッジ)と5-3(カスタムスコアラー)で扱います。
| 測りたいこと | 観点 | 主な測り方 |
|---|---|---|
| 質問に答えているか | Relevance | LLMジャッジ(リファレンス不要) |
| ハルシネーションしていないか | Groundedness / Faithfulness | LLMジャッジがコンテキストと回答を突き合わせる |
| 正解と一致しているか | Correctness | 期待回答とのLLMジャッジ比較(ROUGE/BLEUは補助的) |
| 有害でないか | Safety | LLMジャッジ、ガードレール(3-6)との併用 |
| 形式・ルールを守っているか | ガイドライン準拠 | guidelinesジャッジ(5-2)、ヒューリスティックなカスタムスコアラー(5-3) |
| 正しい文書を取得できているか | 検索品質 | Precision@k / Recall@k などのランキング指標(5-4) |
RAGアプリケーションは「検索(Retrieval)→ 生成(Generation)」の2段構成です。最終回答の品質だけを見ていると、問題が検索段階にあるのか生成段階にあるのか区別できません。そこで次のように分離して評価するのが鉄則です。
検索が悪ければ、どれほど優秀なLLMでも正しい回答は作れません(garbage in, garbage out)。逆に検索が良くても、生成側が捏造すれば忠実性が下がります。「回答の正確性が低い」という症状に対し、まず検索結果に正解情報が含まれていたかを確認するのがデバッグの定石です。
📝 試験のポイント
「RAGアプリの回答品質が低い。まず何を確認すべきか?」という問題では、検索段階の品質(取得チャンクが質問に関連しているか)を切り分けて評価する選択肢が正解になりやすいです。「いきなりLLMを大型モデルに変える」「ファインチューニングする」といった選択肢は、原因の切り分けをスキップしているため誤答の典型です。
✅ この節のまとめ
問1. RAGチャットボットが、検索されたコンテキストに書かれていない「もっともらしい事実」を回答に含めてしまう問題を検出したい。最も適切な評価観点はどれか。
正解:B
コンテキストにない内容の捏造=ハルシネーションを検出するのは Groundedness(Faithfulness)です。回答とコンテキストを突き合わせ、回答の主張がコンテキストに裏付けられているかを判定します。Aの Relevance は「質問に答えているか」を見る観点であり、質問に答えつつ捏造することは可能なので検出できません。CとDは文章の読みやすさに関する観点で、事実性とは無関係です。
問2. 要約アプリの評価に ROUGE を使ったところ、人間が見ると明らかに良い要約のスコアが低く出た。最も可能性の高い原因はどれか。
正解:A
ROUGE/BLEU は参照テキストとの n-gram 一致率を数える指標で、意味が同じでも表現が異なると低スコアになります。これが従来指標の本質的な限界であり、意味を捉えたければ LLM-as-a-judge(5-2)などの手段が必要です。Bは事実と異なり(長さとスコアの関係は設定に依存し「常に高スコア」ではない)、Cはトークン分割の工夫で適用自体は可能なので「一切適用できない」は誤り、Dは指標の目的の説明として誤りです。
問3. 期待回答(ground truth)を用意していない段階で、RAGアプリの評価を始めたい。この状態でも評価できる観点の組み合わせとして最も適切なのはどれか。
正解:C
Relevance は「質問と回答」、Groundedness は「コンテキストと回答」を見れば判定できるため、期待回答がなくても評価できます(リファレンスなし評価)。Correctness は期待回答との比較が定義そのものなので不可(A・B)。Recall@k も「どの文書が正解か」というラベルが必要です。Dは極端で、リファレンスなし評価から始められる以上誤りです。
問4. RAGアプリの回答の正確性が低い。原因を特定するための最初のステップとして最も適切なのはどれか。
正解:B
RAGの品質問題の多くは検索段階に起因します。検索が正しい情報を取れていなければ、生成側をどれだけ強化しても正しい回答は作れないため、まず検索と生成を切り分けて検索品質を確認します。AとCは原因を特定せずに高コストな対策へ飛びついており、Dの temperature 上昇はむしろ出力のばらつきを増やし正確性を下げる方向の操作です。