别人家的工程师:阿里巴巴工程师有了新帮手,AI可帮助修Bug

尽管工程师用代码创造了AI,但AI又能够对这些代码点评一番、甚至修复Bug,工程师和AI的关系正在变得微妙。测试

AI评委引热议,阿里巴巴表示:AI不会取代工程师人工智能

4月18日,2019阿里巴巴研发效能峰会——“83行代码挑战赛”决赛现场引入了一位“AI评委”,和专家评委、大众评委配合,对选手提交的的代码作综合评价,这也是全球代码比赛中出现的首位AI评委。debug

图为83行代码挑战赛决赛现场排行榜,AI评委、大众评委、专家评委给选手打分blog

这场面向阿里3万多名工程师的技术大会旨在进一步提高内部的研发效率,而“83行代码挑战赛”能够说是阿里巴巴史上最大规模的代码品鉴会。比赛源自1年前阿里内网一次集体晒83行代码的活动,阿里巴巴集团CTO张建锋、蚂蚁金服CTO程立,甚至马云、彭蕾都有参与。开发

这位AI评委运行在云端,当选手提交代码后,会从静态分析、运行时分析、群体共性等不一样维度对代码快速打分。比赛现场,大屏实时显示选手分数,随着AI评委、专家评委、大众评委的分数依次出现,分数排行榜会根据综合打分实时滚动,一个逻辑语言的处理甚至可能瞬间提升选手排名。部署

结合现场专家和大众评委的观点来看,AI评委的评分至关准确,且打分最为迅速,几乎是在代码提交后马上出现结果。get

AI评委是谁?io

这位AI评委来自阿里巴巴代码平台研发的人工智能系统,其中最重要的一环是集成了Precfix(Patch Recommendation by Empirically Clustering),不依赖测试用例、编译结果,经过非规则化的智能扫描,便可自动定位代码中的Bug,并提供修复建议,速度可达毫秒级,且误报率低。编译

图为AI评委给出的选手打分,Precfix定位了代码中的缺陷,并给出修复建议社区

Precfix可以发现一些规则检查和人工评审都没法发现的缺陷,根本性地提高代码质量,有效减小开发工程师debug及代码评审时间。同时,Precfix提供的修复建议,能帮助工程师快速理解缺陷和解决问题。

图为工程师根据Precfix提供的修复建议修复了缺陷

目前,Precfix已被部署到阿里巴巴代码生产环境,用于缺陷检查。工程师写好代码,就提交到线上,Precfix会进行review,指出缺陷代码及相应的修复建议。

据一位工程师透露,过去人工review代码查找bug可能须要几小时甚至几天时间不等,而如今不用一杯咖啡的时间,Precfix就能够review完提交的所有代码,提升了至少20%效率。

将来,Precfix还会随着阿里代码平台的上云,一块儿为全球开发者服务。


原文连接 本文为云栖社区原创内容,未经容许不得转载。

相关文章
相关标签/搜索