代码挑战赛惊现AI评委,程序员的饭碗也难保?
原标题:代码挑战赛惊现AI评委,程序员的饭碗也难保?
未来那些职业会被机器人或人工智能替代?相信你脑海中第一时间想到的,大多是洗碗工或者流水线上的机器人,而随着人工智能的不断发展,司机、作者、翻译这些职业似乎也变得“危险”了起来。与之相对应的,程序员这个职业却因为技术的发展变得更加稳固了,毕竟在大多数人看来,AI再智能也是靠人敲出代码才能造出来的。
不过,程序员就算是人工智能时代的“金饭碗”了吗?在4月18日举行的2019阿里巴巴“第83行代码挑战赛”决赛现场,突然从云端上“空降”了一位AI评委。以远超专家、大众评委的速度,给选手提交的代码做出了综合评价和修复缺陷建议。
据了解,在这场面向阿里3万多名工程师的技术大会上空降的AI评委,本身也是由阿里巴巴代码平台研发。据官方介绍,其最重要的一环是集成了Precfix(Patch Recommendation by Empirically Clustering),不依赖测试用例、编译结果,通过非规则化的智能扫描,即可自动定位代码中的Bug,并提供修复建议,速度可达毫秒级,且误报率低。
阿里巴巴对Precfix可谓寄予厚望,人类工程师要检查并修复一个小BUG可能需要消耗相当多的时间和精力。而理论上来说,Precfix能够发现一些规则检查和人工审核都无法发现的程序缺陷,从根本上帮助工程师提升代码质量,进而减少开发工程师debug和代码评审的时间。而在这场“第83行代码挑战赛”挑战赛上,AI评委也确实表现出色,能够快速精准发现需要修复的代码缺陷。
对于AI评委,阿里巴巴技术合伙人多隆表示,“希望AI能与代码开发产生更多化学反应,让AI结对开发工程师,帮助工程师减负”。不过在一些网友看来,AI评委的出现,却意味着今后程序员的工作也将从“金饭碗”变成“纸饭碗”了,“以后的以后只要产品经理说出需求,成品就好了。”
别说,按照世界前列的互联网科技公司的做法,说不准真的有一天,AI会和程序员抢饭吃。据了解,目前谷歌大脑、DeepMind、Facebook都或多或少地关注着机器的自我编程,甚至很早之前DeepMind方面就开发了一个“神经编程解释器”,其能自己学习并且编辑简单的程序,排序的泛化能力也比序列到序列的LSTM更高。
不过这些自动生成的代码功能还相当有限,以微软在2017年推出的DeepCoder为例,其所创建的代码也是基于大量现有代码示例。如果想要AI真正写出具有创造力的代码,还需要长时间的研究和训练。
至于在阿里巴巴的“第83行代码挑战赛”挑战赛上惊艳亮相的AI评委,其重要的功能也并非“在线写代码”,而是辅助型地纠错,官方也没有过多地透露Precfix今后是否还会肩负起“纠错并改正”的重担。
其实,在国外已经有科技互联网公司Yelp尝试过直接通过神经网络清除App上的BUG,本意是想让程序员能够放个假。但没想到假没放成,程序员还遭遇集体加班——原来这个神经网络已经智能到透过现象看本质,直接从源头上解决BUG问题,把所有的代码都删除了。
鉴于有此先例,在相关技术真正成熟之前,各大企业还需谨慎聘用“AI大牛”。