- カスタム分析や可視化のために、メトリクスをスプレッドシートやノートブックに取り込みます。
- 評価結果を CI/CD パイプラインに組み込み、デプロイの可否判定に使用します。
- W&B のシートを持たない関係者と、Looker などの BI ツールや社内ダッシュボードを通じて結果を共有します。
- 複数のプロジェクトにまたがるスコアを集約する自動レポート パイプラインを構築します。
使用する API エンドポイント
GET /v2/{entity}/{project}/evaluation_runs: プロジェクト内の評価 run を一覧表示します。評価参照、モデル参照、または run ID によるフィルターを任意で指定できます。GET /v2/{entity}/{project}/evaluation_runs/{evaluation_run_id}: 単一の評価 run を取得し、そのモデル、評価参照、ステータス、タイムスタンプ、summary を取得します。POST /v2/{entity}/{project}/eval_results/query: 1 つ以上の評価について、グループ化された評価結果の行を取得します。各行について、モデル出力、スコア、必要に応じて解決済みのデータセット行 inputs を含む trial を返します。要求した場合は、集計された Scorer の統計も返します。GET /v2/{entity}/{project}/predictions/{prediction_id}: 個別の予測を取得し、その inputs、出力、およびモデル参照を返します。
api、パスワードには W&B APIキーを使用します。
前提条件
- Python 3.7 以降。
requestsライブラリ。pip install requestsでインストールしてください。WANDB_API_KEY環境変数に設定した W&B APIキー。wandb.ai/settings でキーを取得してください。
認証を設定する
評価 run の一覧表示
単一の評価 run を取得する
予測とスコアを取得する
eval_results/query エンドポイントを使用します。各行には、解決されたデータセットの入力、モデルの出力、個々の Scorer の結果が含まれます。行ごとの完全な詳細を取得するには、include_rows、include_raw_data_rows、resolve_row_refs を設定します。
集計されたスコアを取得する
eval_results/query エンドポイントでは、行ごとのデータではなく、集計した Scorer の統計情報を返すこともできます。include_summary を設定すると、バイナリ Scorer の合格率や連続値 Scorer の平均など、サマリーレベルのメトリクスを取得できます。
単一の予測を取得する
行ダイジェストの使い方
eval_results/query エンドポイント の各結果行には row_digest が含まれます。これは、位置ではなく内容に基づいて、評価データセット内の特定の入力を一意に識別するコンテンツハッシュです。行ダイジェストは、次のような用途で役立ちます。
- 評価間の比較: 同じデータセットに対して 2 つの異なるモデルを実行すると、同じダイジェストを持つ行は同じ入力を表します。
row_digestで結合すれば、異なるモデルがまったく同じタスクでどのような性能を示したかを比較できます。 - 重複排除: 同じタスクが複数の評価スイートに含まれている場合、ダイジェストを使ってそれを識別できます。
- 再現性: ダイジェストは内容に基づいて決まるため、誰かがデータセットの行を変更すると (指示テキスト、ルーブリック、その他のフィールドを変更すると) 、新しいダイジェストになります。2 つの評価 run で同一の入力が使用されたのか、それとも少し異なるバージョンが使用されたのかを確認できます。