AI 智能体已能自主提交 PR,但质量如何?本文基于奈良先端科大与皇后大学对 567 个 GitHub PR 的实证分析,揭示 AI 代码的接受率、修改成本与人机协同最佳实践。

近期 AI 编程工具如 Claude Code 越来越火,但很多人心里打鼓:AI 自动生成的代码真能被开源项目接受吗?会不会全是“花架子”?幸运的是,来自日本奈良先端科学技术大学院大学(Nara Institute of Science and Technology)与加拿大皇后大学(Queen’s University)的研究团队,刚刚完成了一项扎实的实证研究——他们分析了 GitHub 上 567 个由 Claude Code 生成的 Pull Request,覆盖 157 个活跃开源项目,为我们揭开了 agentic coding 在真实世界中的表现真相。

想象一下:你刚使用 Claude Code 重构了项目的 XML 解析模块。AI 智能体自动将代码从 serde XML 解析器切换到 xml-rs 解析器,改善了错误处理机制(如下图所示)。你提交 PR 后,惊讶地发现它被迅速接受——这并非个例。最新研究显示,24.9% 的 AI PR 专注于此类重构任务(人类 PR 仅 14.9%),而 83.8% 的 AI PR 最终被接受,接近人类 PR 的 91.0%。这标志着 agentic coding 已从实验性工具转变为实用级开发助手。

在这里插入图片描述

示例Claude Code重构和PR创建过程

AI 编程智能体火了,但真的能用吗?

Claude Code 等 agentic coding 工具代表了软件工程的革命性转变——它们不仅能回答问题,还能自主规划、执行、测试和迭代代码。与传统需要人类逐步引导的 “vibe coding” 不同,Claude Code 通过 Model Context Protocol(MCP,模型上下文协议)连接文件系统、命令行和云服务,实现了真正的自主开发能力

上图清晰展示了 Claude Code 的工作流程:开发者只需简单指令 “refactor the code”,AI 智能体便能分析文件结构、应用适当转换(如提取辅助方法),并自动更新源文件。当集成到版本控制系统后,它还能生成包含代码修改和结构化描述的 PR,显著降低了开发者准备贡献的工作量。

这项研究的时效性尤为珍贵。Claude Code 于 2025 年 2 月 24 日正式发布,研究团队在发布后立即开始收集数据,捕捉了这一新兴技术在早期采用阶段的真实表现。研究的核心问题直击要害:这些 AI 生成的 PR 能被项目接受吗?需要多少人工干预?与人类 PR 相比表现如何?这些问题的答案,对正在考虑引入 AI 智能体的开发者和团队至关重要。

研究背景与方法

研究团队采用了严谨的实证方法。他们明确定义了 agentic coding 为 “AI 智能体自主生成、修改和提交代码” 的过程,区别于需要人类逐步引导的传统工作流。为识别真实的 AI 生成 PR,他们通过 GitHub GraphQL API 搜索了描述中包含 “Generated with Claude Code” 字符串的 PR,时间范围限定在 2025 年 2 月 24 日(Claude Code 发布日)至 4 月 30 日。

在这里插入图片描述

数据收集流程示意图

如上图所示,研究团队首先识别出 743 个明确标注 “Generated with Claude Code” 的 Agentic-PRs(APRs),然后为每个 APR 匹配同一作者、同一仓库、同期限的人工 PR 作为对照组(Human-PRs,HPRs)。为确保比较的科学性,他们计算了必要的样本量以满足 95% 置信水平和 5% 误差范围。在手动分类阶段,他们从 475 个已合并的 Agentic-PRs 和 516 个已合并的 Human-PRs 中抽样,最终对 213 个 Agentic-PRs 和 221 个 Human-PRs 进行了详细分类。所有研究项目均拥有至少 10 颗 GitHub 星标,确保了项目质量和活跃度。

Claude Code创建的GitHub PR示例

