five

CodeQUEST

收藏
arXiv2025-02-11 更新2025-02-26 收录
下载链接:
https://github.com/jpmorganchase/CodeQuest
下载链接
链接失效反馈
官方服务:
资源简介:
CodeQUEST数据集是一个包含42个代码示例的手工 curated 数据集,这些示例来自9个开源库,包括Python和JavaScript语言的代码。该数据集旨在用于评估和改进代码质量,涵盖了可读性、可维护性、测试性、效率等十个维度。数据集中的代码示例经过精心挑选,以展示不同程度的代码质量,为研究 Large Language Models 在代码质量评估和改进方面的应用提供了实验基础。

The CodeQUEST dataset is a hand-curated collection comprising 42 code examples sourced from 9 open-source libraries, with code written in both Python and JavaScript. This dataset is designed for evaluating and enhancing code quality, covering ten dimensions including readability, maintainability, testability, efficiency and other relevant aspects. The code examples in the dataset are carefully selected to demonstrate varying levels of code quality, providing an experimental foundation for researching the application of Large Language Models in code quality evaluation and improvement.
提供机构:
摩根大通
创建时间:
2025-02-11
搜集汇总
数据集介绍
main_image_url
构建方式
CodeQUEST数据集通过大型语言模型(LLMs)迭代评估和提升代码质量,包括可读性、可维护性、效率和安全等多个维度。该框架分为两个主要组件:评估器和优化器。评估器根据十个维度对代码质量进行评估,提供定量分数和定性总结;优化器则基于评估器的反馈迭代改进代码。研究显示,CodeQUEST能够有效地评估代码质量,其评估结果与已建立的代码质量指标高度一致。通过使用精心挑选的Python和JavaScript示例数据集进行实验,CodeQUEST在代码质量方面取得了显著的提升,平均相对提升百分比为52.6%。该框架的评估结果经过一系列代理指标(包括Pylint得分、Radon可维护性指数和Bandit输出日志)的验证,显示出有意义的相关性。这突出了LLMs在自动化代码质量评估和改进流程方面的潜力,为提高软件开发实践做出了重大进展。该框架的代码实现可在https://github.com/jpmorganchase/CodeQuest获得。
使用方法
使用CodeQUEST数据集的方法包括:1. 将代码输入到评估器中,根据十个维度进行评估,并获得定性和定量的评估结果;2. 根据评估器的反馈,使用优化器对代码进行迭代改进;3. 使用代理指标验证评估结果的可靠性和有效性。此外,用户还可以通过调整迭代次数和目标质量分数来配置优化器。最后,用户还可以通过GitHub上的代码实现来获取CodeQUEST框架,以便在软件开发实践中使用。
背景与挑战
背景概述
在软件开发的领域中,代码质量一直是组织关注的核心问题。高质量的代码不仅需要语法和语义上的正确性,还需要具备易读性、可维护性、效率、安全性等特性。传统的代码质量评估和改进过程通常依赖于人工审查,这是一个资源密集且耗时的过程。随着大型语言模型(LLMs)技术的发展,它们在代码生成和评估等任务上展现出巨大的潜力。CodeQUEST是一个利用LLMs(特别是GPT-4o)来迭代评估和改进代码质量的新框架,它由评估器和优化器两个主要组件组成。评估器能够对代码的十个维度进行评估,并提供定量的分数和定性的总结。优化器则根据评估器的反馈来迭代地改进代码。通过使用Python和JavaScript示例数据集的实验,CodeQUEST展示了其在代码质量评估和改进方面的有效性,平均相对百分比改进达到了52.6%。该框架的评估结果与现有的代码质量指标(如Pylint得分、Radon可维护性指数和Bandit输出日志)显示出显著的相关性,突显了LLMs在自动化代码质量评估和改进流程中的潜力。
当前挑战
尽管CodeQUEST框架在代码质量评估和改进方面取得了显著进展,但仍面临一些挑战。首先,代码质量的评估本身是一个主观的概念,因此评估的有效性可能受到评估问题的显著影响。其次,GPT-4o的随机性导致评估结果具有一定的变异性,即使设置了温度为0,这种变异性也可能存在。此外,LLMs的“幻觉”问题也是一个已知的缺点,可能会在代码改进步骤中出现。最后,CodeQUEST框架可能难以改进与GPT-4o训练数据集差异较大的代码,例如高度定制的专有代码库。为了解决这些问题,CodeQUEST框架推荐使用自我一致性推理来减少评估分数的变异性,并建议进行广泛的测试用例验证来防止幻觉问题。此外,框架的适用性需要进一步研究以涵盖更广泛的编程语言。
常用场景
经典使用场景
CodeQUEST 数据集主要用于代码质量评估与改进。该数据集结合大型语言模型(LLM)的能力,能够对代码的可读性、可维护性、效率和安全等多个维度进行评估,并提供定性和定量的评估结果。此外,CodeQUEST 还能够根据评估结果迭代地改进代码质量。
解决学术问题
CodeQUEST 数据集解决了代码质量评估和改进的难题。传统的代码质量评估工具通常只能针对特定语言或特定方面进行评估,而 CodeQUEST 则能够提供一个更加全面和客观的评估。此外,CodeQUEST 还能够根据评估结果迭代地改进代码质量,从而提高软件开发效率。
实际应用
CodeQUEST 数据集在实际应用场景中具有广泛的应用前景。例如,在软件开发过程中,可以使用 CodeQUEST 对代码进行质量评估和改进,从而提高代码质量和开发效率。此外,CodeQUEST 还可以用于代码审查,帮助开发人员发现代码中的问题和缺陷。
数据集最近研究
最新研究方向
CodeQUEST,一种利用大型语言模型(LLMs)来迭代评估和提升代码质量的框架,已经在多个维度上显示出显著的成果。该框架包括评估器(Evaluator)和优化器(Optimizer)两个主要组件,评估器能够对代码质量进行十维度的评估,并提供量化评分和定性总结;优化器则根据评估器的反馈迭代地改进代码。实验表明,CodeQUEST能够有效地评估代码质量,并且其评估结果与已建立的代码质量指标高度一致。此外,CodeQUEST在Python和JavaScript示例数据集上的实验结果表明,代码质量平均相对百分比提高了52.6%。该框架的评估结果也得到了一组代理指标(包括Pylint评分、Radon可维护性指数和Bandit输出日志)的有效性验证,显示出与这些指标的相关性。这突出了LLMs在自动化代码质量评估和改进过程中的潜力,为提高软件开发实践带来了重大进步。
相关研究论文
  • 1
    On Iterative Evaluation and Enhancement of Code Quality Using GPT-4o摩根大通 · 2025年
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作