SWE-MERA: A Dynamic Benchmark for Agenticly Evaluating Large Language Models on Software Engineering Tasks

📄 arXiv: 2507.11059v2 📥 PDF

作者: Pavel Adamenko, Mikhail Ivanov, Aidar Valeev, Rodion Levichev, Pavel Zadorozhny, Ivan Lopatin, Dmitry Babayev, Alena Fenogenova, Valentin Malykh

分类: cs.SE, cs.AI, cs.CL

发布日期: 2025-07-15 (更新: 2025-07-17)


💡 一句话要点

SWE-MERA:用于Agent评估LLM软件工程能力的动态基准

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 软件工程 大型语言模型 基准测试 动态评估 代码生成 代码修复 数据污染 质量验证

📋 核心要点

  1. 现有SWE-bench基准存在严重数据污染和测试用例不足问题,无法有效评估LLM在软件工程任务中的能力。
  2. SWE-MERA通过自动化收集GitHub真实问题并进行严格质量验证,构建动态更新、高质量的基准测试。
  3. 实验表明,SWE-MERA能够有效区分不同LLM在软件工程任务上的性能,具有很强的判别能力。

📝 摘要(中文)

大型语言模型(LLM)在软件工程领域的快速发展揭示了现有基准测试的局限性,特别是广泛使用的SWE-bench数据集。最近的研究发现SWE-bench存在严重的数据污染问题,例如,32.67%的成功补丁涉及直接的解决方案泄露,31.08%的成功是由于测试用例不足。我们推出了SWE-MERA,这是一个动态、持续更新的基准,旨在通过自动收集真实的GitHub问题和严格的质量验证来解决这些根本性挑战。我们的方法实现了一个可靠的流程,确保质量,同时最大限度地降低污染风险,从而产生大约10,000个潜在任务,目前有300个样本可用。使用Aider编码代理进行的评估表明,其在最先进的模型中具有很强的区分能力。我们报告了在2024年9月至2025年6月期间收集的任务上评估的十几个最新LLM的性能。

🔬 方法详解

问题定义:现有软件工程基准测试,如SWE-bench,存在严重的数据泄露和测试用例不足的问题,导致对大型语言模型(LLM)在软件工程任务中的评估不准确。这些问题使得模型能够在没有真正理解问题的情况下,通过记忆或简单的模式匹配来获得高分,从而掩盖了其在实际应用中的不足。

核心思路:SWE-MERA的核心思路是通过构建一个动态、持续更新的基准测试,来解决现有基准测试的数据污染和测试用例不足的问题。它通过自动化地从GitHub收集真实的软件工程问题,并进行严格的质量验证,来确保基准测试的质量和可靠性。这种动态更新的机制可以有效地避免数据泄露,并提供更具挑战性的测试用例。

技术框架:SWE-MERA的整体框架包括以下几个主要阶段:1) 问题收集:自动化地从GitHub收集潜在的软件工程问题。2) 质量验证:对收集到的问题进行严格的质量验证,包括检查问题描述的清晰度、解决方案的正确性以及测试用例的充分性。3) 基准测试构建:将通过质量验证的问题添加到基准测试中,并定期更新基准测试的内容。4) 模型评估:使用基准测试来评估LLM在软件工程任务上的性能。

关键创新:SWE-MERA的关键创新在于其动态更新的机制和严格的质量验证流程。传统的基准测试通常是静态的,容易受到数据泄露的影响。而SWE-MERA通过定期更新基准测试的内容,可以有效地避免数据泄露,并提供更具挑战性的测试用例。此外,SWE-MERA的质量验证流程可以确保基准测试的质量和可靠性,从而提供更准确的评估结果。

关键设计:SWE-MERA的关键设计包括:1) 自动化问题收集:使用GitHub API自动化地收集潜在的软件工程问题,并使用自然语言处理技术对问题描述进行分析,以筛选出高质量的问题。2) 严格的质量验证:使用人工和自动化的方法对收集到的问题进行质量验证,包括检查问题描述的清晰度、解决方案的正确性以及测试用例的充分性。3) 动态更新机制:定期更新基准测试的内容,以避免数据泄露,并提供更具挑战性的测试用例。4) 多样化的评估指标:使用多种评估指标来评估LLM在软件工程任务上的性能,包括代码生成质量、代码修复能力和代码理解能力。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

SWE-MERA基准测试在十几个最新的LLM上进行了评估,任务收集时间跨越2024年9月至2025年6月。实验结果表明,SWE-MERA能够有效区分不同模型的性能,证明了其在评估LLM软件工程能力方面的判别力。该基准的动态更新机制和严格的质量验证流程,使其能够提供更可靠和准确的评估结果。

🎯 应用场景

SWE-MERA可用于评估和比较不同大型语言模型在软件工程任务中的能力,帮助研究人员和开发者选择合适的模型。它还可用于指导模型的训练和优化,提升模型在软件开发领域的应用效果。此外,SWE-MERA作为一个动态更新的基准,能够持续反映LLM在软件工程领域的发展水平。

📄 摘要(原文)

The rapid advancement of Large Language Models (LLMs) in software engineering has revealed critical limitations in existing benchmarks, particularly the widely used SWE-bench dataset. Recent studies have uncovered severe data contamination issues, e.g. SWE-bench reports 32.67% of successful patches involve direct solution leakage and 31.08% pass due to inadequate test cases. We introduce SWE-MERA, a dynamic, continuously updated benchmark designed to address these fundamental challenges through an automated collection of real-world GitHub issues and rigorous quality validation. Our approach implements a reliable pipeline that ensures quality while minimizing contamination risks, resulting in approximately 10,000 potential tasks with 300 samples currently available. Evaluation using the Aider coding agent demonstrates strong discriminative power in state-of-the-art models. We report performance across a dozen recent LLMs evaluated on tasks collected between September 2024 and June 2025.