上图展示了由 Claude Code 自动生成的 PR 实际界面,包含了详细的变更描述和明确的 “Generated with Claude Code” 标识。这种自动化不仅减少了开发者手动准备 PR 的工作量,还提供了结构化的变更说明,使审查者能够快速理解变更意图和范围。

关键发现一:AI 喜欢做什么?人类又在做什么?

研究首先揭示了 AI 智能体与人类开发者在任务偏好上的显著差异。通过对 213 个 APRs 和 221 个 HPRs 的手动分类,研究发现:

AI 更专注于非功能性改进。在重构任务方面,24.9% 的 AI PR 专注于代码重构(人类 PR 仅占 14.9%)。例如,有 PR 成功将代码从使用 serde 的 XML 解析器切换到 xml-rs 解析器,改善了错误处理机制而不改变系统外部行为。在文档更新方面,22.1% 的 AI PR 涉及文档改进(人类 PR 仅 14.0%),包括添加实际代码示例、修正格式不一致和优化配置描述。测试相关贡献的差距更为显著:18.8% 的 AI PR 专注于测试(人类 PR 仅 4.5%),如一个 PR 将测试覆盖率从 70% 提升至 94%,系统性地添加了针对未覆盖代码路径的测试套件。

PR目的分类比较

人类更专注项目维护任务。在 CI/CD 配置、依赖管理和版本更新(chore 类任务)方面,人类 PR 占比 10.4%,远高于 AI PR 的 3.8%。这表明 AI 智能体尚未完全掌握项目级的维护任务,如更新构建配置、管理依赖关系和版本增量等。

AI PR 展现出独特优势。首先,AI PR 的描述更为详细,中位数达 355 词,而人类 PR 仅为 56 词。这些详细描述记录了 AI 的思考过程、推理逻辑和具体变更,有助于审查者理解变更意图。例如,一个重构 PR 会明确说明 “从 serde XML 解析器切换到 xml-rs 解析器以改善错误处理机制”,而非简单标注 “重构 XML 解析”。这种透明度显著降低了审查者的认知负荷。

多用途 PR 的组合模式值得深入关注。研究显示,40% 的 AI PR 包含多个目标(人类 PR 仅 12.2%),最常见的组合包括功能开发+测试(9.0%)、重构+测试(7.7%)和 bug 修复+测试(7.7%)。这表明 AI 智能体具备同时推进代码变更和质量保证的能力,例如一个 PR 在更新 SDK 以使用新 API 端点(功能开发)的同时,也系统地更新了相应测试套件(测试)。

这种模式反映了 “智能体在执行主要编码任务时,始终如一地同步创建和更新相关测试代码” 的特点。这一发现对理解 AI 智能体的工作模式至关重要,也解释了为什么 AI PR 在测试覆盖率方面表现突出。

关键发现二:接受率与拒绝原因

最令人关注的问题是:这些 AI 生成的 PR 能被项目接受吗?研究结果令人惊喜:

高接受率:83.8% 的 AI PR 最终被接受并合并(人类 PR 为 91.0%),差距小于预期。虽然 AI PR 的接受率略低,但考虑到这是 AI 自主生成的代码,这一数字已相当可观。

PR接受率与合并时间统计

高效的审查过程:AI PR 的合并时间几乎与人类 PR 相同(中位数 1.23 小时 vs 1.04 小时),表明审查者对 AI 生成代码的审查效率并未降低。这颠覆了 “AI 代码需要更严格审查” 的普遍假设。

拒绝原因分析揭示关键洞见

  • 项目已有替代方案(12.1%):团队已用其他方式解决了相同问题。例如,一个 PR 被关闭时注明:“我们可能会回到这个方案,但现在通过不同方式解决了根本问题”
  • PR 太大或复杂(3.3%):难以有效审查。如一个 PR 因 “关闭以支持更小、更集中的 PR,使审查更易管理” 而被拒绝
  • 仅用于验证(5.5%):单纯触发 CI 流水线的 PR

