近日,微软及旗下代码服务托管平台GitHub和知名人工智能研究公司openAI推出了AL自动编程工具Copilot,它可以从开发者已经编写的代码提取相关信息,尝试理解开发者的意图,并自动生成相应的代码供开发者选择和放弃。当开发者接受或者拒绝的时候,AI会自动学习适应开发者的习惯。
这似乎给了程序员一种方便的工具,但是有些网友表示:果然,最大的敌人不是别人,而是自己;自己被自己开发的东西干掉,这才是真NB;也有些网友觉得这个工具可以帮助程序员解放双手,避免了一些繁琐的代码。那么程序员会被AI系统给代替吗?
显然是不可能的。
首先人工智能不管多么发达,归根结底,都是在人类给定的框架下解决问题。比如,某人每天上下班,公司和家之间的距离有15公里。他可以选择的交通工具包括打的、公交车、地铁、自驾车、共享单车,以及这些工具的组合。如果他去问导航软件,导航软件可以根据他的要求以及实时路况,给出一个最优的出行方案。这在现实中往往是很有用的。然而,虽然有不少人会选择在工作地点附近买房或租房来解决通勤问题,导航软件却绝不会给出搬家的方案。因为导航软件的运行程序,或者说运行框架没有这种手段可供选择,但人却不会受既有框架的约束。
人工智能也不能主动确定需要解决的问题是什么。举一个非常简单的例子,如果我问智能应答软件:“帅帅在哪里,你看到帅帅了么?”它要么回答不知道,要么给出一个错误的答案。而我如果拿这个问题去问人,被问的人不管知识水平如何,第一个反应恐怕都是:“你说的帅帅是谁啊?”我就会告诉他,帅帅是我的小狗,是什么样子,有多大,有什么特点,等等。可见,人类首先能够主动确定要解决的问题是什么,也就是说确定目标。这个例子非常简单,以后人工智能或许也能应对,但并不是软件学会了如何确定问题所在,而是设计人员扩充了或者改变了软件运行的程序或框架。