メインコンテンツへスキップ
LLM 評価ジョブは、W&B Multi-tenant Cloudプレビュー版として提供されています。プレビュー期間中は、コンピュートを無料で利用できます。詳細はこちら
このページでは、CoreWeave が管理するインフラストラクチャーを使用して、W&B Models 内のファインチューニングしたモデルに対し、一連の評価ベンチマークを実行するために LLM 評価ジョブ を使用する方法を説明します。公開アクセス可能な URL で提供されるホスト型 API モデルを評価する場合は、代わりに API ホスト型モデルを評価する を参照してください。あるいは、簡略化された クイックスタート を使って、公開 OpenAI モデルのエンドポイントに対して小規模なベンチマークを実行することもできます。

前提条件

  1. LLM評価ジョブの要件と制限事項を確認します。
  2. 一部のベンチマークを実行するには、チーム管理者が必要なAPIキーをチームスコープのシークレットとして追加する必要があります。評価ジョブの設定時には、どのチームメンバーでもそのシークレットを指定できます。要件については、評価モデルカタログを参照してください。
    • OpenAPI APIキー: スコアリングにOpenAIモデルを使用するベンチマークで使われます。ベンチマークを選択した後に Scorer API key フィールドが表示される場合は必須です。シークレット名は OPENAI_API_KEY である必要があります。
    • Hugging Face ユーザーアクセストークン: lingolylingoly2 など、1つ以上のアクセス制限付きHugging Faceデータセットへのアクセスが必要な一部のベンチマークで必須です。ベンチマークを選択した後に Hugging Face Token フィールドが表示される場合は必須です。APIキーには、該当するデータセットへのアクセス権が必要です。ユーザーアクセストークンおよびアクセス制限付きデータセットへのアクセスについては、Hugging Faceのドキュメントを参照してください。
  3. 評価結果用の新しいW&Bプロジェクトを作成します。プロジェクトのサイドバーで、Create new project をクリックします。
  4. モデルをVLLM互換形式でパッケージ化し、W&B Modelsにartifactとして保存します。それ以外の種類のartifactをベンチマークしようとすると失敗します。一つの方法については、このページの末尾にある例: モデルを準備するを参照してください。
  5. 各ベンチマークのドキュメントを確認し、その仕組みと個別の要件を理解してください。参考として、利用可能な評価ベンチマークのリファレンスには関連リンクが含まれています。

モデルを評価する

次の手順で、評価ジョブを設定して Launch します。
  1. W&B にログインし、プロジェクトのサイドバーで Launch をクリックします。LLM評価ジョブ ページが表示されます。
  2. Evaluate モデル チェックポイント をクリックして、評価ジョブを設定します。
  3. 評価結果の保存先となるプロジェクトを選択します。
  4. Model artifact セクションで、評価する準備済みモデルのプロジェクト、artifact、バージョンを指定します。
  5. Evaluations をクリックし、最大 4 つのベンチマークを選択します。
  6. スコアリングに OpenAI モデルを使用するベンチマークを選択すると、Scorer API key フィールドが表示されます。これをクリックし、OPENAI_API_KEY シークレットを選択します。必要に応じて、チーム管理者はこの drawer で Create secret をクリックしてシークレットを作成できます。
  7. Hugging Face の アクセス制限付きデータセット への access が必要なベンチマークを選択すると、Hugging Face token フィールドが表示されます。該当するデータセットへのアクセスをリクエスト してから、Hugging Face ユーザーアクセストークンを含むシークレットを選択します。
  8. 必要に応じて、Sample limit に正の整数を設定し、評価するベンチマークサンプルの最大数を制限します。設定しない場合は、タスク内のすべてのサンプルが含まれます。
  9. リーダーボードを自動的に作成するには、Publish results to leaderboard をクリックします。リーダーボードにはすべての評価が Workspace パネルにまとめて表示され、レポートで共有することもできます。
  10. Launch をクリックして評価ジョブを起動します。
  11. ページ上部の円形矢印アイコンをクリックして、最近の run のモーダルを開きます。評価ジョブは、他の最近の run と一緒に表示されます。完了した run の名をクリックすると単一 run ビューで開き、Leaderboard の link をクリックするとリーダーボードを直接開けます。詳細は、結果を表示する を参照してください。
最初のモデルを評価すると、次の評価ジョブを設定するときに、多くのフィールドに直近の値が事前入力されます。
この評価ジョブの例では、artifact に対して 2 つのベンチマークを実行しています。
artifact に対するモデル チェックポイント評価ジョブの例
このリーダーボードの例では、複数のモデルのパフォーマンスを複数のベンチマークタスクに対してまとめて可視化しています。
複数のベンチマークタスクに対する複数のモデルのパフォーマンスを可視化したリーダーボードの例

評価結果を確認する