但最令人担忧的是:63.7% 的被拒绝 PR 没有任何解释性评论!这一惊人发现暴露了审查过程中的透明度问题。

Agent PR拒绝原因分析

研究明确指出:这种反馈缺失突显了评估 AI 生成贡献为何被拒绝时的透明度挑战。这意味着什么?

当项目维护者关闭一个 AI PR 却不提供理由时,开发者无法学习和改进。这不仅阻碍了 AI 工具的有效使用,还可能导致开发者对 AI 产生不信任。更关键的是,这反映了维护者可能自己也不确定如何评估 AI 贡献——他们既不完全信任 AI 代码,又不愿花费时间解释拒绝原因。

颠覆认知:仅 1.1% 的 PR 被明确因 “缺乏对 AI 代码的信心” 而拒绝。这一数据表明,AI PR 被拒绝的主要原因往往与项目上下文(如已有替代方案、PR 大小)有关,而非 AI 代码本身的固有缺陷。

关键发现三:需要多少人工修改?

研究进一步探讨了 AI PR 需要多少人工修改才能被接受:

无需修改即可合并:54.9% 的 AI PR 被原样合并(人类 PR 为 58.5%),差距微小且无统计学显著差异。这意味着超过一半的 AI 生成代码已足够成熟,无需额外修改即可集成到项目中。

需要修改的 PR 分析

  • 主要修改类型:bug 修复(45.1%)、文档更新(27.4%)、重构(25.7%)、代码风格改进(22.1%)
  • 修改成本对比:Mann-Whitney U tests(α=0.05)确认修改的文件数、行数和提交数与人类 PR 无统计学显著差异
  • 修改规模:相对于初始提交,文件数增加 50.0%,AI PR 行数增加 94.3%(人类 PR 为 121.1%)

修订提交数量分布对比

上图揭示了一个关键事实:Agentic-PRs 和 Human-PRs 在修订提交数量上分布高度相似,中位数均为 2 个修订提交。这意味着:

    1. 修订模式一致:AI 生成代码的修订频率与人类代码相当,表明 AI 代码质量已达到可比水平
    1. 修订成本可控:超过一半(54.9%)的 AI PR 无需修改即可合并,与人类 PR(58.5%)差异微小

深入分析修订类型

  • Bug 修复(45.1%)是最常见的修订类型,通常涉及错误处理的改进。例如,一个 PR 修正了并发错误传播问题,引入了基于通道的通信机制以确保关键错误能立即从工作器关闭中浮现。研究指出:“AI 生成代码常实施过于乐观的错误处理策略,无法区分可恢复和不可恢复的故障条件”
  • 文档更新(27.4%)也占很大比例,因为 AI 生成的代码常与相关文档不同步。例如,一个 PR 移除了安装文档中过时的可选依赖项部分,该部分本应随相关代码变更一同删除。研究指出:“虽然 AI 有时会生成或更新代码注释,但常未能同步所有相关文档”
  • 代码风格改进(22.1%)也是常见修订,“静态分析违规和忽略最佳实践是这类修订的常见触发因素”

PR修订类型详细分析

AI 的持续参与:41.1%(88 out of 214)的修订 PR 继续由 AI 协作完成,34.1%(298 out of 873)的修订提交由 AI 共同创作。这表明开发者已将 AI 智能体深度整合到迭代工作流中,不仅用于初始代码生成,还用于后续的审查和改进过程。

想象一下:每 10 个由 AI 智能体生成的 PR 中,有 8 个以上最终被项目接受;超过一半(54.9%)甚至无需修改就能直接合并。这些数字表明,Claude Code 生成的代码已经达到了相当可靠的实用水平,不再是实验性玩具,而是可以融入真实开发流程的生产级工具。

对开发者的实践建议

基于研究发现,论文提出了几项实用建议,帮助开发者最大化利用 AI 智能体的优势:

1. 拆分大 PR 为小任务:避免 “PR 太大” 陷阱

