--- id: lm-eval version: "0.4.12" license: MIT license_treatment: permissive maintenance: active --- # lm-eval — A framework for evaluating language models License: permissive · Maintenance: active · Downloads: 1.6M/mo ## What it is and what it does lm-eval is a standardized evaluation framework that runs language models against a collection of academic benchmarks and custom tasks. It abstracts away the boilerplate of loading models, preparing datasets, running inference, and computing metrics, letting researchers and practitioners focus on comparing model performance across consistent evaluation protocols. The package supports multiple inference backends, each installed as an optional extra to keep the base installation lean. Tasks are defined via YAML configuration files with Jinja2 templating for prompt design, and the CLI provides subcommands to list available tasks, validate configurations, and run evaluations. It powers the Open LLM Leaderboard and has been cited in hundreds of research papers. Use it for: - Benchmark a new model against standard tasks to compare performance with published results. - Evaluate fine-tuned or quantized variants of a base model to measure the impact of training changes. - Run custom evaluation tasks defined in YAML with domain-specific prompts and metrics. - Batch-evaluate multiple models across different inference backends to find speed/accuracy tradeoffs. - Reproduce leaderboard-style evaluations locally for internal model development. - Integrate evaluation into CI/CD pipelines to track model quality metrics across checkpoints. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Unified framework for evaluating generative language models against over 60 standard academic benchmarks with hundreds of task variants, supporting multiple model backends and inference engines. Yes. lm-eval is the de facto standard for language model evaluation, actively maintained, permissively licensed, and designed with low friction—base install is lightweight and model backends are optional. If you need to benchmark models against academic tasks or reproduce published results, this is the right tool. Install only if you have a model backend in mind and Python >=3.10. ## Install pip install lm-eval uv add lm-eval poetry add lm-eval ## Installing lm-eval Before you install: Low install friction with a pure-Python wheel distribution. Active maintenance with recent releases; last commit 2026-08-14. Base package is intentionally lightweight—model backends are installed separately via optional extras, reducing bloat for users who need only the evaluation framework. License in practice: MIT license (permissive) allows commercial and private use without restriction. No copyleft obligations; you can modify and redistribute under your own terms. Quickstart: pip install lm_eval[hf] lm-eval ls tasks lm-eval run --model hf --model_args pretrained=EleutherAI/gpt-j-6B --tasks hellaswag --device cuda:0 --batch_size 8 Requires Python >=3.10. Model backends must be installed separately via optional extras. Evaluation performance depends on available compute resources. Verify before relying: - Exact count of 'over 60' benchmarks and 'hundreds' of subtasks—documentation may have more precise numbers. - Performance characteristics (throughput, memory usage) for different model backends and batch sizes. - Compatibility matrix for specific model quantization methods and their installation requirements. - Whether multimodal evaluation (hf-multimodal, vllm-vlm) is production-ready or remains experimental. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 1.6M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags language model evaluation framework, LLM benchmark harness, generative model testing, academic benchmark suite, model evaluation tasks, language model assessment, LLM leaderboard evaluation, llm-evaluation, benchmarking, model-testing [View on SkillFed](https://skillfed.io/packages/lm-eval) · [View on PyPI](https://pypi.org/project/lm-eval/)