five

rustbench

收藏
Hugging Face2025-07-19 更新2025-07-20 收录
下载链接:
https://huggingface.co/datasets/kabxx/rustbench
下载链接
链接失效反馈
官方服务:
资源简介:
这是一个包含代码补丁和相关问题的数据集,其中包括实例ID、仓库信息、拉取请求编号、问题编号、基础提交哈希、补丁内容、测试补丁、问题陈述、提示文本、创建时间、版本、更新时间、环境设置提交哈希等字段。数据集分为训练集,共有500个示例。
创建时间:
2025-07-18
原始信息汇总

数据集概述

基本信息

  • 数据集名称: rustbench
  • 存储位置: https://huggingface.co/datasets/kabxx/rustbench
  • 下载大小: 5047303 bytes
  • 数据集大小: 20759854 bytes
  • 训练集样本数: 500
  • 训练集大小: 20759854 bytes

数据特征

  • instance_id: 字符串类型,实例ID
  • repo: 字符串类型,代码仓库
  • pull_number: 整型,拉取请求编号
  • issue_numbers: 字符串列表,问题编号列表
  • base_commit: 字符串类型,基础提交
  • patch: 字符串类型,补丁
  • test_patch: 字符串类型,测试补丁
  • problem_statement: 字符串类型,问题描述
  • hints_text: 字符串类型,提示文本
  • created_at: 字符串类型,创建时间
  • version: 字符串类型,版本
  • updated_at: 字符串类型,更新时间
  • environment_setup_commit: 字符串类型,环境设置提交
  • FAIL_TO_PASS: 字符串列表,失败到通过的测试列表
  • PASS_TO_PASS: 字符串列表,通过到通过的测试列表
  • FAIL_TO_FAIL: 字符串列表,失败到失败的测试列表
  • PASS_TO_FAIL: 字符串列表,通过到失败的测试列表
  • source_dir: 字符串类型,源目录

数据划分

  • 训练集: 包含500个样本,路径为data/train-*
搜集汇总
数据集介绍
main_image_url
构建方式
rustbench数据集通过系统化采集GitHub开源Rust项目的代码变更记录构建而成,其核心数据来源于真实开发场景中的pull request提交记录。研究人员精心提取了每个代码变更实例的元数据,包括仓库信息、提交哈希、问题编号等关键字段,并保留了原始补丁文件和测试用例。数据采集过程严格遵循版本控制规范,通过环境设置提交确保代码可复现性,同时标注了测试用例在不同状态间的转换关系,为程序修复研究提供了丰富的上下文信息。
使用方法
使用rustbench时,研究者可通过instance_id字段快速定位特定代码变更实例,结合pull_number与repo字段可追溯原始开发上下文。数据集中的patch和test_patch字段支持直接应用于代码库进行行为验证,而problem_statement与hints_text则为理解修复意图提供自然语言辅助。对于测试分析研究,FAIL_TO_PASS等状态标签可直接用于构建分类模型或统计分析。建议使用者先通过environment_setup_commit还原开发环境,再基于source_dir字段定位源代码位置,确保实验条件与原始场景一致。
背景与挑战
背景概述
rustbench数据集聚焦于软件开发领域中的代码质量评估与缺陷检测问题,由专业研究团队构建于近年,旨在为Rust语言的静态分析与动态测试提供基准支持。该数据集收录了来自真实开源项目的500个代码实例,涵盖基础提交、补丁文件、测试用例等关键特征,通过记录代码从失败到通过(FAIL_TO_PASS)等状态转换模式,为编译器优化和自动化修复技术研究提供实证基础。其多维度元数据架构显著提升了程序分析领域研究的数据可追溯性和实验复现性。
当前挑战
数据集构建面临双重挑战:在领域问题层面,Rust语言的所有权模型和并发安全特性导致传统缺陷检测方法失效,需开发新型指标来量化内存安全与线程安全风险;在技术实现层面,真实项目代码的版本依赖管理复杂度高,环境复现需精确控制工具链版本与系统配置。此外,测试用例的通过/失败状态动态标注需要设计自动化验证框架,以解决跨平台行为差异带来的标注一致性问题。
常用场景
经典使用场景
在软件工程领域,rustbench数据集为研究Rust编程语言的代码修复和测试生成提供了丰富的实验材料。该数据集通过收集GitHub上的Pull Request和Issue数据,构建了一个包含代码补丁、测试用例和问题描述的综合性资源。研究人员可以基于这些数据,深入分析Rust代码的缺陷模式、修复策略以及测试用例的有效性。
解决学术问题
rustbench数据集解决了软件工程研究中代码缺陷修复和测试生成的若干关键问题。通过提供真实的代码变更记录和测试用例,该数据集支持了自动化程序修复、测试用例生成和缺陷预测等领域的研究。其结构化的数据格式和丰富的元信息,为量化分析代码修复效果和测试覆盖率提供了可靠的基础。
实际应用
在实际开发中,rustbench数据集可用于构建智能化的代码审查工具和自动化测试系统。开发团队可以借鉴数据集中的修复模式,优化自身的代码质量管控流程。同时,该数据集也为构建基于机器学习的代码缺陷检测模型提供了训练数据,有助于提升静态分析工具的准确性和实用性。
数据集最近研究
最新研究方向
在软件工程与编程语言领域,rustbench数据集以其详实的Rust代码库变更记录和测试用例数据,正成为研究自动化程序修复与代码质量优化的关键资源。近期研究聚焦于利用该数据集中的补丁模式与测试结果映射关系,探索基于深度学习的缺陷预测模型构建,特别是在跨版本代码迁移场景下的泛化能力评估。随着Rust语言在系统编程领域市场份额的持续增长,该数据集为分析内存安全漏洞的自动化检测提供了独特视角,相关成果已开始影响工业级静态分析工具的设计范式。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作