宛先プロジェクトのワークスペースにある W&B Models で、評価ジョブの結果を確認します。
  1. ページ上部の円形矢印アイコンをクリックして、最近の run を表示するモーダルを開きます。ここでは、評価ジョブがプロジェクト内の他の run と一緒に表示されます。評価ジョブにリーダーボードがある場合は、Leaderboard をクリックして全画面で開くか、run 名をクリックしてプロジェクト内の単一 run ビューで開きます。
  2. 評価ジョブのトレースは、ワークスペースの Evaluations セクション、または Weave サイドバーパネルの Traces タブで確認できます。
  3. Overview タブをクリックすると、設定やサマリー メトリクスを含む評価ジョブの詳細情報を確認できます。
  4. Logs タブをクリックすると、評価ジョブのデバッグログを表示、検索、またはダウンロードできます。
  5. Files タブをクリックすると、コード、ログ、設定、その他の出力ファイルを含む評価ジョブのファイルを参照、表示、またはダウンロードできます。

リーダーボードをカスタマイズする

リーダーボードには、指定したプロジェクトに送信されたすべての評価ジョブの結果が表示されます。各評価ジョブの各ベンチマークが 1 行で表示され、列には トレース、入力値、出力値などの詳細が表示されます。リーダーボードの詳細については、Weave の Leaderboardsを参照してください。
リーダーボード上の結果にフィードバックするには、Feedback 列の絵文字アイコンまたはチャットアイコンをクリックします。
  • デフォルトでは、すべての評価ジョブが表示されます。左側の run selector を使用して、評価ジョブをフィルターまたは検索できます。
  • デフォルトでは、評価ジョブはグループ化されていません。1 つ以上の列でグループ化するには、Group アイコンをクリックします。グループの表示/非表示を切り替えたり、グループを展開してその Runs を表示したりできます。
  • デフォルトでは、すべてのオペレーションが表示されます。1 つのオペレーションだけを表示するには、All ops をクリックしてオペレーションを選択します。
  • 列で並べ替えるには、列見出しをクリックします。列の表示をカスタマイズするには、Columns をクリックします。
    • デフォルトでは、ヘッダーは 1 階層で構成されています。ヘッダーの深さを増やすと、関連するヘッダーをまとめて整理できます。
    • 個々の列を選択または選択解除して表示/非表示を切り替えるか、クリック 1 回ですべての列を表示または非表示にできます。
    • 列を固定すると、固定していない列より前に表示できます。

リーダーボードをエクスポートする

リーダーボードをエクスポートするには、次の手順を実行します。
  1. Columns ボタンの近くにあるダウンロードアイコンをクリックします。
  2. エクスポートサイズを抑えるため、デフォルトではトレースルートのみがエクスポートされます。完全なトレースをエクスポートするには、Trace roots only をオフにします。
  3. エクスポートサイズを抑えるため、デフォルトではフィードバックとコストはエクスポートされません。これらをエクスポートに含めるには、Feedback または Costs をオンにします。
  4. デフォルトのエクスポート形式は JSONL です。形式を変更するには、Export to file をクリックして形式を選択します。
  5. ブラウザーでリーダーボードをエクスポートするには、Export をクリックします。
  6. リーダーボードをプログラムからエクスポートするには、Python または cURL を選択し、Copy をクリックしてからスクリプトまたは command を実行します。

評価ジョブを再実行する

状況に応じて、評価ジョブを再実行したり、その設定を表示したりする方法が複数あります。
  • 直前の評価ジョブを再実行するには、モデルを評価する の手順に従います。保存先のプロジェクトを選択すると、前回選択したモデル artifact の詳細とベンチマークが自動的に入力されます。必要に応じて調整してから、評価ジョブを起動します。
  • プロジェクトの Runs タブまたは run selector から評価ジョブを再実行するには、run 名にカーソルを合わせて再生アイコンをクリックします。設定が事前入力された状態でジョブ設定ドロワーが表示されます。必要に応じて設定を調整し、Launch をクリックします。
  • 別のプロジェクトから評価ジョブを再実行するには、その設定をインポートします。
    1. モデルを評価する の手順に従います。保存先のプロジェクトを選択したら、Import configuration をクリックします。
    2. インポートする評価ジョブが含まれるプロジェクトを選択し、次にその評価ジョブの run を選択します。設定が事前入力された状態でジョブ設定ドロワーが表示されます。
    3. 必要に応じて設定を調整します。
    4. Launch をクリックします。

評価ジョブの設定をエクスポートする

run の Files タブから評価ジョブの設定をエクスポートします。
  1. 単一runビューで run を開きます。
  2. Files タブをクリックします。
  3. config.yaml の横にあるダウンロードボタンをクリックして、ローカルに保存します。

例: モデルを準備する

モデルを準備するには、まず W&B Models にモデルを読み込み、モデルの重みを vLLM 互換形式でパッケージ化して、結果を保存します。以下にその一例を示します。
import os
from transformers import AutoTokenizer, AutoModelForCausalLM

# モデルを読み込む
model_name = "your-model-name"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)

# vLLM互換フォーマットで保存する
save_dir = "path/to/save"
tokenizer.save_pretrained(save_dir)
model.save_pretrained(save_dir)

# W&B Models に保存する
import wandb
wandb_run = wandb.init(entity="your-entity-name", project="your-project-name")
artifact = wandb.Artifact(name="your-artifact-name")
artifact.add_dir(save_dir)
logged_artifact = wandb_run.log_artifact(artifact)
logged_artifact.wait()
wandb.finish()