人工智能也能打分吗?阿里巴巴代码竞赛是全球首个人工智能评委

访客 27

人工智能评判的背后是阿里巴巴正在努力推广的代码智能:让人工智能帮助工程师完成更标准化、更美观的代码语言,提高开发者的产品交付质量。

龚晓丽,世界在线商务记者

人工智能的用途是什么?语音识别、视觉识别、神经网络、深度学习、自然人机交互等大规模技术可应用于智能汽车、交通、工业制造、医疗、环保等领域。现在,工程师们给了人工智能一个判断代码竞争的新功能——评论代码和修复错误。

人工智能与代码和工程师之间的关系变得越来越微妙。

4月18日,在2019年阿里巴巴研发效能峰会“83行代码挑战”的决赛中,引入了“人工智能法官”,名为“蓝鹅人”。在专家评委和公众评委的配合下,对竞争对手提交的代码进行了综合评价,这也是全球代码竞赛中第一个出现的人工智能评委。

人工智能也能打分吗?阿里巴巴代码竞赛是全球首个人工智能评委-第1张图片 AI评委是谁? 20.00、19.65、19.55、18.95……83行代码总决赛得分榜上,AI评委根据8组参赛者的代码展示,给出了具有细微差别的分数。分数排行榜会根据AI评委、专家评委、大众评委的综合打分实时滚动,一个逻辑语言的处理甚至可能瞬间提高选手排名。

人工智能法官来自哪里?与会专家告诉记者,它来自阿里巴巴代码平台开发的人工智能系统。人工智能法官在云端运行。当候选者提交代码时,他将快速从静态分析、运行时分析、组通用性和其他维度对代码进行评分。

据了解,人工智能判断集成的prefix(经验聚类的补丁推荐),它可以通过不规则智能扫描自动定位代码中的bug,而不依赖于测试用例和编译结果,并提供修复建议。速度可达毫秒,误报率低。

现场的即时反应是在提交代码后立即以最快的速度得分。据现场专家和评委介绍,评分相当准确。

prefix可以发现一些规则检查和手工评审无法发现的缺陷,从根本上提高代码质量,有效减少开发工程师的缺陷和代码评审时间。同时,Prefix提供的维修建议可以帮助工程师快速了解缺陷并解决问题。

人工智能也能打分吗?阿里巴巴代码竞赛是全球首个人工智能评委-第2张图片

目前,prefix已经部署到阿里巴巴代码生产环境中进行缺陷检查。当工程师编写代码并提交给生产线时,Prefix会对其进行审查,并指出缺陷代码和相应的修复建议。

根据一位工程师的说法,手动检查代码发现错误需要数小时甚至数天的时间,但是现在Prefix可以在不喝咖啡的情况下检查所有提交的代码,从而将效率提高至少20%。

“未来,Prefix将与Ali代码平台合作,为全球开发者提供服务。”比赛主持人孤立地告诉记者。人工智能会取代工程师吗?阿里巴巴表示:“83行代码挑战赛”是一场针对阿里巴巴3万多名工程师的技术会议,旨在进一步提高内部研发效率,可以说是阿里巴巴最大的代码品尝大赛。

人工智能也能打分吗?阿里巴巴代码竞赛是全球首个人工智能评委-第3张图片

这场竞争源于在阿里巴巴内部网上集体烘干83行代码的活动。张剑峰,蚂蚁金衣首席技术官程莉,甚至马云和彭磊也参加了。今年是第三次,总分92.12分。梁希在去年获奖后,又站在了一等奖的领奖台上。不同的是,今年,更多的人工智能评委给他打分。

事实上,人工智能判断的背后是阿里巴巴正在努力推广的代码智能:让人工智能帮助工程师完成更标准化、更美观的代码语言,提高开发者的产品交付质量。

对此,竞赛制作人、阿里巴巴技术合作伙伴杜龙表示:“我希望人工智能能与代码开发产生更多的化学反应,使人工智能与开发工程师结对,帮助工程师减轻负担。”

在代码智能化的过程中,全球领先的科技公司积极参与其中,包括谷歌、Facebook、微软等相关工具。不久前,GoogleBrain发表的一篇论文建议使用神经网络来编辑源代码。

在这方面,一些人提出了人工智能是否会取代工程师的问题。

事实上,代码是一个“动态”的过程,需要很强的泛化能力才能完成。优秀的工程师通常根据不断变化的因素构建代码,例如新的需求、新的网络环境、错误修复和公司战略意图。人工智能可以完成相对简单的任务。在机器能够动态地判断和预测即将到来的编辑内容,甚至开发更复杂和创新的产品之前,还有很长的路要走。

“人工智能判断可以判断代码的结构、逻辑和风格,但代码也具有艺术性、优雅性、可扩展性等特点。人工智能可以从准确的角度判断是或否的概念,但其评价对象并不美观,这将交给人们。“古都告诉记者,目前人工智能的法官没有代码美学,所以这就是为什么只有20%的评级权给它,20%的公众法官和60%的专家法官。

神经元的模糊性仍然是人工智能的弱点,但我们相信人工智能的终极智慧可能还没有被发现。”也许代码将来会被废弃。我们可以毫无障碍地与机器交谈。对社会来说,这将是一场非常激烈的信息革命。”

抱歉,评论功能暂时关闭!