本文来自微信公众号:APPSO (ID:appsolution),作者:张成晨,原文标题:《全球首个AI程序员来了!超越GPT-4震撼硅谷,但取代码农为之尚早》,题图来自:视觉中国
本文来自微信公众号:APPSO (ID:appsolution),作者:张成晨,原文标题:《全球首个AI程序员来了!超越GPT-4震撼硅谷,但取代码农为之尚早》,题图来自:视觉中国
让 AI 诞生的职业,会因为 AI 失业吗?
初创公司 Cognition AI ,2 个月前才刚成立,一夜之间在 X 卷起了风暴,就因为他们一条浏览量上千万的推文:
今天,我们很高兴地向大家介绍,第一位 AI 软件工程师 Devin。
Cognition AI 团队藏龙卧虎,基本都是国际信息学奥林匹克竞赛金牌选手。
代码构建了互联网的地基,程序员至今仍然是有门槛的高薪职业。这些智商数一数二的人类头脑,为什么要集合起来,手把手地教 AI 深入自己最擅长的领域?
第一位接近人类的 AI 程序员,究竟强在哪里
Cognition AI 对于 Devin 的定义是:世界上第一位完全自主的 AI 软件工程师。
先抛开技术参数,看看 Devin 可以做些什么。
Devin 还没有开放使用,只能通过邮箱提交申请,所以我们现在看到的是官方给出的案例,以及少数第三方开发和产品人员的评价。
先从 Cognition AI 自己开始,他们想让 Devin 完成一个任务:测试大语言模型 Llama 在三个 API 提供商上的性能。
他们发了一段用自然语言写的提示词,接下来,双手离开键盘,一切都交给 Devin。
Devin 先是制定了一个步骤清晰的计划,然后就开始像人类程序员一样写代码。
Devin 决定使用浏览器打开 API 文档,读取并学习如何接入每一个 API。
过程中出现了一个意外的 bug,Devin 表示不慌,哪里有错就解决哪里,添加了一个调试打印语句,通过日志中的错误信息找出修复 bug 的方法。
最终,Devin 构建和部署了一个可视化的网站,既完成了任务,结果又赏心悦目,走进阅卷老师的心坎里。
根据 Cognition AI 的博客,Devin 还能完成更加复杂的任务,并且有超强的学习和调整能力。
甩一篇文章的链接给 Devin,里面介绍了如何通过 ControlNet 等插件,在 AI 图像里嵌入精准的文本。
这本来是 Devin 不熟悉的技术,但它通过自行阅读和学习知识,三下五除二输出了带有用户英文名字的电脑壁纸。
请 Devin 制作一个互动网站,Devin 按照用户的要求,不厌其烦地修改和完善,改进初始化页面、加快帧速率、响应不同大小的窗口。
然后,Devin 将网站部署到 Web 开发平台 Netlify,省时省力省心,只把愉快玩耍的部分留给人类。
除了“冲锋陷阵”,Devin 也很适合“打野”。
面对一个需要不时维护的包含不同算法的开源存储库,Devin 拔剑四顾,帮忙查找和修复错误。比程序员更加火眼金睛。
甚至,Devin 有较强的自我管理意识,能够训练和微调自己的 AI 模型,人类程序员可以把它晾在一边,1 个小时之后再回来看看,进展得怎么样了。
这位程序员真的晾了 AI 一个小时
Cognition AI 还想证明,Devin 不是一个自嗨的道具,所以他们试着在自由职业平台 Upwork 接了一个单,编写和调试代码来运行计算机视觉模型,但交给 Devin 完成。
Devin 有条不紊地设置代码仓库,解决版本冲突,从互联网下载图片供模型使用,采样结果数据,还编写了一份漂亮的报告,正中金主的下怀。
不仅如此,Cognition AI 在 X 骄傲地宣布,Devin 已经通过了一家行业领先 AI 公司的工程面试。
如果是一个刚入门的程序员,面对甲方的任务抓耳挠腮,叫天不应叫地不灵,不妨将任务需求发给 Devin,大神原来就在身边。
试水市场之后是同行比拼,Cognition AI 让 Devin 进行了一次编码基准测试 SWE-Bench,解决开源项目里真实存在的 GitHub 难题。
术业有专攻的 Devin 完全自力更生,端到端正确解决了其中的 13.86%。
乍看不高,比起之前模型在辅助下的最好成绩 4.8%,这已经是非常大的进步了,甚至远远超过了 GPT-4、Claude2 等一众前辈。
目前用过 Devin 的少数用户,给出的也基本是溢美之词。
在彭博社记者的实测中,Devin 从头开始构建一个网站,只要 5-10 分钟。同样的 5-10 分钟,Devin 还能重复创建基于 Web 的经典乒乓球游戏。
之所以说重复,是因为在这个过程里,彭博社记者输入了几次提示词,改进网站外观、乒乓球运动时的物理特性等等,Devin 有求必应。
计算机科学家 Silas Alberti 则发现,Devin 擅长项目原型设计、修复错误以及以图形形式显示复杂数据。
他甚至觉得,Devin 不能被称为“编程助手”了,更像一位独立工作的助理软件工程师,自主自发自治地帮人完成任务。
斯坦福大学机器学习专业博士生 Silas Alberti 也上手了 Devin,两周前用它构建了一个小型 SMS 网站摘要器,并通过 Twilio 部署,使用评价很接地气:
几乎就像一个人类同事!当 Devin 遇到问题,我给它建议时,就像在管理一名初级工程师。
体验之后,这位博士生提高了对自己的要求——成为更优秀的工程师,未来才能管理一支 Devins 团队。
梦幻华人团队打造,克服代码不是终点
Devin 背后的 Cognition AI,就像拔地而起的一座高山,在 2 个月前才成立。
10 名员工甚至没有固定的办公室,在硅谷的 Airbnb 和纽约的办公室之间奔波。
但就是这样一家公司,筹集了 2100 万美元的投资,一夜之间在 X 上火爆。
Cognition AI 的团队目前就 10 个人,华人面孔多,人才密集度过高——DeepMind、Waymo 等大厂的工作经历,10 枚国际信息学奥林匹克竞赛金牌。创始人则主要有三位。
首席执行官 Scott Wu,今年 27 岁,他的兄弟 Neal Wu 也在 Cognition AI 工作,两人都从青少年时期开始参加国际编程比赛,能力在专业圈子里非常出名,甚至让美国国家编程队胜过中国和东欧一筹。
首席技术官 Steven Hao,曾在负责训练 AI 系统的初创公司 Scale AI 担任资深工程师。
首席产品官 Walden Yan,曾就读于哈佛大学,疑似辍学中。
Scott Wu 认为,奥林匹克竞赛的经历就是他们团队的优势。
将编程技能教给 AI,本质上是一个复杂的算法挑战,让系统做出复杂的决策,预测未来的最佳路径,类似他们在竞赛中解决的问题。
Scott Wu 甚至用了一种很浪漫的说法:这就像多年来他们在脑海里玩的游戏。
然而,还没成为大公司,就有了大公司的病,和越来越封闭的 OpenAI 类似,Cognition AI 不对外公开技术细节,也不透露是构建了自己的模型,还是依赖现有的模型。
他们只是泛泛地说,找到了一种 GPT-4 等大语言模型与强化学习技术结合的办法,让 Devin 具备了几个方面的能力。
首先,Devin 在推理和长期规划方面取得了突破,可以规划和执行需要数千个决策的复杂工程任务,并记忆每一步的上下文,还能不断学习和修复错误。
有了推理能力,AI 就能更像人。我们所熟悉的大语言模型,往往是系统根据概率,预测句子的下一个单词,或者代码的下一个片段。但具备推理能力意味着,AI 更加接近人类思考和解决问题的方式。
至于长期规划能力,这其实决定了 AI 能有多大用处。计算机科学家 Silas Alberti 实测发现,大多数编码助手在四五步之后就脱轨了,但 Devin 状态基本一直在线。
彭博社甚至表示,Devin 能在保持一致性的情况下,连续处理数百甚至数千个任务,这或许就是 AI 的“一心多用”吧。
其次,工欲善其事,必先利其器,Devin 配备了人类程序员使用的所有常见开发工具,包括沙盒计算环境中的命令行界面、代码编辑器和浏览器。
再者,Devin 积极地和人类协作,实时报告自己打算怎么做,用哪些命令和代码,任务完成到哪一步,并虚心接受反馈,用提示词提醒 Devin,它就会听劝并做出调整,按照你的需求和你共同完成一个项目。
Devin 的演示效果已经足够惊艳了,但克服代码不是 Cognition AI 的终点,而是一个开始。
Cognition AI 真正希望解决的是推理问题,让 AI 更加接近人类,然后在更广泛的学科里实现更多样的可能性。
文字、图像、视频、代码,还有什么是 AI 学不会的?
当 AI 做得更多,人类负责监督 AI 做得更多
程序员请 AI 代劳自己的工作,不只是 Cognition AI 一家的想法。
2021 年 6 月,GitHub、微软和 OpenAI,就在 GPT-3 的基础上推出了 AI 代码助手“Copilot”。
上个月,一家名为 Magic AI 的公司筹集了超过 1 亿美元,从头设计自己的模型和底层技术,构建“超人软件工程师”。
当 GPT-3.5 刚火的时候,有人认为:当你输入提示词时,你就是在为大语言模型编程。
我们随意地让 AI 生成一段文字、一张图片,也可以算入其中,但与此同时,真正的编程也因为 AI 变得更加普及,把我们带回了一个熟悉的话题:人类的饭碗会被抢走吗?
乐观地想,AI 程序员可以让程序员摆脱繁琐的、无聊的任务,做更加创造性的事情。
而对代码一窍不通但有脑洞的小白,也可以构建自己的网站、服务和应用程序。
反之,悲观主义者或许觉得,AI 程序员让程序员不再是个高薪行业。Cognition AI 评论区里就有人狂发表情包:作为一名软件工程师,我已经完蛋了。
OpenAI 创始团队成员、大神级人物 Andrej Karpathy 也在 X 上发表了自己的看法,软件工程自动化类似于自动驾驶的发展过程:
1.人类手动编写代码 ;2.GitHub Copilot 自动完成几行代码;3.ChatGPT 编写大块代码;4.代码差异越来越大,例如 Cursor copilot++ 风格;5.......
这个过程中,AI 做得更多,人类做得更少,但仍然担任监督的角色。
因为 Devin 的出现,接下来开发人员编写代码需要的工具,包括终端、浏览器、代码编辑器等,可能发生很大的改变,人工监督的抽象程度也会越来越高。
然而也不能高兴得太早,AI 的部分,以及用户界面和体验的部分,还有很多工作要做。人类如何监督,如何调试错误,如何引导 AI,如何用自然语言提出高级的命令,仍然等待解答。
深度学习大佬 François Chollet,观点则更加犀利而尖锐——软件工程不是复制和粘贴代码,而是开发和操作问题及其解决方案的心智模型,Devin 还没到这个境界。
软件工程的革命,或许近在眼前。至少目前,AI 还无法完全取代人类,因为访问过于火爆,Cognition AI 官网一度宕机,看来 AI 还无法做出不会崩溃的网页。
同时,Cognition AI 也还在招兵买马,对软件工程师和机器学习研究员求贤若渴。可见在眼下这个时刻,优秀的人类程序员,珍稀程度前所未有地高,还能再干票大的,为 AI 添砖加瓦,把更多同类甩在身后。
本文来自微信公众号:APPSO (ID:appsolution),作者:张成晨
支持一下 修改