コードベースのスコアラーは、あなたが作成するPython関数です。 組み込みの LLM ジャッジやカスタム LLM ジャッジが評価ニーズに合わない場合に使用します。 たとえば、コード ベースのスコアラーを使用すると、次の機能を使用できます。
- カスタムヒューリスティックまたはプログラムによる評価メトリックを定義します。
- Databricks 組み込みの LLM ジャッジにトレース データをマップする方法をカスタマイズします。
- 評価には、独自の LLM (Databricks でホストされる LLM ジャッジではなく) を使用します。
- その他のユース ケースでは、 カスタム LLM ジャッジが提供するよりも柔軟性と制御性が必要です。
運用環境での開発と監視 の評価には 、同じコードベースのスコアラー を使用できます。
定義スタイルを選択する
MLflow では、コード ベースのスコアラーを定義する 2 つの方法がサポートされています。
| アプローチ | 次の場合に使用します。 | 生産監視 |
|---|---|---|
@scorer デコレータ |
ほとんどの場合。 推奨される開始点。 | サポートされます (Databricks ノートブックから定義および登録されている場合)。 |
Scorer クラス |
ステートフル スコアラー、複雑な初期化、または Pydantic フィールドが必要です。 | サポートされていません。 |
:::note 実稼働監視との互換性
運用監視では、 組み込みの LLM ジャッジ と @scorer装飾された機能がサポートされます。 クラスベースの Scorer サブクラスは、運用環境の監視では サポートされていません 。 運用環境でステートフル スコアラーが必要な場合は、 @scorer デコレーターを使用して、関数本体内の状態を管理します。
@scorer運用環境の監視で使用される装飾関数は、 Databricks ノートブックから定義および登録する必要があります。 監視サービスはリモート実行のために関数コードをシリアル化します。このシリアル化にはノートブック環境が必要です。 詳細については、「 カスタム スコアラー関数を使用する」を参照してください。
:::
その他のリソース
コードベースのスコアラーを開発 する - コードベースのスコアラーの開発ワークフローをステップ実行します。
コードベースのスコアラーの例 - 一般的なコードベースのスコアラー パターンをカバーする作業例。
開発中の GenAI アプリを評価する -
mlflow.genai.evaluate()がスコアラーをどのように使用するかを理解する。運用環境で GenAI アプリを監視 する - 継続的な監視のためにスコアラーをデプロイします。
コード ベースのスコアラー リファレンス - 署名、入力、出力、メトリックの名前付け、エラー処理、シークレットへのアクセスなど、
@scorerとScorerのリファレンス。