Why SWE-bench Verified no longer measures frontier coding capabilities

SWE-bench Verified is increasingly contaminated. We recommend SWE-bench Pro.

OpenAI
15 min readadvanced
--
View Original

Overview

The article discusses the limitations of the SWE-bench Verified benchmark in measuring frontier coding capabilities, highlighting issues of contamination and recommending the use of SWE-bench Pro for more reliable evaluations. It emphasizes the importance of uncontaminated evaluations in assessing model performance in autonomous software engineering tasks.

What You'll Learn

1

Why SWE-bench Verified is no longer a reliable measure for coding capabilities

2

How to identify contamination issues in benchmarking datasets

3

When to use SWE-bench Pro over SWE-bench Verified

Key Questions Answered

What are the main issues with SWE-bench Verified?
SWE-bench Verified has two major issues: tests that reject correct solutions due to flawed test cases and contamination from training on problems and solutions used in the benchmark. This contamination inflates scores and misrepresents model capabilities.
How does contamination affect model evaluation?
Contamination occurs when models are trained on data that includes the benchmark problems, leading to inflated performance metrics. This means improvements in scores may not reflect true advancements in coding capabilities.
What is the recommendation for model developers regarding SWE-bench?
The article recommends that model developers stop reporting SWE-bench Verified scores due to its contamination issues and instead use SWE-bench Pro, which is less affected by these problems.

Key Statistics & Figures

Improvement in SWE-bench Verified scores
From 74.9% to 80.9% in the last 6 months
This statistic highlights the slowing progress in model capabilities as measured by SWE-bench Verified.
Percentage of audited problems with flawed test cases
59.4%
This indicates a significant issue with the reliability of the SWE-bench Verified benchmark.

Key Actionable Insights

1
Model developers should avoid using contaminated benchmarks for evaluation to ensure accurate performance metrics.
Using benchmarks that are publicly available can lead to contamination, as models may have been trained on similar data. This can misrepresent a model's true capabilities.
2
Invest in creating original, privately authored benchmarks to reduce contamination risks.
Privately authored tasks by domain experts can help ensure that evaluation metrics reflect genuine improvements in model capabilities.
3
Conduct thorough audits of benchmark datasets to identify and rectify flawed test cases.
Auditing can help uncover issues that lead to incorrect evaluations, ensuring that benchmarks accurately measure model performance.

Common Pitfalls

1
Using benchmarks sourced from publicly available material can lead to contamination risks.
This happens because publicly available data may inadvertently be included in training datasets, leading to inflated performance metrics.
2
Automated scoring systems may fail to accurately evaluate model performance.
Perfect test cases should verify correct functionality without being overly specific, which is challenging to achieve and requires extensive human labeling.