Cette page est affichée en anglais. Une traduction française est en cours.
ConfigsJul 19, 2026·3 min de lecture

LM Evaluation Harness — Standardized LLM Benchmarking Framework

The standard framework by EleutherAI for evaluating language models on hundreds of benchmarks, used by the Open LLM Leaderboard and research labs worldwide to produce reproducible evaluation results.

Prêt pour agents

Installation agent prête

Cet actif peut être installé après choix du runtime, vérification du plan et exécution de la commande adaptée.

Native · 98/100Policy : autoriser
Surface agent
Tout agent MCP/CLI
Type
Skill
Installation
Single
Confiance
Confiance : Established
Point d'entrée
LM Evaluation Harness
Commande d'installation directe
npx -y tokrepo@latest install a682e826-8349-11f1-9bc6-00163e2b0d79 --target codex

À exécuter après confirmation du plan en dry-run.

Introduction

The LM Evaluation Harness is EleutherAI's framework for reproducible evaluation of language models across hundreds of academic benchmarks. It provides a unified interface to test any Hugging Face, OpenAI API, or custom model against standardized tasks, making it the backbone of the Open LLM Leaderboard and a standard tool in LLM research.

What LM Evaluation Harness Does

  • Evaluates language models on 400+ benchmarks including MMLU, HellaSwag, ARC, and GSM8K
  • Supports multiple model backends: Hugging Face, OpenAI API, vLLM, GGUF, and custom implementations
  • Handles few-shot prompting, chain-of-thought, and generation-based evaluation automatically
  • Produces reproducible results with deterministic sampling and standardized prompt formats
  • Enables custom task creation with a YAML-based configuration system

Architecture Overview

The harness separates evaluation into three components: Models (how to query the LM), Tasks (what to evaluate), and Metrics (how to score). Models implement a common interface for log-likelihood and generation requests. Tasks define prompt templates, few-shot examples, and answer parsing. The evaluation loop batches requests efficiently and computes metrics across the full dataset with configurable aggregation.

Self-Hosting & Configuration

  • Install via pip with optional extras for specific model backends
  • Run evaluations from the command line with model and task arguments
  • Configure tasks via YAML files specifying prompt format, metrics, and few-shot count
  • Use the Python API for programmatic evaluation in automated pipelines
  • Parallelize across GPUs with accelerate or distribute via the vLLM backend

Key Features

  • 400+ built-in evaluation tasks covering reasoning, knowledge, math, coding, and more
  • YAML-based task configuration for adding custom benchmarks without writing code
  • Support for chat-templated evaluation matching model-specific prompt formats
  • Caching and request deduplication for efficient repeated evaluations
  • Group-based evaluation for multi-task benchmarks like MMLU (57 subjects)

Comparison with Similar Tools

  • HELM (Stanford) — comprehensive but heavier framework; lm-eval is lighter and more widely adopted for quick benchmarking
  • OpenCompass — Chinese-focused evaluation suite; lm-eval covers primarily English benchmarks
  • Eleuther Harness vs Hugging Face evaluate — evaluate provides individual metrics; lm-eval provides the full orchestration pipeline
  • BigBench — Google's benchmark collection; lm-eval implements many BigBench tasks as evaluation targets
  • DeepEval — focuses on LLM application testing; lm-eval targets model-level academic benchmarks

FAQ

Q: Is this what powers the Open LLM Leaderboard? A: Yes. Hugging Face's Open LLM Leaderboard uses this harness to produce all benchmark scores.

Q: Can I evaluate API-based models like GPT-4? A: Yes. The harness supports OpenAI-compatible APIs and can evaluate any model accessible via HTTP endpoints.

Q: How do I add a custom evaluation task? A: Create a YAML config file defining the dataset source, prompt template, answer parsing logic, and metric. No Python code required for standard formats.

Q: Does it support multi-GPU evaluation? A: Yes. Use the accelerate integration or vLLM backend for distributed evaluation across multiple GPUs.

Sources

Fil de discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires