KBENCH
收藏arXiv2024-07-04 更新2024-08-06 收录
下载链接:
http://arxiv.org/abs/2407.02680v2
下载链接
链接失效反馈官方服务:
资源简介:
KBENCH是由哥伦比亚大学和谷歌等机构创建的一个用于评估大型语言模型在Linux内核崩溃解决能力的数据集。该数据集包含279个来自真实世界Linux内核的崩溃解决样本,每个样本包括崩溃堆栈跟踪、复现文件、开发者编写的修复补丁等。数据集的创建过程涉及使用KGYM平台进行内核编译、崩溃检测和代码补丁应用。KBENCH主要用于评估和提升模型在软件工程任务中的性能,特别是在处理低级系统代码、并发问题和模糊意图的崩溃解析方面。
KBENCH is a dataset developed by Columbia University, Google and other institutions to evaluate the crash resolution capabilities of large language models on the Linux kernel. This dataset includes 279 real-world Linux kernel crash resolution samples, each containing crash stack traces, reproduction files, developer-written fix patches and other relevant materials. The dataset creation process utilized the KGYM platform for kernel compilation, crash detection and code patch application. KBENCH is primarily used to evaluate and improve the performance of models in software engineering tasks, especially in crash analysis involving low-level system code, concurrency issues and ambiguous intent.
提供机构:
哥伦比亚大学, 明尼苏达大学, 谷歌Deepmind, 谷歌
创建时间:
2024-07-03
搜集汇总
数据集介绍

构建方式
KBENCH数据集的构建方式主要依赖于KGYM平台,该平台提供了在Linux内核上执行大规模实验的环境,包括编译和并行运行内核、检测操作和崩溃、检查日志、查询和修补代码库。KBENCH数据集是从真实世界的Linux内核错误中抽取的崩溃解决基准,每个样本包含崩溃堆栈跟踪、故障重现文件、开发人员编写的修复程序和其他相关数据。
使用方法
使用KBENCH数据集时,首先需要在KGYM平台上编译和运行内核,然后运行故障重现程序以生成崩溃报告。接着,LLM被提示生成代码修补程序,并将其应用于代码库。最后,通过重新运行故障重现程序来检查崩溃是否已成功解决。KBENCH数据集还提供了详细的电子邮件讨论,为崩溃原因的定位、解释和修复研究提供了辅助信息。
背景与挑战
背景概述
随着大型语言模型(LLMs)在软件工程任务上的不断进步,评估这些模型在真实世界软件开发中的应用变得尤为重要。KBENCH数据集正是为了应对这一挑战而创建的。该数据集由Columbia University、University of Minnesota和Google Deepmind的研究人员共同开发,旨在提供一个用于评估LLMs在Linux内核崩溃解决方面的性能的平台。KBENCH数据集包含了从现实世界Linux内核错误中提取的崩溃解决方案基准,每个样本都包含崩溃堆栈跟踪、故障重现文件、开发者编写的修复程序以及其他相关数据。KBENCH的引入为机器学习和系统软件领域的研究开辟了新的途径。
当前挑战
KBENCH数据集的创建和利用面临着一系列挑战。首先,LLMs在解决Linux内核崩溃方面的性能较差,即使在辅助设置下,最佳模型的性能也仅为5.38%。这表明LLMs在理解和修复软件错误方面仍需改进。其次,KBENCH数据集构建过程中遇到的挑战包括如何从庞大的Linux代码库中提取和整理有效的数据,以及如何处理崩溃解决方案的多样性和复杂性。此外,LLMs在理解和处理低级系统代码、并发和多语言环境方面的能力也面临着挑战。因此,KBENCH的引入为研究人员提供了一个新的研究方向,以进一步提高LLMs在解决实际软件问题方面的性能。
常用场景
经典使用场景
KBENCH数据集主要用于评估大型语言模型(LLMs)在解决Linux内核崩溃问题方面的能力。它为研究人员提供了一个包含真实世界Linux内核崩溃案例的基准,以测试和比较不同LLMs在理解崩溃原因、修复错误、编写内存安全且硬件感知的代码以及理解并发性方面的表现。KBENCH与KGYM平台协同工作,后者提供了一个用于大规模实验的软件工程环境,包括并行编译和运行内核、检测操作和崩溃、检查日志以及查询和修补代码库。
解决学术问题
KBENCH数据集解决了评估LLMs在解决大型系统级软件中遇到的复杂和现实问题时的能力的挑战。它填补了现有基准测试在模拟现实世界软件工程任务方面的空白,这些任务通常涉及多语言代码库、巨大的代码规模、关键性和高度并发性。KBENCH提供了一个更为真实的场景,要求LLMs不仅要理解崩溃的根源,还要能够生成有效的修复程序,从而推动LLMs在软件工程任务中的研究和应用。
实际应用
KBENCH的实际应用场景包括在软件开发过程中辅助开发人员快速定位和修复内核崩溃问题。通过使用KBENCH,开发人员可以利用LLMs的潜力来加速崩溃问题的诊断和修复过程,从而提高软件开发和维护的效率。此外,KBENCH还可以用于训练和评估专门针对系统级软件的LLMs,这些LLMs可以在生产环境中提供自动化和智能化的辅助,减少人为错误,并提高系统稳定性。
数据集最近研究
最新研究方向
KBENCH 数据集作为评估大型语言模型在解决 Linux 内核崩溃问题上的性能的平台,其研究前沿主要集中在如何提升模型在处理多语言、大规模、关键性和高并发性系统级软件中的表现。目前,即使是性能最优的 LLM,在未协助和协助设置下分别只达到 0.72% 和 5.38% 的成功率,这表明了提升模型在 SE 任务中的性能的必要性。为了在 KBENCH 上取得更好的性能,模型需要掌握新的学习能力,包括理解崩溃原因、修复故障、编写内存安全且硬件感知的代码,以及理解并发性。因此,KBENCH 为机器学习和系统软件交叉领域的研究开辟了多条道路。
相关研究论文
- 1KGym: A Platform and Dataset to Benchmark Large Language Models on Linux Kernel Crash Resolution哥伦比亚大学, 明尼苏达大学, 谷歌Deepmind, 谷歌 · 2024年
以上内容由遇见数据集搜集并总结生成



