ChatGPT修bug横扫全场,准确率达78%!网友:程序员要开心了

开发者(KaiFaX)

面向全栈工程师的开发者
专注于前端、Java/Python/Go/PHP的技术社区

作者 | 金磊 衡宇

来源 | 量子位 | 公众号 QbitAI

ChatGPT到底有多会修bug?

这事终于有人正儿八经地搞研究了——

来自德国、英国的研究人员,专门搭了个“擂台”来检验ChatGPT的这项本领。

603e87ef2d1394a9e7979c07e586e9f6.png

除了ChatGPT之外,研究人员还找来了其它三位修bug的“AI猛将”,分别让它们修复40个错误代码。

结果真是不比不知道,一比吓一跳。

ChatGPT准确修复了其中31个bug,遥遥领先第二名(21个),直接拿下“AI修bug界”的SOTA成绩!

f73a612e96510ba0b519b572380a5d2c.png

于是乎,这项研究引来了众多网友的围观和讨论,Reddit上发布此帖的标题更是用上了“小心”“注意”这样的字眼:

64d3ec70a9e2f89e9545baad584195e1.png

但事实上,这真的会让程序员“危”吗?

我们不妨先来看下这项研究。

很会修bug的ChatGPT

虽然ChatGPT并非是为了专门修改bug而生,但自打它问世以来,不少网友们都发现它是具备这项能力的。

因此研究人员为了摸清ChatGPT到底能修改bug到什么程度,便引入了标准的错误修复基准集QuixBugs来进行评估。

以及与它同台竞技的AI选手,分别是CodeXCoCoNutStandard APR

研究人员从QuixBugs中挑了40个问题,分别让它们来修复bug。

让ChatGPT来修bug的方法,就是在对话框里向它提问:

这个代码有什么错误吗?

在第一轮较量过后,结果如下:

487e023c0cf795bc05bd388b453004f7.jpeg

从第一轮battle结果来看,ChatGPT修复了19个,CodeX修复了21个,CoCoNut修复了19个,Standard APR则是7个。

而且研究人员还发现,ChatGPT的答案与CodeX最为相似;这是因为它俩是来自同一个语言模型家族。

这时候就会有小伙伴要问了,“ChatGPT不是还没有CodeX厉害吗”。

别急,不要忘了,ChatGPT的一个特点就是越问越“上道”。

例如在这个基准集中,有一个叫bitcount的问题,ChatGPT在刚才第一轮修复过程中是给了错误的答案:

ea09d02dc85c2e3987d3bdc38f33d159.png

原本ChatGPT应该将第7行的 n ^ = n - 1 改为 n & = n - 1。

但在第一轮中它的回答是:

如果没有更多关于预期行为和导致问题的输入信息,我无法判断程序是否存在错误。

于是在给予它更多信息之后,ChatGPT便答对了这个问题。

以此类推,在对第一轮没答对的问题进行更多信息提示之后,ChatGPT的修bug能力有了大幅提高:

5e1035b954d1ecac3ca24da287df9588.png

最终,ChatGPT在QuixBugs的40个问题里答对了31个。

网友忧喜参半

对于这样的实验结果,网友们对ChatGPT修bug拿下SOTA这事产生的态度却不太一样。

有网友认为这事不应该让程序员感到危机,而是会让他们觉得开心才对。

言外之意,便是程序员们有了这么好用的工具,干活儿就会变得事半功倍。

16ff0a072da1bc1e54d49f1881ce1478.png

不过也有人对此给出了不一样的看法:

工作变得简单,不也就意味着需要的人力更少了吗?

3435340236824449ef52d9f7c4f182a5.png

但还网友觉得,活儿是干不完的:

即使AI能把开发时间缩短一个数量级,也只是意味着程序员将更快处理下一个工作。

db58a272c6cc9072acda59a8d8ec7c88.png

整体来看,ChatGPT很会修bug,并不会给程序员带来什么致命伤害。

但若是把目光放到OpenAI其他的行动中呢?

全球招外包训练ChatGPT写代码

在此之前,OpenAI就表示过ChatGPT的重要用途之一是帮助程序员检查代码

