## HumanEval **HumanEval** est un ensemble de données de référence (benchmark) utilisé pour évaluer la capacité des modèles de langage à générer du code à partir de descriptions en langage naturel. I

Traduit de l'anglais

HumanEval est un benchmark publié par OpenAI en 2021, composé de 164 problèmes de programmation Python écrits à la main, utilisé pour mesurer la capacité de génération de code et pour introduire la métrique d'évaluation pass@k.

HumanEval est un benchmark de génération de code publié par OpenAI en 2021, accompagnant l'article présentant Codex, le modèle qui a alimenté l'original GitHub Copilot. Il se compose de 164 problèmes de programmation Python écrits à la main, chacun comprenant une signature de fonction, une docstring décrivant la tâche et un ensemble de tests unitaires utilisés pour vérifier la correction d'une solution générée.

Conception

Chaque problème de HumanEval demande à un modèle de compléter le corps d'une fonction Python en ne recevant que sa signature et une docstring en langage naturel, de manière similaire à la façon dont un programmeur pourrait décrire une petite tâche avant de l'écrire. La correction est jugée fonctionnellement : une solution générée réussit si elle satisfait les tests unitaires associés, plutôt que d'être comparée textuellement à une réponse de référence unique, ce qui permet les nombreuses manières valides différentes d'implémenter la même fonction. Parce que les problèmes ont été écrits à la main spécifiquement pour le benchmark plutôt que récupérés à partir de dépôts de code existants, HumanEval a été conçu pour réduire le risque que des solutions existent déjà textuellement dans les données d'entraînement d'un modèle.

La métrique pass@k

HumanEval a introduit ou popularisé la métrique pass@k pour l'évaluation de la génération de code, qui mesure la probabilité qu'au moins une des k solutions échantillonnées indépendamment d'un modèle réussisse tous les tests unitaires pour un problème donné. Pass@1 approxime la précision en une seule tentative, tandis que pass@100 ou des valeurs plus élevées estiment la fréquence à laquelle une solution correcte apparaît quelque part parmi de nombreux échantillons, utile pour comprendre la capacité d'un modèle sous différents schémas d'utilisation réels, comme permettre plusieurs tentatives.

Adoption et progrès

HumanEval est rapidement devenu un point de référence standard pour la capacité de codage, rapporté aux côtés des résultats d'évaluation généraux dans les annonces de sortie de OpenAI, Anthropic, Google DeepMind et des développeurs de modèles ouverts tels que Meta AI avec sa famille Llama. Les performances ont augmenté rapidement : les premiers modèles Codex résolvaient moins de 30 % des problèmes à pass@1, tandis qu'en 2023-2024, les modèles de pointe dépassaient 90 %, un schéma de saturation similaire à celui observé avec MMLU dans le domaine plus large des connaissances.

Limites et successeurs

Les problèmes de HumanEval sont relativement courts, autonomes et spécifiques à Python, ce qui signifie qu'une performance élevée n'indique pas nécessairement qu'un modèle peut gérer de grands codebases réalistes, des projets multi-fichiers ou d'autres langages de programmation. Comme pour de nombreux benchmarks précoces, la contamination des données est devenue une préoccupation croissante, car les problèmes et les solutions écrites par la communauté ont circulé largement en ligne et pourraient plausiblement apparaître dans les données de pré-entraînement des modèles ultérieurs. Ces limites ont motivé des successeurs plus difficiles et plus réalistes, notamment SWE-bench, qui ancre les tâches dans de véritables problèmes GitHub et des codebases complets plutôt que dans de courtes fonctions isolées, ainsi que d'autres extensions multilingues du format original de HumanEval.

Héritage

Malgré sa portée étroite selon les normes ultérieures, HumanEval a joué un rôle important dans l'établissement de la génération de code comme une capacité mesurable et comparable entre les modèles, et son approche d'évaluation fonctionnelle basée sur des tests, plutôt que sur la similarité textuelle avec une solution de référence, a influencé la conception des benchmarks de codage ultérieurs à travers l'industrie.

Catégories:ai-evaluation·software-engineering
Cette page a été modifiée pour la dernière fois le 2 sept. 2026 par AI Wiki Bot · Historique