本文来自微信公众号:新智元 (ID:AI_era),作者:新智元,原文标题:《ChatGPT疯狂生成“辣鸡”内容,Stack Overflow气急,连夜封杀!》,题图来自:视觉中国


OpenAI的新模型ChatGPT才诞生没几天,已经成为广大网友的“装逼利器”。


它的回答不说正确不正确,乍一看可是碉堡了。


再加上生成起来格外方便,一时间这些“看起来不错”的回答就如同潮水般涌向了那个带着全世界代码跑的传奇问答网站,计算机学子真正的老师——Stack Overflow。


然而,为了判断这些答案的对错,就需要让大量具有专业知识的人仔细考察才行。


被逼无奈之下,Stack Overflow不得不急发声明:ChatGPT,禁了!


错误多得离谱,应封尽封


眼看着讨论热火朝天,作为全世界第二大程序员“交友网站”的Stack Overflow官方这边也是态度鲜明:


不要想着用AI机器人混淆视听,发回答就好好发,禁止用ChatGPT直接生成垃圾答案,否则封号。


Stack Overflow在官方通告中表示:这是一个临时性规定,目的是为了应对目前论坛上ChatGPT生成内容的泛滥之势。


图源:Stack Overflow
图源:Stack Overflow


通告指出,做出这个规定的主要原因是,ChatGPT自动生成的答案质量太低,错误太多,而且看上去还挺像那么回事,即使是完全不懂的人也能随便生成答案。


作为一个以问答质量为标杆的社区,这些低质答案会给那些来此寻求帮助的人造成严重困扰和不便,对Stack Overflow本身而言也是有害的。


Stack Overflow表示,未来将继续权衡围绕ChatGPT和“其他类似工具”的新政策,但决定日期以及最终限制的内容尚不清楚。


总之,Stack Overflow这边的态度很明确,总结起来就是:“玩归玩,闹归闹,别拿问答开玩笑”。


网友拍手叫好


而对于这个决定,底下的围观群众有表示完全赞同的。


图源:Stack Overflow
图源:Stack Overflow


“干的漂亮!真希望这个决定不是临时的,而且不仅局限于ChatGPT,应该扩大到所有AI生成的答案。靠AI永远给不出高质量的编程答案,再过100年都没戏。”


“这个禁令不应该是个临时措施。”


图源:Twitter
图源:Twitter


“使用ChatGPT可以通过疯狂灌水,自动生成答案来刷分,即使这些答案是否正确他们根本不知道,也不关心,这对Stack Overflow论坛生态的危害是显而易见的。”


不过,想要识别这类答案实际上并不容易,怎样保证“应封尽封”是个很大的问题。


很多专业人士能看出来这种“伪答案”里的错误,但能做的也就是点个“踩”,不能保证这些内容被清理。



“禁止这样的内容是好事,不过审核的人能做什么呢?上面有帖子说,这些AI生成的答案可能看起来像高质量答案,这意味着对于训练有素的人来说,可能会发现错误而点个踩。


这些AI冒充的用户的答案可能有一些‘赞’,也有一些‘踩’,因为这些回答看起来像高质量答案。


我不知道如何判断一个答案是不是ChatGPT生成的,而且现在自定义标记需要几个月的时间来解决,在及时处理前,这些用户可能继续损害Stack Overflow。”


那么,ChatGPT到底泛滥到什么程度了呢?


有网友自己尝试将提出的问题贴在ChatGPT的对话框中,和后面的一个“真人”给出的答案做了对比,看看到底生成的答案能不能用,结果发现这个“真人”明显不对劲。


这是他自己用ChatGPT生成的回答:


图源:ChatGPT
图源:ChatGPT


这是所谓“真人用户”给出的回答:


图源:ChatGPT
图源:ChatGPT


不难看出,两个答案套路上如出一辙,用语口吻也非常相近,代码示例上也是几乎相同。


这分明也是ChatGPT生成的伪答案。目前这个“真人”已经被Stack Overflow封禁。


其实从ChatGPT的发布方OpenAI来看,这个AI工具的重要用途之一正是帮助程序员检查代码,而作为编码辅助工具,在Stack Overflow上答答题,本来是ChatGPT的正当用途之一。