换言之,它被定位可用的辅助工具

相比“ChatGPT带来威胁”的看法,等ChatGPT能力彻底进化,程序员都不用再怕写bug了。

OpenAI布局的棋盘上,可不只有改bug偷塔程序员岗位这一件事。

为了让它更大更强,OpenAI被曝在拉美和东欧等地区,提供了1000个外包岗位

外包员工的主要工作是标注数据,以及训练ChatGPT写代码

这1000人中,40%是程序员,他们为OpenAI的模型创建数据,用来学习软件工程任务。

一直以来,OpenAI的训练数据是从GitHub上抓取的。

现在外包程序员们新手搓的数据集,不仅包括代码行,还包括代码行背后的人类思考逻辑步骤

有位南美的软件开发人员爆料,他为OpenAI完成了五小时的无偿编码测试。

整个过程中,他的任务分为两部分。

  • 用书面英语解释如何处理一个编码问题;

  • 提供解决方案。

如果发现bug,OpenAI会向他详细询问bug的具体情况,并请教如何修正。

程序员需要展示思考问题的每个步骤,他据此猜测OpenAI很可能想为ChatGPT提供非常具体的训练数据。

特斯拉前AI主管Andrej Karpathy在推特上调侃:

最新的热门编程语言是英语。

29aef9bb2e7763a9e74b0238584a268c.png

不过话说回来,ChatGPT修bug能力强是好事,要真能搞进化到可以完成代码里死记硬背的部分,也是好事。

毕竟OpenAI成立时对外宣称的宗旨,就是希望“确保通用人工智能可以造福全人类”。

虽然乍一看它这些年做的事,有点像在致力于用一部分人的努力,让更多人失业

从Dota2赛场上碾压人类,到GPT-3、DALL-E2、ChatGPT的闪耀表现,它带来的新产品总是伴随着“快要让xxx失业了”的议论声。

但无论如何,商业却一直对它青睐有加。

就目前而言,OpenAI的主要商业模式是API费用、token费用和软件许可。

OpenAI近期还发布了ChatGPT的付费版ChatGPT Pro,每月费用42美元(约合285元人民币)。

c4134313227ad01d2ff0f326df906a83.png

虽然机器人对话初创公司如雨后春笋般冒出,但诸多迹象表明市场对OpenAI的持续看好。

微软刚刚宣布将向OpenAI加码投资数十亿美元,并将OpenAI的模型融入微软必应等消费级和企业级产品中。

根据知情人士透露,此次追加投资数额约为100亿美元。

与此同时,WSJ披露的消息显示,1月初,亿万富翁Peter Thiel创立的风投基金Founders Fund正在就投资OpenAI进行谈判。

据悉,融资金额将至少达3亿美元

c4512dcf54f2e7c9ddc53b822f3fe5c0.png

One More Thing

在第一轮实验中,ChatGPT并没有解决QuixBugs数据集的bitcount问题。

但若是你现在再重头问一次这个问题,就会发现ChatGPT可以“一遍过”:

d72128f548bf84fcd79cf0184ee150e4.png

那么这是否意味着ChatGPT已经从这次研究过程中学会求解了呢?

参考链接:

[1] https://arxiv.org/abs/2301.08653
[2] https://www.pcmag.com/news/watch-out-software-engineers-chatgpt-is-now-finding-fixing-bugs-in-code
[3] https://www.reddit.com/r/technology/comments/10oaw6n/watch_out_software_engineers_chatgpt_is_now/
[4] https://en.wi.bwl.uni-mainz.de/dominik-sobania/


1. 回复“m”可以查看历史记录;

2. 回复“h”或者“帮助”,查看帮助;

   开发者已开通多个技术群交流学习,请加若飞微信:1321113940  (暗号k)进开发群学习交流

  说明:我们都是开发者。视频或文章来源于网络,如涉及版权或有误,请您与若飞(1321113940)联系,将在第一时间删除或者修改,谢谢!

757b21c8e07827d06ae64ce9a3705390.jpeg

开 发 者 : KaiFaX

面向全栈工程师的开发者
专注于前端、Java/Python/Go/PHP的技术社区

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值