# 評価結果

> [!WARNING]
> これは進行中の機能です。

Hubは、モデルの評価結果を追跡するための分散型システムを提供しています。ベンチマークデータセットがリーダーボードをホストし、モデルリポジトリに保存された評価スコアは、モデルページとベンチマークのリーダーボードの両方に自動的に表示されます。

## ベンチマークデータセット

Datasetリポジトリは**Benchmarks**（例: [MMLU-Pro](https://huggingface.co/datasets/TIGER-Lab/MMLU-Pro)、[HLE](https://huggingface.co/datasets/cais/hle)、[GPQA](https://huggingface.co/datasets/Idavidrein/gpqa)）として定義できます。これらは「Benchmark」タグを表示し、Hub全体からモデルリポジトリの評価結果を自動的に集約して、上位モデルのリーダーボードを表示します。

![Benchmark Dataset](https://huggingface.co/huggingface/documentation-images/resolve/main/evaluation-results/benchmark-preview.png)

## モデル評価結果

評価スコアは、`.eval_results/`フォルダ内のYAMLファイルとしてモデルリポジトリに保存されます。これらの結果は:

- ベンチマークリーダーボードへのリンク付きでモデルページに表示されます
- ベンチマークデータセットのリーダーボードに集計されます
- PRを通じて提出でき、「コミュニティ提供」としてマークされます

![Model Evaluation Results](https://huggingface.co/huggingface/documentation-images/resolve/main/evaluation-results/eval-results-previw.png)

### 評価結果の追加

モデルに評価結果を追加するには、`.eval_results/`フォルダにYAMLファイルを含むPRをモデルのリポジトリに提出できます。

モデルリポジトリの`.eval_results/*.yaml`にYAMLファイルを作成します:

```yaml
- dataset:
    id: cais/hle                  # Required. Hub dataset ID (must be a Benchmark)
    task_id: default              # Required. ID of the Task, as defined in the dataset's eval.yaml
    revision: <hash>              # Optional. Dataset revision hash
  value: 20.90                    # Required. Metric value
  verifyToken: <token>            # Optional. Cryptographic proof of auditable evaluation
  date: "2025-01-15"              # Optional. ISO-8601 date or datetime of when the eval was run (defaults to git commit time)
  source:                         # Optional. Attribution for this result, for instance a repo containing output traces or a Paper
    url: https://huggingface.co/spaces/SaylorTwift/smollm3-mmlu-pro  # Required if source provided
    name: Eval traces             # Optional. Display name
    user: SaylorTwift             # Optional. HF username/org
  notes: "no-tools"               # Optional. Details about the evaluation setup (e.g., "tools", "no-tools", etc.)
```

または、必須属性のみで:

```yaml
- dataset:
    id: Idavidrein/gpqa
    task_id: gpqa_diamond
  value: 0.412
```

結果は、YAMLファイル内のメタデータに基づいてバッジを表示します:

| バッジ | 条件 |
|-------|-----------|
| 検証済み | `verifyToken` が有効であること（HF Jobs で inspect-ai を使用して評価が実行されたこと） |
| コミュニティ | 結果はオープンなPR経由で提出されました（mainにマージされていません） |
| リーダーボード | ベンチマークデータセットへのリンク |
| ソース | 評価ログまたは外部ソースへのリンク |

このデータのフォーマットに関する詳細については、[Eval Results](https://github.com/huggingface/hub-docs/blob/main/eval_results.yaml)の仕様を参照してください。

### コミュニティの貢献

誰でもPull Requestを通じて、任意のモデルに評価結果を提出できます:

1. モデルページに移動し、"Community"タブをクリックして、Pull Request を開きます。
3. 結果を記載した`.eval_results/*.yaml`ファイルを追加します。
4. PRがオープンしている間、モデルページには「コミュニティ提供」と表示されます。

モデルの評価に関するヘルプについては、[Inspectによるモデルの評価](https://huggingface.co/docs/inference-providers/guides/evaluation-inspect-ai)ガイドを参照してください。Inspectからの評価ログは、[HF Storage Buckets](./storage-buckets-integrations#inspect-ai)に直接書き込むことができます。

> [!TIP]
> コミュニティスコアは、PRがオープンしている間に表示されます。スコアに異議がある場合、モデルの作成者はPRをクローズしてスコアを削除できます。目標は、検証済みスコアを通じて完全に再現可能な標準を構築する過程で、既存の評価データを透明に提示することです。

### リーダーボードからモデルを非表示にする

ベンチマークの管理者は、例えば報告された結果に異議がある場合など、リーダーボードからモデルを非表示にできます。

- ベンチマークデータセットのページでは、メンテナーは各リーダーボード行のトグルを使用して、モデルを非表示にしたり表示に戻したりできます。非表示にされたモデルはメニューにリスト表示されるため、後で復元できます。
- Hidingは、ベンチマークのすべてのタスクにわたってモデルに適用されます。
- 非公開モデルはパブリックリーダーボードから削除され、残りのモデルは再ランキングされます。
- モデルページでは、そのベンチマークの結果は公開されなくなりました。

## ベンチマークの登録

データセットをベンチマークとして登録するには:

1. 評価データを含むデータセットリポジトリを作成します
2. リポジトリのルートにベンチマーク設定を含む`eval.yaml`ファイルを追加し、以下で定義されている仕様に従ってください。
3. ファイルはプッシュ時に検証されます
4. (**Beta**) 連絡してください。許可リストに追加します。

これらのベンチマークに例があります: [GPQA](https://huggingface.co/datasets/Idavidrein/gpqa/blob/main/eval.yaml)、[MMLU-Pro](https://huggingface.co/datasets/TIGER-Lab/MMLU-Pro/blob/main/eval.yaml)、[HLE](https://huggingface.co/datasets/cais/hle/blob/main/eval.yaml)、[GSM8K](https://huggingface.co/datasets/openai/gsm8k/blob/main/eval.yaml)。

## Eval.yaml仕様

`eval.yaml` には、以下のフィールドを含める必要があります。

- `name` — ベンチマークの人間が読みやすい表示名（例: `"Humanity's Last Exam"`）。
- `description` — ベンチマークが測定する内容の短い説明。
- `tasks[]` — このベンチマークで定義されているタスク（サブリーダーボード）のリスト（詳細は下記を参照）。

各`tasks[]`項目の必須フィールド:

- `id` — タスクの一意な識別子です（例: `"gpqa_diamond"`）。1つのベンチマークで複数のタスクを定義でき、それぞれが独自のリーダーボードを生成します。各タスクに対して、リーダーボードの識別子を自由に選択してください。

各`tasks[]`項目の任意フィールド:

- `config` — 評価対象の Hugging Face データセットの設定（例: `"default"`）。デフォルトでは、データセットのデフォルト設定が使用されます。
- `split` — 評価対象の Hugging Face データセットの分割（例: `"test"`）。デフォルトは `"test"` です。

`evaluation_framework: inspect-ai`を設定する場合、以下のフィールドも設定する必要があります。

- `field_spec` — 入力および出力フィールドの仕様。`input`、`target`、`choices`、および任意の`input_image`サブフィールドで構成されています。詳細は[ドキュメント](https://inspect.aisi.org.uk/tasks.html#hugging-facehttps://inspect.aisi.org.uk/tasks.html#hugging-face)を参照してください。
- `solvers` — AIモデルを使用して入力から出力へ変換するためのソルバーです。シンプルなシステムプロンプトから自己批判ループまで、多様な形式があります。詳細は[ドキュメント](https://inspect.aisi.org.uk/solvers.html)を参照してください。
- `scores` — 使用されたスコーラー。スコーラーは、データセットで定義されたターゲットに対して、ソルバーが正しい出力をどの程度見つけることに成功したかを判定します。詳細は[ドキュメント](https://inspect.aisi.org.uk/scorers.html)を参照してください。

オプションのフィールド:

- `evaluation_framework` — このベンチマークの正規な評価フレームワーク識別子です。これは Hugging Face チームが管理する列挙型です。独自のものをリストに[こちら](https://github.com/huggingface/huggingface.js/blob/main/packages/tasks/src/eval.ts)から追加できます。ベンチマークごとにサポートされるフレームワークは1つだけです。
- `leaderboard.base_models_only` — ベンチマークのリーダーボードがデフォルトでベースモデルのみを表示するかどうか。デフォルト値は `true` です。デフォルトでベースモデル以外のモデルも含めるには `false` に設定してください。これは、関連性の高い提出物の多くがベースモデルとして分類されていない場合（ONNX として配布されるロボティクス・ポリシーなど）に有用です。

最小限の例（必須フィールドのみ）：

```yaml
name: MathArena AIME 2026
description: The American Invitational Mathematics Exam (AIME).
evaluation_framework: math-arena

tasks:
  - id: MathArena/aime_2026
```
拡張例:

```yaml
name: MathArena AIME 2026
description: The American Invitational Mathematics Exam (AIME).
evaluation_framework: "math-arena"

leaderboard:
  base_models_only: false

tasks:
  - id: MathArena/aime_2026
    config: default
    split: test
```

拡張例（`"inspect-ai"`固有）：

```yaml
name: Humanity's Last Exam
description: >
  Humanity's Last Exam (HLE) is a multi-modal benchmark at the frontier of human
  knowledge, designed to be the final closed-ended academic benchmark of its
  kind with broad subject coverage. Humanity's Last Exam consists of 2,500
  questions across dozens of subjects, including mathematics, humanities, and
  the natural sciences. HLE is developed globally by subject-matter experts and
  consists of multiple-choice and short-answer questions suitable for automated
  grading.
evaluation_framework: "inspect-ai"

tasks:
  - id: hle
    config: default
    split: test

    field_spec:
      input: question
      input_image: image
      target: answer

    solvers:
      - name: system_message
        args:
          template: |
            Your response should be in the following format:
            Explanation: {your explanation for your answer choice}
            Answer: {your chosen answer}
            Confidence: {your confidence score between 0% and 100% for your answer}
      - name: generate

    scorers:
      - name: model_graded_fact
        args:
          model: openai/o3-mini
```

