Hub documentation
Résultats d'évaluation
Résultats d'évaluation
Il s'agit d'une fonctionnalité en cours de développement.
Le Hub fournit un système décentralisé pour le suivi des résultats d’évaluation des modèles. Les jeux de données de référence hébergent des classements, et les dépôts de modèles stockent les scores d’évaluation qui apparaissent automatiquement à la fois sur la page du modèle et sur le classement de référence.
Jeux de données de référence
Les dépôts de jeux de données peuvent être définis comme des Benchmarks (par exemple, MMLU-Pro, HLE, GPQA). Ils affichent un tag « Benchmark » et agrègent automatiquement les résultats d’évaluation issus des dépôts de modèles sur le Hub, tout en affichant un classement des meilleurs modèles.

Résultats d'évaluation du modèle
Les scores d'évaluation sont stockés dans les dépôts de modèles sous forme de fichiers YAML dans le dossier .eval_results/. Ces résultats :
- Apparaître sur la page du modèle avec des liens vers le classement des benchmarks
- Sont agrégées dans les classements du jeu de données de référence
- Peut être soumis via des PR et marqué comme « fourni par la communauté »

Ajout des résultats d'évaluation
Pour ajouter des résultats d'évaluation à un modèle, vous pouvez soumettre une PR au dépôt du modèle avec un fichier YAML dans le dossier .eval_results/.
Créez un fichier YAML dans .eval_results/*.yaml dans votre dépôt de modèle :
- 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.)En revanche, avec uniquement les attributs requis :
- dataset:
id: Idavidrein/gpqa
task_id: gpqa_diamond
value: 0.412Les résultats affichent des badges en fonction de leurs métadonnées dans le fichier YAML :
| Badge | Condition |
|---|---|
| vérifié | Un verifyToken est valide (l'évaluation a été exécutée dans HF Jobs avec inspect-ai) |
| communauté | Résultat soumis via une PR ouverte (non fusionné dans main) |
| classement | Liens vers le jeu de données de référence |
| source | Liens vers les journaux d'évaluation ou la source externe |
Pour plus de détails sur la façon de formater ces données, consultez les spécifications Eval Results.
Contributions de la communauté
Toute personne peut soumettre des résultats d’évaluation pour n’importe quel modèle via une Pull Request :
- Accédez à la page du modèle, cliquez sur l’onglet Community et ouvrez une Pull Request.
- Ajoutez un fichier
.eval_results/*.yamlcontenant vos résultats. - La PR apparaîtra comme « fournie par la communauté » sur la page du modèle tant qu'elle est ouverte.
Pour de l'aide à l'évaluation d'un modèle, consultez le guide Evaluation of models with Inspect. Les journaux d'évaluation d'Inspect peuvent être écrits directement dans les HF Storage Buckets.
Les scores de la communauté sont visibles tant que la PR est ouverte. Si un score est contesté, l’auteur du modèle peut fermer la PR pour le retirer. L’objectif est de rendre transparents les données d’évaluation existantes tout en s’orientant vers une norme entièrement reproductible grâce aux scores vérifiés.
Masquer des modèles d'un tableau de classement
Les mainteneurs de benchmarks peuvent masquer un modèle de leur tableau de classement, par exemple s’ils contestent les résultats déclarés :
- Sur la page du jeu de données de référence, les mainteneurs peuvent utiliser le commutateur de chaque ligne du classement pour masquer ou afficher un modèle. Les modèles masqués sont répertoriés dans un menu afin de pouvoir être restaurés ultérieurement.
- Le masquage s'applique au modèle pour toutes les tâches du benchmark.
- Les modèles cachés sont retirés du classement public et les modèles restants sont reclassés.
- Sur la page du modèle, les résultats de ce benchmark ne sont plus affichés publiquement.
Enregistrer un benchmark
Pour enregistrer votre jeu de données en tant que référence :
- Créer un dépôt de jeu de données contenant vos données d'évaluation
- Ajoutez un fichier
eval.yamlà la racine du dépôt avec votre configuration de benchmark, conformément à la spécification définie ci-dessous. - Le fichier est validé lors de la poussée
- (Beta) Contactez-nous pour que nous puissions l'ajouter à la liste d'autorisation.
Des exemples peuvent être trouvés dans ces benchmarks : GPQA, MMLU-Pro, HLE, GSM8K.
Spécification de Eval.yaml
Le fichier eval.yaml doit contenir les champs suivants :
name— Nom d’affichage lisible par l’humain pour le benchmark (par ex."Humanity's Last Exam").description— Brève description de ce que mesure le benchmark.evaluation_framework— Identifiant du cadre d’évaluation canonique pour ce benchmark. Il s’agit d’une énumération maintenue par l’équipe Hugging Face. Ajoutez le vôtre à la liste ici. Un seul cadre est pris en charge par benchmark.tasks[]— Liste des tâches (sous-tableaux de classement) définies par ce benchmark (voir ci-dessous).
Champs obligatoires dans chaque élément tasks[] :
id— Identifiant unique de la tâche. (par ex."gpqa_diamond"). Un même benchmark peut définir plusieurs tâches, chacune produisant son propre classement. N’hésitez pas à choisir un identifiant de classement pour chaque tâche.
Champs facultatifs dans chaque élément tasks[] :
config— Configuration du jeu de données Hugging Face à évaluer (par ex."default"). Par défaut, la configuration par défaut du jeu de données est utilisée.split— Partie du jeu de données Hugging Face à évaluer (par ex."test"). Par défaut,"test".
Lorsque evaluation_framework: inspect-ai est défini, il est également nécessaire de définir les champs suivants :
field_spec— Spécification des champs d’entrée et de sortie. Composé des sous-champsinput,target,choiceset du sous-champ facultatifinput_image. Consultez la documentation pour plus de détails.solvers— Solves utilisés pour passer de l’entrée à la sortie à l’aide du modèle d’IA. Cela peut aller d’un simple prompt système à des boucles d’auto-critique. Consultez la documentation pour plus de détails.scores— Évaluateurs utilisés. Les évaluateurs déterminent si les solveurs ont réussi à trouver la bonne sortie pour la cible définie dans le jeu de données, et dans quelle mesure. Consultez la documentation pour plus de détails.
Exemple minimal (champs obligatoires uniquement) :
name: MathArena AIME 2026
description: The American Invitational Mathematics Exam (AIME).
evaluation_framework: math-arena
tasks:
- id: MathArena/aime_2026Exemple étendu :
name: MathArena AIME 2026
description: The American Invitational Mathematics Exam (AIME).
evaluation_framework: "math-arena"
tasks:
- id: MathArena/aime_2026
config: default
split: testExemple étendu (spécifique à "inspect-ai") :
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