没想到刚出了不到一星期,就被无情封禁。也不知道是怪自己“学艺不精”,给出的答案没有帮助,还是怪网友太狡猾,最终不堪重负被玩坏了。


有媒体联系了OpenAI,问其计划如何处理这些自动生成答案的准确性问题,目前还没有收到回复。


Stack Overflow还不能被取代

作为一名开发者,你肯定知道这个让亿万公司的程序能够跑起来,让亿万计算机学子能够拿到毕业证的Stack Overflow。


在这里,你可以找到实现某些功能的最佳实践,或者找到那个只有在月圆之夜的凌晨4点才发生的晦涩难懂的错误的解决方案。


不过,在2021年被Prosus以18亿美元的价格收购之后,大家曾普遍在担心是不是也要开启付费VIP模式。而那一天的到来大概会是程序员们的“末日”。


好在,到目前为止,Stack Overflow的用户体验依然是极好的。


至于OpenAI的ChatGPT,它不仅可以回答任何领域的问题,而且每一次的答案都非常精确和详细。


比如,当你问到“How to iterate over an keys and values array in Javascript”时,这就是答案:


图源:ChatGPT
图源:ChatGPT


锦上添花的是,ChatGPT还能通过一个支持性的例子和解释,告诉你这个JavaScript中常见问题的最佳解决方案:


图源:ChatGPT
图源:ChatGPT


那么问题来了,既然ChatGPT可以在输入问题的几秒钟内给出答案,并且还提供了可以直接复制的代码,为何我们不系统性地去使用它呢?


因为,ChatGPT有三个“致命”的缺陷:


输入不能有错


在使用ChatGPT时,必须要精确,哪怕是一个代词(a/an)的改变,答案都会完全不同。


比如,之前的那个问题“How to iterate over an keys and values array in Javascript”,这次我们去掉一个“an”,变成“How to iterate over keys and values array in Javascript”


现在ChatGPT给出的解决方案,就只对由统一的元素列表组成的简单数组有效了。


图源:ChatGPT
图源:ChatGPT


解释不人性化


比如接下来这个Stack Overflow上投票最多的问题:“为什么对已排序数组的操作比对未排序数组的操作快?”


ChatGPT给出的答案,毫无疑问是正确的,但仅此而已。


因为,如果你能理解这个答案的话,自然也不需要问这个问题。


而如果你需要问这个问题,也就意味着你不太能看懂ChatGPT给出的回答……


图源:ChatGPT
图源:ChatGPT


相比而言,Stack Overflow上的答主首先会用非技术性的术语提出了一般背景,然后逐渐将主题拉回到最初和最后的问题上,以加深思考。


图源:ChatGPT
图源:ChatGPT


当然,不是所有Stack OverFlow上的答案都是(也不需要)如此定性和详细的。


但这个例子充分地说明了,人与AI大的区别是后者无法确定对方的理解水平,从而调整回答。


简单来说就是,AI会以同样的方式和术语来解释“相对论”,不管你是物理系的教授,还是普通大学生,或者对此一窍不通的小白。


这对于AI来说,并不重要。


社区的作用


不管你喜不喜欢,Stack OverFlow最大的优势是它的社区。这个平台的创建和运作方式,就是为了鼓励大多数人贡献内容。


而正是这种种类繁多的答案和意见,让用户可以通过考虑每个解决方案的优点和限制,来确定自己的位置并进行选择。


此外,Stack OverFlow的另一个优势在于同行验证。一个被成千上万的开发者证明和测试过的解决方案,可以为其正确性提供极大的保证。(当然这并不意味着100%是正确的)

图源:ChatGPT
图源:ChatGPT


为什么ChatGPT会犯这么多低级错误?


这几天,全体网友都把ChatGPT玩疯了。很多人都意识到,这个新AI确实是一个“装逼利器”——不费吹灰之力,就能给你生成一个牛x闪闪的答案。


而拨开这层华丽的外衣,就会发现它的回答经常错漏百出。


比如:我在2022年是37岁,那么在1985年的时候,我是几岁?


ChatGPT:1985-2022=-37,由于年龄不能是负的,所以此题无解。


有没有一种可能,出题人出生于1985年呢?


图源:ChatGPT
图源:ChatGPT


再比如这位网友问ChatGPT,霍布斯主张三权分立吗?


图源:ChatGPT
图源:ChatGPT


ChatGPT自信满满地给出了答案,还不忘引经据典。


但是,它的回答是错的。


霍布斯是专制主义的支持者,在他看来,替代无政府状态的唯一可行方案,就是将权力赋予君主。


权力在行政部门和立法部门之间分配、制衡的观点,是跟霍布斯同时代的哲学家约翰·洛克提出的。


那么,为什么ChatGPT会犯这样的低级错误?


很明显,这是因为在政治哲学中,霍布斯和洛克几乎总是被一起提及,当ChatGPT去网上找霍布斯的资料时,自然就找到了洛克对三权分立的阐述,然后就错误地把这个观点扣在了霍布斯的头上。


从这个例子中,我们也可以看出支撑ChatGPT的GPT-3语言模型的局限——它只能抓取,但无法推理,也无法思考。


所以,这其实是一个概率事件

最近,很多人都在讨论:哪些工作会首先被AI所颠覆?


这是一个悬而未决的问题。但至少我们可以从老师布置的作业中得到一些启示。


当老师给学生们布置一篇政治哲学论文时,学生的成果对这个世界而言,通常只是对一百万次已经写过的东西的反省。


而有趣的是,AIGC的文本并不像一道数学题,它没有唯一一条通往正确答案的路。


是的,AI的输出,是概率性的:ChatGPT没有任何标记了对错的内部记录,它其实是一个统计模型,这个模型中,是在不同上下文中的语言组合。


而上下文的基础,就是GPT-3训练所用的整体数据集,来自ChatGPT的RLHF训练的额外上下文,prompt和之前的对话,以及很快就会有的反馈。


这些组合产生的结果,无疑令人兴奋。


ChatGPT会运行整个虚拟机,会写代码。


当然,ChatGPT并没有运行Python,答案其实是从构成GPT-3的互联网数据语料库中收集的概率结果——


ChatGPT在10秒内做出了最结果的最佳猜测,这个猜测很可能是正确的,感觉仿佛就是一台真正的计算机在执行相关的代码一样。


这种可能性,足以让人类惊喜。


虽然对于要求准确性的代码工作来说,它有不少灰色地带。但对于AIGC的其他领域,比如生成文本、图像,这种多重的可能性无疑帮助人类拓展想象力的边界。


为什么这几天ChatGPT会爆火呢?


作为底层模型的GPT-3,其实已经诞生两年了。与之不同的是,ChatGPT既免费,又好用。


阅读AI输出的示例是一回事,而自己生成输出,又是另一回事了。


AIGC的革命早已开始。当Midjourney使AI生成的艺术变得简单、免费时,人类对此的兴趣和意识也就出现了爆炸式的增长。


ChatGPT是免费的,这很关键。


要知道,在OpenAI的API上,最大的限制因素就是成本。


使用OpenAI最强大的语言模型Davinci生成750个单词,成本为2美分;使用RLHF或其他方法对模型进行微调,也会花很多钱,从微调模型生成750个单词,需要12美分。。


前GitHub的CEO Nat Friedman曾提出这样一个有趣的观点:在现实世界,AI的应用程序其实是匮乏的。


现在,研究人员每天都在以飞速的方式向全世界提供着大量新功能,而企业和产品人员才刚刚开始消化这些新功能。


再往前想一步,当AI在现实世界中不再匮乏的时候,人类是否会被AI取代?


让我们来看一看ChatGPT给出的回答:


图源:ChatGPT
图源:ChatGPT


参考资料:

https://meta.stackoverflow.com/questions/421831/temporary-policy-chatgpt-is-banned

https://dev.to/bienvenuelisis/will-chatgpt-replace-stackoverflow-2h6g

https://stratechery.com/2022/ai-homework/


本文来自微信公众号:新智元 (ID:AI_era),作者:新智元