メインコンテンツまでスキップ

採点者とLLM審査員

スコアラーは、MLflow GenAI 評価フレームワークの重要なコンポーネントです。モデル、エージェント、アプリケーションの評価基準を定義するための統一されたインターフェースを提供します。名前が示すように、スコアラーは評価基準に基づいてアプリケーションの性能を採点します。これは合格/不合格、真偽、数値、またはカテゴリ値になります。

開発での評価本番運用でのモニタリングに同じスコアラーを使用して、アプリケーションのライフサイクル全体で評価の一貫性を保つことができます。

必要なカスタマイズと制御の量に応じて、適切なタイプのスコアラーを選択します。それぞれのアプローチは前のアプローチに基づいて構築され、複雑さと制御性がさらに高まります。

組み込みの審査員を使って素早く評価を開始します。ニーズの変化に応じて、ドメイン固有の基準に合わせてカスタム LLM ジャッジを構築し、決定論的なビジネス ロジック用のカスタム コード ベースのスコアラーを作成します。

アプローチ

カスタマイズのレベル

ユースケース

審査員を組み込む

最小限

CorrectnessRetrievalGroundednessなどの組み込みスコアラーを使用して、LLM 評価をすぐに試してください。

ガイドラインジャッジ

適度

応答がスタイルや事実のガイドラインなどのカスタム自然言語ルールに適合しているか不適合かをチェックする組み込みの判定。

カスタム審査員

フル

詳細な評価基準とフィードバックの最適化を備えた、完全にカスタマイズされた LLM 審査員を作成します。

数値スコア、カテゴリ、またはブール値を返すことができます。

コードベースのスコアラー

フル

完全一致、形式の検証、パフォーマンス メトリックなどを評価する、プログラム的かつ決定論的なスコアラー。

次のスクリーンショットは、組み込みの LLM 審査員Safetyとカスタム スコアラーexact_matchの結果を示しています。

スコアラーからのメトリクスの例

スコアラーの動作原理

スコアラーは、 evaluate()またはモニタリング サービスからトレースを受け取ります。 次に、次の操作を実行します。

  1. traceを解析して、品質評価に使用される特定のフィールドとデータを抽出します。
  2. 抽出されたフィールドとデータに基づいてスコアラーを実行し、品質評価を実行します。
  3. 品質評価をFeedbackとして返してtraceに添付します

評価トレース

評価UI

裁判官としての法学修士

LLM 審査員は、品質評価に大規模言語モデルを使用する MLflow Scorerの一種です。

審査員を品質評価に特化した AI アシスタントと考えてください。アプリの入力、出力を評価し、実行トレース全体を調査して、定義した基準に基づいて評価を行うことができます。たとえば、審査員はgive me healthy food optionsfood to keep me fitが類似したクエリであることを理解できます。

注記

審査員は、LLM を使用して評価を行う採点者の一種です。これらをmlflow.genai.evaluate()で直接使用するか、カスタム スコアラーでラップして高度なスコアリング ロジックを実現します。

LLM審査員を組み込む

MLflow は、一般的なユースケースに対して研究で検証された判定を提供します。

ジャッジ

引数

グラウンドトゥルースが必要

評価対象

RelevanceToQuery

inputs, outputs

No

応答はユーザーの要求に直接関連していますか?

RetrievalRelevance

inputs, outputs

No

取得されたコンテキストはユーザーのリクエストに直接関連していますか?

Safety

inputs, outputs

No

コンテンツには有害、不快、または有毒な内容は含まれていませんか?

RetrievalGroundedness

inputs, outputs

No

応答は文脈内で提供された情報に基づいていますか?エージェントは幻覚を見ているのでしょうか?

Correctness

inputsoutputsexpectations

はい

提供された真実と比較して、応答は正しいですか?

RetrievalSufficiency

inputsoutputsexpectations

はい

コンテキストは、グラウンドトゥルースの事実を含む応答を生成するために必要なすべての情報を提供していますか?

Guidelines

inputs, outputs

No

応答は指定された自然言語基準を満たしていますか?

ExpectationsGuidelines

inputsoutputsexpectations

いいえ(ただし、期待値にはガイドラインが必要です)

応答は例ごとの自然言語基準を満たしていますか?

カスタムLLMジャッジ

組み込みのジャッジに加えて、MLflow を使用すると、カスタム プロンプトと指示を使用して独自のジャッジを簡単に作成できます。

特殊な評価タスクを定義する必要がある場合、成績やスコア(合格/不合格だけでなく)をより細かく制御する必要がある場合、またはエージェントが特定のユースケースに対して適切な決定を下し、操作を正しく実行したことを検証する必要がある場合は、カスタム LLM ジャッジを使用します。

カスタム審査員を参照してください。

カスタム審査員を作成したら、人間からのフィードバックと調整することで、その精度をさらに向上させることができます。

裁判官の力となるLLMを選択する

デフォルトでは、各審査員は GenAI 品質評価を実行するために設計されたDatabricks ホスト LLMを使用します。審査員定義内のmodel引数を使用して審査員モデルを変更できます。モデルを<provider>:/<model-name>形式で指定します。例えば:

Python
from mlflow.genai.scorers import Correctness

Correctness(model="databricks:/databricks-gpt-5-mini")

サポートされているモデルの一覧については、 MLflow のドキュメントを参照してください。

LLM審査員を支援するモデルに関する情報

  • LLMジャッジは、Microsoftが運営するAzure OpenAIなどのサードパーティサービスを使用して生成AIアプリケーションを評価する場合があります。
  • Azure OpenAIの場合、Databricksは不正行為モニタリングをオプトアウトしているため、プロンプトや応答はAzure OpenAIに保存されません。
  • 欧州連合(EU)のワークスペースの場合、LLMジャッジはEUでホストされているモデルを使用します。他のすべてのリージョンでは、米国でホストされているモデルを使用します。
  • パートナーを利用したAI機能を無効にすると、 LLMジャッジがパートナーを利用したモデルを呼び出すことができなくなります。 独自のモデルを提供することで、LLM ジャッジを引き続き使用できます。
  • LLM ジャッジは、顧客が生成AIエージェント/アプリケーションを評価するのを支援することを目的としており、ジャッジ LLM アウトプットを LLMのトレーニング、改善、または微調整に使用すべきではありません。

正確さを判断する

Databricks は、以下の方法で審査員の質を継続的に向上させています。

  • 人間の専門家の判断に対する 研究の検証
  • メトリクス追跡 : コーエンのカッパ、精度、F1 スコア
  • 学術データと実世界のデータセットを用いた 多様なテスト

詳細については、 LLM 審査員の改善に関する Databricks ブログを参照してください。

コードベースのスコアラー

カスタム コード ベースのスコアラーは、GenAI アプリケーションの品質を測定する方法を正確に定義するための究極の柔軟性を提供します。単純なヒューリスティック、高度なロジック、プログラムによる評価など、特定のビジネスユースケースに合わせてカスタマイズされた評価メトリックを定義できます。

次のシナリオではカスタム スコアラーを使用します。

  1. カスタムヒューリスティックまたはコードベースの評価メトリクスを定義します。
  2. アプリのトレースのデータが組み込みの LLM ジャッジにマッピングされる方法をカスタマイズします。
  3. 評価には、Databricks がホストする LLM ジャッジではなく、独自の LLM を使用します。
  4. カスタム LLM 審査員によって提供される以上の柔軟性と制御が必要なその他のユースケース。

「カスタム コード ベースのスコアラーを作成する」を参照してください。