five

AACR-Bench

收藏
github2026-02-04 更新2026-01-22 收录
下载链接:
https://github.com/alibaba/aacr-bench
下载链接
链接失效反馈
官方服务:
资源简介:
AACR-Bench是业界首个多语言、仓库级上下文感知的代码审查评估数据集,旨在评估大型语言模型在自动代码审查任务中的性能。数据集包含来自50个活跃开源项目的200个真实Pull Requests,覆盖10种主流编程语言。每个实例不仅包括代码变更,还保留完整的仓库上下文,真实再现了整个代码审查过程。通过人机协作审查结合多轮专家标注,确保数据的高质量和全面性。

AACR-Bench is the industry's first multilingual, repository-level context-aware code review evaluation dataset, aimed at evaluating the performance of large language models (LLMs) in automated code review tasks. The dataset contains 200 real Pull Requests from 50 active open-source projects, spanning 10 mainstream programming languages. Each instance encompasses not only code changes but also full repository context, faithfully replicating the entire code review process. The high quality and comprehensiveness of the dataset are ensured through human-AI collaborative review and multi-round expert annotations.
创建时间:
2026-01-19
原始信息汇总

AACR-Bench 数据集概述

数据集简介

AACR-Bench 是一个多语言、仓库级上下文感知的自动化代码审查基准数据集,旨在评估大型语言模型在自动化代码审查任务中的性能。该数据集包含来自 50 个活跃开源项目的 200 个真实 Pull Requests,涵盖 10 种主流编程语言。每个实例不仅包含代码变更,还保留了完整的仓库上下文,真实复现了整个代码审查流程。通过人机协同审查和多轮专家标注,确保了数据的高质量和全面性。

主要应用

  • 评估代码审查模型的问题检测能力
  • 评估审查建议的质量和可行性
  • 测试跨语言和跨项目的泛化能力
  • 上下文感知能力的细粒度分析

核心特性

多语言覆盖

涵盖 10 种主流编程语言:Python, Java, JavaScript, TypeScript, Go, Rust, C++, C#, Ruby, PHP。

仓库级上下文

  • 保留完整的项目结构和依赖信息
  • 支持跨文件引用分析

人类专家与 LLM 增强标注

  • 人类专家初步审查 + 系统性 LLM 补充
  • 识别细微问题和潜在改进
  • 多轮专家审查确保评论质量

综合评估指标

  • 精确率:评论质量和行级定位准确性
  • 召回率:问题发现的完整性
  • 噪声率:无效评论识别
  • 多维度分析:支持语言和问题类型统计

数据集概览

统计数据

指标 数量
Pull Requests 200
编程语言 10
来源项目 50
总审查评论数 2145

数据格式

数据格式为 JSON 数组,每个项目包含以下关键字段:

  • change_line_count:修改行数
  • project_main_language:项目主要语言
  • source_commit:源提交哈希
  • target_commit:目标提交哈希
  • githubPrUrl:GitHub PR URL
  • comments:标注的审查评论数组,每个评论对象包含属性:
    • is_ai_comment:是否为 AI 评论
    • note:英文审查评论
    • path:文件路径
    • side:评论位置
    • source_model:来源模型
    • from_line:起始行号
    • to_line:结束行号
    • category:评论类别
    • context:评论范围

评估指标

采用多维度的指标系统全面评估代码审查模型的性能。

核心指标

指标 描述 公式
精确率 模型生成的有效评论比例 有效匹配 / 总生成数
召回率 发现数据集中问题的能力 有效匹配 / 数据集中有效数
行精确率 精确定位代码行的能力 行匹配 / 总生成数
噪声率 无效或错误评论的比例 未匹配 / 总生成数

许可证

本项目采用 Apache License 2.0 许可证。详细信息请参阅 LICENSE 文件。

引用

若在研究中使用了 AACR-Bench,请引用论文:

@article{liu2026aacrbench, title={AACR-Bench: A Multi-lingual Repository-level Context-aware Automated Code Review Benchmark}, author={Li, Zhengfeng and Zhang, Lei and Yu, Yongda and Guo, Xinxin and Yu, Minghui and Zhuang, Zhengqi}, journal={arXiv preprint arXiv:2026.xxxxx}, year={2026}, url={https://arxiv.org/abs/2026.xxxxx} }

路线图

  • [x] v1.0 (2026.01):初始版本 - 200 个 PRs,10 种语言
搜集汇总
数据集介绍
main_image_url
构建方式
在自动化代码审查领域,数据集的构建质量直接决定了评估的可靠性。AACR-Bench的构建过程体现了严谨的学术规范,其核心数据来源于50个活跃开源项目的200个真实拉取请求,覆盖了10种主流编程语言。为确保数据的全面性与真实性,构建过程不仅完整保留了代码变更,还纳入了仓库级别的完整上下文信息,包括项目结构和依赖关系。数据标注采用了人机协同的创新模式,先由人类专家进行初步审查,再通过大型语言模型进行系统性补充,以识别细微问题和潜在改进点,最后经过多轮专家评审,从而保证了超过两千条审查注释的高质量与全面性。
特点
该数据集在自动化代码审查基准中展现出鲜明的特色。其最突出的优势在于多语言覆盖与仓库级上下文感知,囊括了从Python、Java到Rust、Go等十种编程语言的真实项目场景,为模型跨语言泛化能力评估提供了坚实基础。数据集完整保留了每次代码审查所涉及的仓库结构,支持跨文件引用分析,这使得评估能够深入到依赖关系和项目架构层面。此外,数据集提供了精细化的多维评估指标体系,不仅涵盖精确率、召回率等传统指标,还引入了行级定位精度和噪声率等专项度量,支持按语言和问题类型进行细粒度统计分析,为深入研究模型能力边界创造了条件。
使用方法
对于研究者而言,利用AACR-Bench进行评估遵循一套结构化的流程。数据集以规范的JSON格式提供,每个实例包含代码变更的元数据、完整的审查注释及其分类、定位信息。用户首先需要按照既定数据模式加载和处理样本,随后将待评估的代码审查模型应用于这些样本,生成预测性的审查意见。评估阶段,需将模型输出与数据集中的高质量人工标注进行比对,依据预设的多维指标进行计算,包括审查意见的有效性比例、问题发现的完备性、代码行定位的准确性以及无效评论的识别率。通过这一流程,研究者能够系统性地量化模型在真实、复杂、多语言仓库环境下的自动化代码审查性能。
背景与挑战
背景概述
在软件工程领域,代码审查是保障代码质量、促进知识共享的关键实践。随着大语言模型在代码生成与理解任务上展现出卓越潜力,如何系统评估其在自动化代码审查场景下的性能,成为一个新兴且迫切的研究课题。AACR-Bench数据集应运而生,由Zhengfeng Li等人于2026年主导构建,旨在为多语言、仓库级上下文感知的自动化代码审查任务提供一个高质量的基准测试平台。该数据集从50个活跃开源项目中精心选取了200个真实拉取请求,覆盖Python、Java等10种主流编程语言,并通过人机协同的标注流程,完整保留了代码变更及其所处的仓库级上下文。它的建立为客观衡量大语言模型在复杂、真实的代码审查环境中的问题检测、建议生成及跨语言泛化能力提供了至关重要的数据基础,推动了智能化软件工程工具的发展。
当前挑战
自动化代码审查的核心挑战在于模型需精准理解代码语义、项目结构及开发规范,以识别从语法错误到架构缺陷等多层次问题。AACR-Bench所针对的领域挑战具体体现在:模型必须处理多编程语言间的语义差异,在庞大的仓库级上下文中进行精准的跨文件引用分析,并生成具有可行性的高质量审查意见,这对模型的代码理解与推理能力提出了极高要求。在数据集构建过程中,研究者同样面临显著挑战:如何从海量开源项目中筛选出具有代表性且审查过程完整的拉取请求;如何设计人机协同标注流程以确保标注的全面性与准确性,特别是捕捉那些隐晦的逻辑缺陷与潜在优化点;以及如何构建一个涵盖精度、召回率、噪声率等多维度的综合评价体系,以公正衡量模型在不同语言与问题类型上的性能表现。
常用场景
经典使用场景
在软件工程与人工智能交叉领域,AACR-Bench作为多语言、仓库级上下文感知的代码审查基准,其经典使用场景聚焦于评估大型语言模型在自动化代码审查任务中的综合性能。研究者利用该数据集,通过模拟真实开源项目的拉取请求流程,系统测试模型在跨文件引用、依赖关系分析等复杂上下文环境下的问题检测与建议生成能力,为模型在代码质量保障场景的适用性提供实证依据。
解决学术问题
该数据集有效解决了自动化代码审查研究中缺乏高质量、多语言且包含完整仓库上下文基准的学术难题。它通过人类专家与大语言模型协同标注构建的高质量数据,支持对模型在精确度、召回率、噪声率等多维度指标的细粒度评估,促进了代码审查模型在跨语言泛化、上下文感知能力等核心问题上的科学探索,推动了软件智能维护领域的标准化进程。
衍生相关工作
围绕AACR-Bench数据集,已衍生出一系列聚焦于自动化代码审查的经典研究工作。这些工作主要集中于开发新型的上下文感知神经网络架构、设计针对多语言代码的联合表示学习方法,以及构建基于检索增强生成的审查建议生成模型。此外,部分研究利用其细粒度标注探索代码审查意见的分类与优先级排序,进一步推动了智能辅助编程工具向实用化、精准化方向发展。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作