研究显示 27% 的 AI PR 合并了多个任务,而 “PR 太大” 是主要拒绝原因之一。但如何有效拆分?研究提供了具体线索:

    1. 识别多任务组合:最常见的组合是 “功能开发+测试”(9.0%)、“重构+测试”(7.7%)和 “bug 修复+测试”(7.7%)
    1. 实施拆分策略
  • • 对于 “功能开发+测试”:先提交功能代码,再单独提交测试套件
  • • 对于 “重构+测试”:先重构核心逻辑,再添加测试验证
  • • 使用 Claude Code 的 /task 指令明确限定范围:“仅重构 XML 解析器,不修改测试”
    1. 序列化提交:如研究中所示,一个成功的案例是将 SDK 更新分为两步:先更新 API 端点,再单独提交测试更新,显著提高了接受率

2. 提供详细项目规范:减少 22.1% 的风格修订

研究显示 22.1% 的修订涉及代码风格,25.7% 涉及重构,表明 AI 常因不符合项目特定规范而需要修改。研究明确指出:“风格不匹配占修订的 22.1%,而重构占 25.7%”,这说明 “AI 生成代码的大部分修订工作并非源于功能错误,而是源于集成摩擦”。

具体实施建议

  • • 创建 CLAUDE.md 文件(Claude Code 支持的专用指南),明确包含:
  • • 格式规则:命名约定(如 snake_case vs camelCase)、缩进(2 空格 vs 4 空格)
  • • 设计原则:架构约束(如 “所有新功能必须有单元测试”)、关键决策(如 “使用 xml-rs 而非 serde 进行 XML 解析”)
  • • 代码风格指南:linting 规则(如 pylint 配置、ESLint 规则)
  • • 在 CLAUDE.md 中提供具体示例:```plaintext

    命名约定- 变量:snake_case (e.g., user_input)- 类:PascalCase (e.g., UserInputValidator)- 常量:UPPER_SNAKE_CASE (e.g., MAX_RETRIES = 3)

    
    

3. 增强 PR 透明度:解决 “63.7% 无反馈” 问题

研究强调,因设计非最优而被拒绝的 PR 通常缺乏实施理由说明,这导致审查者必须花费大量精力推断设计决策背后的原因。

信心卡片模板

## 设计决策与实施理由- **遵循的计划**:重构 XML 解析器,从 serde 切换到 xml-rs 以改善错误处理- **关键假设**:xml-rs 提供更细粒度的错误信息,更适合我们的错误处理需求- **考虑过的替代方案**:  1. 保持使用 serde,但增强错误处理(复杂度高,维护困难)  2. 使用 quick-xml(性能更好但错误处理能力有限)  3. 使用 xml-rs(最终选择,平衡了错误处理能力和性能)- **已知边缘情况**:  - 特殊字符处理可能需要额外验证  - 大型 XML 文件的内存使用可能增加- **风险评估**:  - 高风险:错误处理逻辑变更可能影响现有功能  - 低风险:XML 解析器替换不影响外部 API

审查者检查清单

  • • 设计决策是否合理?理由是否充分?
  • • 是否考虑了所有替代方案?
  • • 已知边缘情况是否得到适当处理?
  • • 风险评估是否全面?

总结:AI 是强力助手,但不是替代者

这项研究提供了关于 AI 智能体编码在真实开源项目中表现的首个大规模实证证据。83.8% 的高接受率表明,agentic coding 已具备实际应用价值;54.9% 无需修改即可合并的比例显示,AI 生成代码的质量已相当可靠;而 41.1% 的修订 PR 继续由 AI 协作完成的事实,揭示了人机协同工作流的自然形成。

然而,研究也清晰表明:AI 不是替代者,而是强有力的助手。人类审查者在确保代码正确性、维护性和项目一致性方面仍扮演关键角色,特别是在处理 bug 修复、文档更新和项目特定规范方面。研究明确指出:“智能体编码提供了强大的起点,但需要人类监督来确保正确性、可维护性和与项目规范的一致性”。

随着工具的不断改进和实践的优化,AI 智能体将在软件开发中扮演越来越核心的角色。开发者应主动调整工作流程,通过提供清晰的项目规范、拆分大型任务、增强 PR 透明度等方式,最大化利用 AI 智能体的优势,同时保持必要的人工监督。正如论文所言:人类审查者在确保项目卫生、流水线可靠性和针对性性能优化方面继续发挥关键作用。

这项研究不仅揭示了 AI 智能体编码的当前状态,也为未来开发实践指明了方向:不是人机替代,而是人机协同,各展所长。对于一线开发者和团队领导者而言,理解并优化这一协同模式,将是提升开发效率和代码质量的关键所在。各位,看过此文有什么感想?如有其他想法可以在评论区留言,我们聊聊。或者加入“觉察流”社区群,与群里的小伙伴一起学习、交流。加入方法,私信回复“入群”“加群”即可。

普通人如何抓住AI大模型的风口?

领取方式在文末

为什么要学习大模型?

目前AI大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 , 大模型作为其中的重要组成部分 , 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力, 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 ,为各行各业带来了革命性的改变和机遇 。

目前,开源人工智能大模型已应用于医疗、政务、法律、汽车、娱乐、金融、互联网、教育、制造业、企业服务等多个场景,其中,应用于金融、企业服务、制造业和法律领域的大模型在本次调研中占比超过 30%。
在这里插入图片描述

随着AI大模型技术的迅速发展,相关岗位的需求也日益增加。大模型产业链催生了一批高薪新职业:
在这里插入图片描述

人工智能大潮已来,不加入就可能被淘汰。如果你是技术人,尤其是互联网从业者,现在就开始学习AI大模型技术,真的是给你的人生一个重要建议!

最后

只要你真心想学习AI大模型技术,这份精心整理的学习资料我愿意无偿分享给你,但是想学技术去乱搞的人别来找我!

在当前这个人工智能高速发展的时代,AI大模型正在深刻改变各行各业。我国对高水平AI人才的需求也日益增长,真正懂技术、能落地的人才依旧紧缺。我也希望通过这份资料,能够帮助更多有志于AI领域的朋友入门并深入学习。

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

在这里插入图片描述

大模型全套学习资料展示

自我们与MoPaaS魔泊云合作以来,我们不断打磨课程体系与技术内容,在细节上精益求精,同时在技术层面也新增了许多前沿且实用的内容,力求为大家带来更系统、更实战、更落地的大模型学习体验。

图片

希望这份系统、实用的大模型学习路径,能够帮助你从零入门,进阶到实战,真正掌握AI时代的核心技能!

01 教学内容

图片

  • 从零到精通完整闭环:【基础理论 →RAG开发 → Agent设计 → 模型微调与私有化部署调→热门技术】5大模块,内容比传统教材更贴近企业实战!

  • 大量真实项目案例: 带你亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事‌!

02适学人群

应届毕业生‌: 无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌: 非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能突破瓶颈: 传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

image.png

vx扫描下方二维码即可
在这里插入图片描述

本教程比较珍贵,仅限大家自行学习,不要传播!更严禁商用!

03 入门到进阶学习路线图

大模型学习路线图,整体分为5个大的阶段:
图片

04 视频和书籍PDF合集

图片

从0到掌握主流大模型技术视频教程(涵盖模型训练、微调、RAG、LangChain、Agent开发等实战方向)

图片

新手必备的大模型学习PDF书单来了!全是硬核知识,帮你少走弯路(不吹牛,真有用)
图片

05 行业报告+白皮书合集

收集70+报告与白皮书,了解行业最新动态!
图片

06 90+份面试题/经验

AI大模型岗位面试经验总结(谁学技术不是为了赚$呢,找个好的岗位很重要)图片
在这里插入图片描述

07 deepseek部署包+技巧大全

在这里插入图片描述

由于篇幅有限

只展示部分资料

并且还在持续更新中…

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

在这里插入图片描述

Logo

更多推荐