程序员会被人工智能取代吗?
这个问题早在十几年前就开始被人讨论。那时候,小灰觉得这只不过是在杞人忧天。而如今,这一切已经无限接近现实。
上个月,有一家名为Cognition的10人初创公司宣布,他们研发出了世界上第一位AI程序员Devin。此消息一放出来,立马刷爆了全网!
好家伙,世界上第一位AI程序员Devin诞生,程序员这一下子职业不存在了?
Devin的"本领"
只需给Devin一句指令,Devin就可端到端地处理整个开发项目!而且Devin不会生病,不会请年假,不会跟你发牢骚。
不仅如此,在SWE-bench基准测试中,它无需人类帮助,可解决**13.86%**的问题。
相比之下,GPT-4只能处理1.74%的问题,且都需要人类提示告知处理哪些文件。
在这里给大家简单普及一下,SWE-bench基准测试是什么?
SWE-bench是一个要求AI智能体解决开源项目(例如Django和scikit-learn)中实际GitHub问题的测试。
可以说,Devin解决代码问题的能力远远超过了此前所有AI大模型!
从零构建网站、自主查找并修复Bug、甚至是训练和微调自己的AI模型通通都不在话下~也可为一些成熟的代码库做贡献。
据介绍,它已经成功通过一家AI公司面试,Cognition的开发者You还试着在全球最大的综合类自由职业平台Upwork上,为Devin提供真正的工作。
Devin能有多厉害?
1.端到端构建和部署程序
Devin可以帮我们解决的不只有是代码,还包括与之相关的整个工作流。
比如,当我们需要设计一个网页游戏时,Devin不仅能生成网页,还能直接完成服务端的部署,然后直接发布上线,省去了中间的人工操作。
只需要告诉Devin,我们想做一个个人网站,里面运行一个Devin定制版的生命游戏。
接着,Devin就会按照自己设计的这个清单开始编写代码,然后部署服务......
最终完成全部工作之后,一个即点即玩的游戏链接就呈现在了我们面前。简直不要太神奇!
2.自主查找并修复bug
不仅能一气呵成完成开发部署,Devin对代码的debug能力也是一流。
开发者给Devin一个GitHub链接,让它先熟悉项目情况,然后准备数据进行测试。
接着,Devin就会按部就班地编写测试用的程序并准备好有关数据,然后运行。
结果,在开发者已经发布的完整项目之中,Devin还真的找到了连开发者自己都没有发现的漏洞。
发现漏洞之后,Devin会回溯报错出现的位置及对应的数据,然后分析原因并给出解决方案。
最终经过调试,程序的bug被成功修复,完美通过了测试。
3.训练和微调自己的AI模型
除了这些一般的程序或项目,作为一个全能型AI助手,Devin还有能力帮助人类训练和微调其他AI。
对于一些常见的模型(比如示例中的Llama),用户只需要在promot中提及模型的名称,Devin就直接知道要训练哪个模型。
而在这个示例中,微调的具体方法(QLoRA)是以GitHub链接的形式输入给Devin的。
接到指令后,Devin还是像处理平常的程序一样边规划边执行,所需环境和依赖,还有模型本体,都会自动下载安装。
这些准备都完成之后,微调工作就会有条不紊地进行,而且其中的状态可以实时监控。
Devin的酷炫功能不仅如此还有很多很多...简直和活生生的程序员没有两样,而且人家不抱怨996,你说气人不!
Devin要怎么使用?
很遗憾,查看了官网,Devin已经真的是"程序员",是一个活生生的人了, 而不是供大家随意使用的工具,官网对Devin的称呼都变成聘用Devin了。
不过,小灰经过多方面调研,终于找到了一个网址,大家可以体验一下Devin的本领。体验方法附在文末。
那么,怎么证明我们使用的是真正的Devin程序员呢?我们来问一问他:
在这个网址和Devin对话只有20次机会,我们可以等后续正式发布的时候,再聘用Devin为我们工作。
Devin会不让程序员失业了?
就在前不久,英伟达CEO黄仁勋表示,自己相信就在不久的将来,人类再也不需要学习如何编码了,孩子们应该停止编程课。
谁能想到,才短短数月,他的预言就成真了!我相信很多大佬程序员一定会出来反驳我:自己的工程经验众多,怎么会是一个AI程序员能替代的呢?
写在最后
2024年是AI激动人心的一年。程序员们做好被解放的准备了吗?相信很多朋友都有对AI的依赖以及恐惧。
但是小灰觉得,AI正在替代"初级程序员",辅助"中级程序员",所以程序员朋友们,如果想不被替代,要么就成为掌握AI的中级程序员,要么就成为实实在在的"高级程序员"。
选择了程序员这份工作,我们就需要终身学习,你对AI程序员Devin有什么看法?你认为人类程序员会被AI所取代吗?欢迎在留言区交流。