利用AI代码审查大规模提升代码质量 - Engineering@Microsoft

Microsoft Engineering 2026-06-22T09:36:19.511646

利用AI代码审查大规模提升代码质量 - Engineering@Microsoft

在微软,我们一直在寻找提高开发者生产力和代码质量的方法。在这一领域,我们最具影响力的创新之一便是AI驱动的代码审查助手——一种增强拉取请求(PR)审查的AI工具。这款AI助手最初只是一个内部实验,如今已扩展,支持公司内超过90%的PR,每月影响超过60万个拉取请求。它帮助我们的工程师更快地发现问题、更早地完成PR,并强制执行一致的最佳实践——所有这些都集成在我们标准的开发工作流中。我们与开发者事业部的数据和AI团队紧密合作,共同构建了这一能力。内部开发的经验教训已被整合到GitHub的AI驱动代码审查产品中,并惠及外部客户。这是一个第一方(1P)创新如何塑造第三方(3P)产品,以及外部使用如何持续反馈内部改进的范例。

用AI解决PR审查中的实际问题

拉取请求(PR)是开发工作流的关键部分,但同时也存在一些摩擦。审查者经常将时间花在低价值的反馈上,比如语法问题或命名不一致,而更有意义的关注点——如架构决策或安全影响——却可能被忽视或延迟。另一方面,作者可能难以提供足够的上下文,尤其是当PR很大或跨多个文件时。此外,还有规模挑战:拥有数千名开发者和仓库,确保每个PR都得到及时且彻底的审查非常困难。我们曾见过PR等待数天甚至数周才被合并的情况,或者重要反馈被遗漏。这些痛点促使我们尝试在审查过程中引入AI辅助。目标是让AI处理重复性高或容易被忽视的审查方面,从而让人类审查者专注于更高层面的问题。

我们的解决方案是将AI代码审查器集成到现有的PR工作流中。每当创建一个拉取请求时,AI助手会自动作为审查者之一参与其中。它的具体功能如下:

AI审查器之所以有效,是因为它能够自然地融入现有工作流。它被当作其他任何审查者一样对待——无需学习新的UI,无需安装额外的工具。开发者可以直接在PR线程中与其进行对话式交互,感觉就像是团队的无缝延伸。甚至可以配置为在PR创建时自动参与,作为第一个审查者——始终在线,随时待命。这种无摩擦的集成是其高采用率和影响力的关键。

对质量和速度的影响

AI审查器的采用和影响非常显著。一些好处包括:

定制化:为你的团队量身定制审查

提供的强大功能之一是其可配置性和可扩展性。团队可以定制体验,提供特定于仓库的指南。此外,团队可以定义特定于场景的自定义审查提示。公司内的各个团队正在利用这些定制功能进行专业审查,比如根据历史崩溃模式识别回归,或者确保飞行实验和变更门控到位。

1P与3P的共同演进

查看原文