CodeScope: 一个基于执行的多语言多任务多维度基准评估工具,用于评估 LLMs 在代码理解和生成方面的能力
CodeApex 是一个双语基准数据集,专注于评估大型语言模型(LLMs)在编程理解和代码生成能力上。数据集由三种类型的多项选择题组成,用于评估 LLMs 在编程理解任务上的能力,同时利用算法问题和相应的测试用例来评估 LLMs 生成的代码质量。通过评估包括通用和专用模型在内的 14 个先进 LLMs,发现 GPT 展现出最佳的编程能力,在两个任务上分别达到了约 50% 和 56% 的准确率。希望 CodeApex 能够作为评估 LLMs 编码能力的参考,进一步推动其发展和增长。
Sep, 2023
基于大型语言模型 (LLMs) 的自动化软件工程在最近的进展中得到了极大的增强。尽管当前的基准测试表明 LLMs 可以完成各种软件工程任务,如人类开发人员一样,但它们的大多数评估仅限于简短的、自包含的算法任务。解决具有挑战性和实际意义的编程任务需要利用多种函数调用作为工具,以有效地实现数据分析和 Web 开发等功能。此外,使用多个工具来解决一个任务需要通过准确理解复杂的指令来进行组合推理。同时实现这两个特征对于 LLMs 来说是一个巨大的挑战。为了评估 LLMs 解决具有挑战性和实际意义的编程任务的能力,我们引入了一个基准测试集 Bench,其中挑战 LLMs 以从 139 个库和 7 个领域中选择 1,140 个细粒度的编程任务中调用多个函数调用作为工具。为了对 LLMs 进行严格评估,每个编程任务包括 5.6 个测试用例,平均分支覆盖率达到 99%。此外,我们提出了 Bench 的自然语言导向变体 Benchi,它将原始的文档字符串自动转换为仅具有基本信息的简短指令。我们对 60 个 LLMs 进行了广泛评估,结果显示 LLMs 还不能准确地遵循复杂指令来使用函数调用,得分最高仅为 60%,明显低于人类的 97%。这些结果强调了在这个领域进一步改进的需要。
Jun, 2024
通过 CodeEditorBench,我们为 LLMs 的代码编辑能力提供了一个可靠的评估平台,其中 19 个 LLMs 的评估结果表明闭源模型(特别是 Gemini-Ultra 和 GPT-4)在 CodeEditorBench 中优于开源模型,并突出了基于问题类型和提示敏感性的模型性能差异。
Apr, 2024
本文提出了一个面向代码的综合、无污染评估系统 LiveCodeBench,其中收集了来自 LeetCode、AtCoder 和 CodeForces 三个竞赛平台的问题,着重评估 LLMs 在代码生成以外的自修复、代码执行和测试输出预测等更广泛的代码相关能力。
Mar, 2024
利用对最近的大型语言模型进行了代码测试的详尽分析,本研究展示了这些模型的一系列有趣性质,并展示了如何改进大型语言模型的程序测试能力,通过利用生成的测试用例来提高合成程序的质量,相较于 GPT-3.5-turbo 和最新的最先进技术,我们的方法在 HumanEval + 上的代码通过率分别提高了 11.77% 和 4.22%。
Oct, 2023
人工智能正在开发出可以用于程序编写的 AI 系统,生成代码的自然语言描述,语言模型在生成代码的过程中表现出了良好的性能,但它们的评估通常只在少数语言和部分层次上进行,还需要更好的培训数据。
Mar, 2023
本文提出了新的基准测试,包括 MBXP,Multilingual HumanEval 和 MathQA-X,以测试多语言环境下代码生成模型的性能,并发现了多语言模型的优势,以及通过 few-shot prompting 实现对模型新语言的教学能力和在单语言环境下的 zero-shot translation 能力。同时,作者还利用其代码生成模型在多种语言上实现了大规模引导过程,产生了其他与代码相关的评估任务中使用的合成规范解决方案。
Oct, 2022
最近,大型语言模型(LLMs),特别是那些在代码上进行预训练的模型,展现出了从自然语言输入中以少量甚至无需样本的方式生成程序的强大能力。然而,这些模型的语言到代码生成能力缺乏全面的评估。本研究通过 L2CEval 系统地评估了 LLMs 在 7 个任务(包括语义解析、数学推理和 Python 编程)中的语言到代码生成能力,分析了可能影响它们性能的因素,如模型大小、预训练数据、指令调整和不同的提示方法。除了评估模型性能,我们还衡量了模型的置信度校准情况,并对输出的程序进行人工评估。这使我们能够识别并分析各种任务和模型的典型失败模式。L2CEval 提供了对 LLMs 在语言到代码生成方面能力和限制的全面了解。同时,我们还发布了评估框架和所有模型输出,希望为今后在该领域的进一步研究奠定基础。
Sep, 2023
CodeMind 是一个评估大型语言模型的代码推理能力的框架,通过 Independent Execution Reasoning(IER)、Dependent Execution Reasoning(DER)和 Specification Reasoning(SR)三个任务对九个大型语言模型进行了广泛评估,发现它们对于简单的程序和可以正确合成的程序在控制流构造和输入到输出的推理方面表现良好,但对于更复杂、具有非平凡逻辑和算术运算符、非基本类型和 API 调用的代码,它们的性能下降。此外,规范推理(代码合成所必需的)与执行推理(用于更广泛的编程任务,如测试和调试)相关但不相等,基于测试通过来排名大型语言模型的结果可能与代码推理不同。
Feb, 2024