代码审查(帮助开发人员提高代码质量的代码同行评审)非常耗时。据一位消息人士称,50% 的公司每周要花两到五个小时进行代码审查。如果没有足够的人手,代码审查可能会让人不堪重负,从而占用开发人员的其他重要工作。
Harjot Gill 认为,使用人工智能可以在很大程度上实现代码审查的自动化。他是CodeRabbit的联合创始人兼首席执行官,该公司使用人工智能模型分析代码并提供反馈。
在创办 CodeRabbit 之前,Gill 曾担任数据中心软件公司 Nutanix 的技术高级总监。2018 年 3 月,Nutanix 收购了他的初创公司 Netsil,Gill 也加入了该公司。CodeRabbit 的另一位创始人 Gur Singh 之前曾领导白标医疗支付平台 Alegeus 的开发团队。
据吉尔介绍,CodeRabbit 平台使用“先进的人工智能推理”自动进行代码审查,以“理解代码背后的意图”,并向开发人员提供“可操作的”、“类似人性化的”反馈。
Gill 告诉 TechCrunch:“传统的静态分析工具和 linters 是基于规则的,通常会产生较高的误报率,而同行评审则耗时且主观。”“相比之下,CodeRabbit 是一个 AI 优先的平台。”
这些都是大胆的言论,充斥着许多流行语。不幸的是,对于 CodeRabbit 来说,坊间证据表明,与人工参与的代码审查相比,人工智能驱动的代码审查往往质量较差。
Graphite 的 Greg Foster 在一篇博文中谈到了将 OpenAI 的GPT-4应用于代码审查的内部实验。虽然该模型可以捕捉到一些有用的东西——比如小的逻辑错误和拼写错误——但它会产生大量的误报。Foster 表示,即使尝试进行微调也没有显著减少这些错误。
这些都不是新鲜事。斯坦福大学最近的一项 研究 发现,使用代码生成系统的工程师更有可能在他们开发的应用程序中引入安全漏洞。版权问题也是一个持续关注的问题。
使用人工智能进行代码审查也存在后勤方面的缺陷。正如 Foster 所指出的,更传统的代码审查迫使工程师通过与开发人员同行的会议和对话来学习。卸载审查会威胁到这种知识共享。
Gill 的看法则不同。“CodeRabbit 的 AI 优先方法提高了代码质量,并显著减少了代码审查过程中所需的人工工作量,”他说。
有些人相信了这些宣传。Gill 称,目前大约有 600 家组织正在为 CodeRabbit 的服务付费,而且 CodeRabbit 正在与“几家”财富 500 强企业进行试点。
它还进行了投资:CodeRabbit 今天宣布了由 CRV 领投的 1600 万美元 A 轮融资,Flex Capital 和 Engineering Capital 也参与其中。这笔新资金将使该公司的融资总额接近 2000 万美元,用于扩大 CodeRabbit 的 10 人销售和营销职能以及产品供应,重点是增强其安全漏洞分析能力。
“我们将投资与 Jira 和 Slack 等平台以及人工智能驱动的分析和报告工具进行更深入的整合,”吉尔说,并补充说,总部位于湾区的 CodeRabbbit 正在班加罗尔设立新办事处,因为其团队规模大约增加了一倍。“该平台还将引入先进的人工智能自动化,用于依赖管理、代码重构、单元测试生成和文档生成。”