---
title: "instruct-eval vs lm-evaluation-harness"
type: "comparison"
canonical_url: "https://www.graphcanon.com/compare/declare-lab-instruct-eval-vs-eleutherai-lm-evaluation-harness"
tools: ["declare-lab-instruct-eval", "eleutherai-lm-evaluation-harness"]
---

# instruct-eval vs lm-evaluation-harness

*GraphCanon updated Aug 7, 2026*

## Verdict

Pick instruct-eval if key facts about instruct-eval; pick lm-evaluation-harness if lm-evaluation-harness is a Python framework for evaluating language models in various parallelism modes using different checkpoint formats, compatible with the Megatron-LM backend.

[instruct-eval](https://declare-lab.github.io/instruct-eval/) reports 552 GitHub stars, 45 forks, and 24 open issues, last pushed Mar 10, 2024. [lm-evaluation-harness](https://www.eleuther.ai) has 14k stars, 3.5k forks, and 938 open issues, last pushed Jul 13, 2026. Figures are from public GitHub metadata via [instruct-eval's repository](https://github.com/declare-lab/instruct-eval) and [lm-evaluation-harness's repository](https://github.com/EleutherAI/lm-evaluation-harness).

| | [instruct-eval](/tools/declare-lab-instruct-eval.md) | [lm-evaluation-harness](/tools/eleutherai-lm-evaluation-harness.md) |
| --- | --- | --- |
| Tagline | Quantitative evaluation for instruction-tuned language models | A framework for few-shot evaluation of language models. |
| Stars | 552 | 13,560 |
| Forks | 45 | 3,467 |
| Open issues | 24 | 938 |
| Language | Python | Python |
| Adopt for | Key facts about instruct-eval | lm-evaluation-harness is a Python framework for evaluating language models in various parallelism modes using different checkpoint formats, compatible with the Megatron-LM backend. |
| Persona | - | - |
| Runtime | - | - |
| License | The tool is distributed under Apache-2.0 license | MIT |
| Categories | Evaluation & Observability | Evaluation & Observability |

## Trust and health

_Sourced signals - not a safety guarantee. No winner column._

| | [instruct-eval](/tools/declare-lab-instruct-eval.md) | [lm-evaluation-harness](/tools/eleutherai-lm-evaluation-harness.md) |
| --- | --- | --- |
| Maintenance | Dormant (18%) | Active (82%) |
| Days since push | 879d | 24d |
| Open issues (now) | 24 | 938 |
| Full report | [trust report](/tools/declare-lab-instruct-eval/trust.md) | [trust report](/tools/eleutherai-lm-evaluation-harness/trust.md) |

## Decision facts: instruct-eval

- **Requirements:** Min 8 GB RAM; Requires Python environment setup and specific dependencies as outlined in the repository's documentation.
- **Adopt for:** Key facts about instruct-eval
- **License detail:** The tool is distributed under Apache-2.0 license

## Decision facts: lm-evaluation-harness

- **Adopt for:** lm-evaluation-harness is a Python framework for evaluating language models in various parallelism modes using different checkpoint formats, compatible with the Megatron-LM backend.

## Choose when

### Choose instruct-eval if…

- License: instruct-eval is Apache-2.0, lm-evaluation-harness is MIT.
- Requirements: Min 8 GB RAM; Requires Python environment setup and specific dependencies as outlined in the repository's documentation..
- Tags unique to instruct-eval: benchmarking, evaluation, instruct-tuning, llm.
- When you need to quantitatively evaluate the performance of instruction-tuned large language models such as Alpaca and Flan-T5 on held-out tasks.

### Choose lm-evaluation-harness if…

- License: lm-evaluation-harness is MIT, instruct-eval is Apache-2.0.
- Tags unique to lm-evaluation-harness: data-parallelism, evaluation-framework, expert-parallelism, language-model.
- - When you need to evaluate large language models across multiple GPUs in data or tensor parallel configurations.

## When NOT to use instruct-eval

- When primarily interested in general model evaluation without a focus on instruction-tuned LMs.
- If your primary interest lies in qualitative assessment rather than quantitative metrics.
- If you need support for non-HuggingFace Transformer models, as instruct-eval mainly supports models from the HuggingFace ecosystem.

## When NOT to use lm-evaluation-harness

- - If your evaluation setup requires pipeline parallelism not currently supported by this framework.

## Common questions

### What is the difference between instruct-eval and lm-evaluation-harness?

instruct-eval: Quantitative evaluation for instruction-tuned language models. lm-evaluation-harness: A framework for few-shot evaluation of language models.. See the comparison table for live GitHub stats and shared categories.

### When should I choose instruct-eval over lm-evaluation-harness?

Choose instruct-eval over lm-evaluation-harness when License: instruct-eval is Apache-2.0, lm-evaluation-harness is MIT; Requirements: Min 8 GB RAM; Requires Python environment setup and specific dependencies as outlined in the repository's documentation.; Tags unique to instruct-eval: benchmarking, evaluation, instruct-tuning, llm; When you need to quantitatively evaluate the performance of instruction-tuned large language models such as Alpaca and Flan-T5 on held-out tasks.

### When should I choose lm-evaluation-harness over instruct-eval?

Choose lm-evaluation-harness over instruct-eval when License: lm-evaluation-harness is MIT, instruct-eval is Apache-2.0; Tags unique to lm-evaluation-harness: data-parallelism, evaluation-framework, expert-parallelism, language-model; - When you need to evaluate large language models across multiple GPUs in data or tensor parallel configurations.

### When should I avoid instruct-eval?

When primarily interested in general model evaluation without a focus on instruction-tuned LMs. If your primary interest lies in qualitative assessment rather than quantitative metrics. If you need support for non-HuggingFace Transformer models, as instruct-eval mainly supports models from the HuggingFace ecosystem.

### When should I avoid lm-evaluation-harness?

- If your evaluation setup requires pipeline parallelism not currently supported by this framework.

### Is instruct-eval or lm-evaluation-harness more popular on GitHub?

lm-evaluation-harness has more GitHub stars (13,560 vs 552). Stars measure visibility, not whether either tool fits your constraints.

### Are instruct-eval and lm-evaluation-harness open source?

Yes - both are open-source projects on GitHub (instruct-eval: Apache-2.0, lm-evaluation-harness: MIT).

### Where can I find alternatives to instruct-eval or lm-evaluation-harness?

GraphCanon lists graph-backed alternatives at [instruct-eval alternatives](/tools/declare-lab-instruct-eval/alternatives) and [lm-evaluation-harness alternatives](/tools/eleutherai-lm-evaluation-harness/alternatives) ([instruct-eval markdown twin](/tools/declare-lab-instruct-eval/alternatives.md), [lm-evaluation-harness markdown twin](/tools/eleutherai-lm-evaluation-harness/alternatives.md)), ranked by typed relationship edges rather than popularity votes.

### Is there a machine-readable version of this comparison?

Yes. The markdown twin at [this comparison](/compare/declare-lab-instruct-eval-vs-eleutherai-lm-evaluation-harness.md) mirrors this page for agents and LLM crawlers, with the same stats table and FAQ answers.

### Which is better maintained, instruct-eval or lm-evaluation-harness?

instruct-eval: Dormant. lm-evaluation-harness: Active. Compare maintenance labels, days since push, and release cadence in the trust section below - stars alone do not measure maintenance.

### Where are the full trust reports for instruct-eval and lm-evaluation-harness?

GraphCanon publishes per-repo trust reports with dated maintenance, provenance, and scan summaries: [instruct-eval trust report](/tools/declare-lab-instruct-eval/trust); [lm-evaluation-harness trust report](/tools/eleutherai-lm-evaluation-harness/trust).

---

**Machine-readable endpoints**

- JSON: [`/api/graphcanon/graph?tool=declare-lab-instruct-eval`](/api/graphcanon/graph?tool=declare-lab-instruct-eval)
- LLM index: [/llms.txt](/llms.txt)
- Full corpus: [/llms-full.txt](/llms-full.txt)

_GraphCanon - The knowledge graph for AI development. https://www.graphcanon.com/_
