DevEval: 评估实际软件项目中的代码生成
通过新的基准测试 DevEval,我们评估了 8 种流行的大型语言模型在真实代码库中的编码能力,并发现这些模型的编码能力在真实世界的代码库中存在缺陷。
May, 2024
最近的大型语言模型 (LLMs) 的进展显著增强了它们的编码能力。然而,现有的基准主要关注编程的简化或隔离方面,如单文件代码生成或存储库问题调试,无法全面衡量真实世界编程活动引发的各种挑战。为此,我们提出了 DevBench,这是一个全面的基准,评估 LLMs 在软件开发生命周期的各个阶段,包括软件设计、环境设置、实施、验收测试和单元测试。DevBench 涵盖了广泛的编程语言和领域,具备高质量的数据收集,并为每个任务设计和验证了仔细设计的指标。经验证实证研究表明,包括 GPT-4-Turbo 在内的当前 LLMs 未能解决 DevBench 中提出的挑战。分析显示,模型在理解存储库中的复杂结构、管理编译过程和掌握高级编程概念方面存在困难。我们的发现为未来 LLMs 的真实世界编程应用的发展提供了可行的洞察。我们的基准可以在此 https URL 获取。
Mar, 2024
最近,大型语言模型(LLMs),特别是那些在代码上进行预训练的模型,展现出了从自然语言输入中以少量甚至无需样本的方式生成程序的强大能力。然而,这些模型的语言到代码生成能力缺乏全面的评估。本研究通过 L2CEval 系统地评估了 LLMs 在 7 个任务(包括语义解析、数学推理和 Python 编程)中的语言到代码生成能力,分析了可能影响它们性能的因素,如模型大小、预训练数据、指令调整和不同的提示方法。除了评估模型性能,我们还衡量了模型的置信度校准情况,并对输出的程序进行人工评估。这使我们能够识别并分析各种任务和模型的典型失败模式。L2CEval 提供了对 LLMs 在语言到代码生成方面能力和限制的全面了解。同时,我们还发布了评估框架和所有模型输出,希望为今后在该领域的进一步研究奠定基础。
Sep, 2023
评估大型语言模型在代码生成中的方法是一个开放性问题。本文提出了一个新的基准测试 - EvoCodeBench,用于解决现有基准测试与实际代码仓库的对接不足以及评估 LLMs 的编码能力不足的问题。
Mar, 2024
使用 EvalPlus 框架对大型语言模型进行代码综合基准测试,通过自动生成测试输入来扩充现有基准测试集,发现并降低了 LLM 合成代码的错误率,揭示了现有编程基准测试的局限性并为编程基准测试的改进方向开辟了新的方向。
May, 2023
通过使用 RealHumanEval、静态基准以及优先度度量,研究了大型语言模型(LLMs)在代码编写中的效能表现以及对程序员生产力的影响。发现优化的基准性能可以提高程序员的生产力,但基准性能与人类表现之间的差距并不成比例,同时程序员的偏好与实际表现并无关联,这促使我们需要更好、以人为中心的评估指标。同时,我们公开了 RealHumanEval 工具和研究数据以促进代码模型的改进。
Apr, 2024
本研究提出了一个基于 GPT-3.5 的评估框架,用于评估代码生成的功能正确性和人类偏好,能够在不需要测试 oracle 或参考文献的情况下,达到比 CodeBERTScore 更高的准确性和一致性。
Apr, 2023
大型语言模型在代码生成方面展示了显著的熟练度,并通过许多先前的研究在各种开发场景中显示了它们的有希望的能力。然而,这些研究主要在研究环境中进行评估,这在了解 LLMs 在实际开发中如何有效地支持开发人员方面存在重大差距。通过对来自开发人员与 ChatGPT 的对话的数据集 DevGPT 进行实证分析,我们的实证发现表明,目前使用 LLM 生成的代码的实践通常仅限于展示高级概念或在文档中提供示例,而不是用于生产就绪的代码。这些发现表明,在 LLMs 成为现代软件开发的重要组成部分之前,还需开展大量未来工作来改进 LLMs 在代码生成方面的能力。
Feb, 2024
我们首次尝试在更具挑战性的类级代码生成情景中评估 LLMs,并构建了一个包括 100 个类级 Python 代码生成任务的基准测试集,通过对 11 种最新 LLMs 在类级代码生成任务上的研究,发现现有 LLMs 在类级代码生成上表现较差,GPT-4 和 GPT-3.5 在类级代码生成上的表现卓越,而逐方法生成是其他模型更好的策略。
Aug, 2023