Mosaic AIエージェント評価LLMジャッジリファレンス
プレビュー
この機能はパブリックプレビュー段階です。
この記事では、LLM Mosaic AIAgent Evaluation に組み込まれている各 ジャッジの詳細 (必要な入力や出力メトリクスなど) について説明します。また、 カスタム審査員によって作成された出力もカバーしています。
LLM ジャッジの概要については 、「エージェント評価による品質、コスト、および遅延の評価方法」を参照してください。
次の表に、組み込みのジャッジを示します。
審査員の氏名 |
ステップ |
審査員が評価する品質面 |
---|---|---|
|
レスポンス |
|
|
レスポンス |
|
|
レスポンス |
|
|
レスポンス |
|
|
検索 |
|
|
検索 |
|
|
検索 |
レスポンスのジャッジ
応答品質メトリクスは、アプリケーションがユーザーのリクエストにどの程度適切に応答しているかを評価します。 これらのメトリクスは、グラウンドトゥルースと比較したレスポンスの精度、取得したコンテキストを考慮してレスポンスが十分に根拠があるか(またはLLMが幻覚を見ているかどうか)、レスポンスが安全で有害な言葉がないかどうかなどの要素を評価します。
全体として、LLMは正確な答えを出しましたか?
correctness
LLMの裁判官は、エージェントによって生成された応答が事実上正確であり、提供されたグラウンドトゥルース応答と意味的に類似しているかどうかについて、二項評価と書面による理論的根拠を提供します。
correctness
に必要な入力
グラウンドトゥルース expected_response
が必要です。
入力評価セットには、次の列が必要です。
request
expected_response
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 response
または trace
も指定する必要があります。
重要
グラウンドトゥルース expected_response
には、正しい対応に必要な最小限の事実 のみ を含める必要があります。 別のソースから回答をコピーする場合は、回答を編集して、回答が正しいと見なされるために 必要 のないテキストを削除します。
必要な情報のみを含め、回答に厳密に必要でない情報を省略することで、Agent Evaluation は出力品質に関するより堅牢なシグナルを提供できます。
correctness
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問で、正しさが |
レスポンスはリクエストに関連していますか?
relevance_to_query
LLM ジャッジは、応答が入力要求に関連しているかどうかを判断します。
relevance_to_query
に必要な入力
グラウンドトゥルースは必要ありません。
入力評価セットには、次の列が必要です。
request
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 response
または trace
も指定する必要があります。
relevance_to_query
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問で、 |
応答は幻覚ですか、それとも取得したコンテキストに基づいていますか?
groundedness
LLM ジャッジは、生成された応答が取得されたコンテキストと事実上一致しているかどうかについて、バイナリ評価と書面による理論的根拠を返します。
groundedness
に必要な入力
グラウンドトゥルースは必要ありません。
入力評価セットには、次の列が必要です。
request
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 response
と retrieved_context[].content
のいずれかまたは両方を trace
または両方指定する必要があります。
groundedness
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問で、 |
エージェントの回答に有害な内容はありますか?
safety
LLMの裁判官は、生成された回答に有害または有害なコンテンツが含まれているかどうかについて、バイナリ評価と書面による根拠を返します。
safety
に必要な入力
グラウンドトゥルースは必要ありません。
入力評価セットには、次の列が必要です。
request
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 response
または trace
も指定する必要があります。
safety
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
|
検索のジャッジ
取得品質メトリクスは、入力リクエストに関連するドキュメントを見つける際の取得者のパフォーマンスを評価します。 これらのメトリクスは、次のような要素を評価します: レトリーバーは関連するチャンクを見つけましたか? 既知の関連文書のうち、いくつ見つかったか。 見つかった文書は、期待された回答を生成するのに十分でしたか?
リトリーバーは関連するチャンクを見つけたか
chunk-relevance-precision
LLM ジャッジは、レトリーバーによって返されるチャンクが入力リクエストに関連しているかどうかを判断します。精度は、返された関連するチャンクの数を返されたチャンクの合計数で割った値として計算されます。 たとえば、レトリーバーが 4 つのチャンクを返し、LLM ジャッジが返された 4 つのドキュメントのうち 3 つがリクエストに関連していると判断した場合、 llm_judged/chunk_relevance/precision
は 0.75 です。
llm_judged/chunk_relevance
に必要な入力
グラウンドトゥルースは必要ありません。
入力評価セットには、次の列が必要です。
request
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 retrieved_context[].content
または trace
も指定する必要があります。
llm_judged/chunk_relevance
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
各チャンクについて、 |
|
|
各チャンクについて、対応するレーティングに対する LLM の推論。 |
|
|
各チャンクについて、評価の計算でエラーが発生した場合、エラーの詳細がここに表示され、他の出力値はNULLになります。エラーがない場合、これはNULLです。 |
|
|
取得されたすべてのチャンクのうち関連するチャンクの割合を計算します。 |
評価セット全体について、次のメトリクスが報告されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問の平均値は |
レトリーバーは既知の関連文書をいくつ見つけましたか?
document_recall
は、返された関連ドキュメントの数を、グラウンド トゥルースに基づく関連ドキュメントの合計数で割った値として計算されます。 たとえば、2 つのドキュメントがグラウンド トゥルースに基づいて関連しているとします。 レトリーバーがこれらのドキュメントのいずれかを返す場合、 document_recall
0.5 です。 このメトリクスは、返されるドキュメントの合計数の影響を受けません。
このメトリクスは決定論的であり、LLM ジャッジは使用しません。
レトリーバーは、期待される応答を生成するのに十分なドキュメントを見つけましたか?
context_sufficiency
LLM ジャッジは、レトリーバが期待されるレスポンスを生成するのに十分なドキュメントを取得したか否かを判定します。
context_sufficiency
に必要な入力
グラウンドトゥルース・ expected_response
が必要です。
入力評価セットには、次の列が必要です。
request
expected_response
また、 mlflow.evaluate()
の呼び出しで model
引数を使用しない場合は、 retrieved_context[].content
または trace
も指定する必要があります。
context_sufficiency
の出力
各質問に対して、次のメトリクスが計算されます。
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
コンテキストの十分性が |
カスタムジャッジメトリクス
カスタムジャッジを作成して、ユースケースに固有の評価を実行できます。 詳細については、「 カスタム LLM ジャッジの作成」を参照してください。
カスタムジャッジによって生成される出力は、その assessment_type
、 ANSWER
、または RETRIEVAL
によって異なります。
ANSWER評価のためのカスタムLLMジャッジ
ANSWER評価用のカスタムLLMジャッジは、各質問の回答を評価します。
各評価で提供される出力:
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
|
|
|
LLMの書面による推論は、 |
|
|
このメトリクスの計算でエラーが発生した場合は、エラーの詳細がこちらに表示されます。 エラーがない場合、これは NULL です。 |
評価セット全体に対して、次のメトリクスが計算されます。
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問で、{assessment_name}が |
RETRIEVAL評価のためのカスタムLLMジャッジ
RETRIEVAL評価用のカスタムLLMジャッジは、すべての質問で取得された各チャンクを評価します。
各評価で提供される出力:
データフィールド |
タイプ |
説明 |
---|---|---|
|
|
各チャンク、 |
|
|
各チャンクについて、LLM は |
|
|
各チャンクについて、このメトリクスの計算でエラーが発生した場合、エラーの詳細はここに表示され、他の値はNULLです。エラーがない場合、これはNULLです。 |
|
|
取得されたすべてのチャンクのうち、カスタムジャッジが |
評価セット全体について報告されるメトリクス:
メトリクス名 |
タイプ |
説明 |
---|---|---|
|
|
すべての質問の平均値は |