Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsJul 19, 2026·3 min de lectura

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.

Listo para agents

Instalación lista para agent

Este activo puede instalarse después de elegir el runtime, revisar el plan y ejecutar el comando correspondiente.

Native · 98/100Política: permitir
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
LM Evaluation Harness
Comando de instalación directa
npx -y tokrepo@latest install a682e826-8349-11f1-9bc6-00163e2b0d79 --target codex

Ejecutar después de confirmar el plan con 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

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados