本文来自极客网,作者:极客AI。
大家知道,宣传中的ChatGPT能够采用多种语言编写代码,包括Python和Java,但最新的一项研究却让人惊掉下巴!
根据美国普渡大学最近开展的研究,ChatGPT提交给StackOverflow有关数百个软件开发问题的回答,有一半以上是错误的。
研究人员还发现,与人类用户在Stack Overflow上提交的答案相比,34%的用户更喜欢ChatGPT给出的答案,尽管AI系统生成的答案中包含一些错误。
专家对此表示,如果开发人员继续依赖ChatGPT来解决他们的编程困境,他们的职业声誉将面临风险。
ChatGPT回答编程问题错误率过半
ChatGPT是OpenAI于2022年11月推出的聊天机器人,其背后的关键技术是GPT大语言模型,其底层模型也被用于创建开发人员广泛使用的微软Github编码助理Copilot。
普渡大学的这项研究首次全面考察了ChatGPT对定期在线分享的问题给出回答的特点和可用性。该团队让ChatGPT回答了此前发布在Stack Overflow上的517个问题,对比正确答案发现错误率超过一半。
随着ChatGPT在全球各地的风靡,Stack Overflow在今年早些时候禁止了AI生成的回复。当时,Stack Overflow将ChatGPT给出的答案描述为“表面上很好,但有很多错误”。
Stack Overflow的一位发言人当时解释说:“ChatGPT和其他生成式AI技术给出的答案,对于那些提出问题并寻找正确答案的用户来说是有害的。”
自从发布以来,OpenAI对ChatGPT平台和底层模型进行了逐步改进,但是来到GPT-4后,其回答仍然不准确。Stack Overflow后续也接受并采用了AI技术,但仅仅只是用于对其内容进行分类。
普渡大学在研究中发现,ChatGPT给出的一半以上的答案是错误的,因为它没有正确理解问题的概念。研究人员在报告中写道,“即使ChatGPT能够理解问题,它也无法理解如何解决问题。它经常关注问题的错误部分,或者在没有完全理解问题微小细节的情况下给出高水平的解决方案。”
研究人员还发现,ChatGPT的推理能力也很有限,这导致它在不考虑结果的情况下创造解决方案、代码和公式。
据报道,OpenAI也已意识到此中不足。作为应对,OpenAI在ChatGPT中添加了一个代码解释器,允许AI在沙箱中运行它创建的代码,以检查错误并评估输出质量,验证最终响应进行更改并提供更准确的解决方案。然而,这一功能仍处于测试阶段,而且仅对ChatGPT Plus的用户可用。
开发人员依赖ChatGPT答案面临风险
然而,尽管ChatGPT有明显的缺点,而且77%的回复比人类的回复更冗长,但许多用户仍然依赖ChatGPT来回答他们有关编程的紧迫问题。
研究员宣称,“由于ChatGPT的全面性和清晰的语言风格,39.34%的用户仍然喜欢它给出的答案。我们的研究结果表明,有必要仔细检查和纠正ChatGPT中的错误,同时让用户意识到看似正确的ChatGPT答案所带来的风险。”
IT咨询和服务提供商Doherty Associates企业架构总监Owen Morris说,使用AI有很多好处,但也有缺点,用户在使用ChatGPT等平台之前应该始终考虑到这一点。
他说:“像ChatGPT这样的工具根据训练过的数据(包括从互联网和其他来源抓取的数据)提供见解,但也会保留他们的偏见,因此人类的参与对于准确性和附加值仍然至关重要。重要的是要记住利用自己的团队,这样他们就可以贡献他们自己的领域特定知识和数据,以增强模型的适用性。”
他警告,如果没有人为监督将ChatGPT提供的有关软件开发的回答进行批判性评估,将不正确或有害的信息纳入开发工作中,开发人员将面临很大的风险,包括影响编程质量,甚至影响他们的职业声誉。