作者 | 徐杰承
审校 | 言征
正当谷歌与微软为抢占AI搜索引擎市场争得不可开交时,一部分程序员却无心吃瓜。因为他们已经提前意识到了,当这场搜索之战落下帷幕后,软件巨头们将继续携带着ChatGPT或其他人工智能生成工具,向着自动编码的蓝海大步进发。到时别说是吃瓜,连自己的饭碗都有可能受到威胁。
在如今的自动编码领域,最成熟且最为人熟知的两款AI,正是近来风头无两的ChatGPT以及微软于去年6月上线的AI编程工具Copilot,而这“二位”也正是现阶段最被寄予厚望将取代程序员的当红明星。那么就目前而言,ChatGPT与Copilot的编码能力究竟如何,是否真如传言所说将在短期内取代所有初级甚至部分中级开发者呢?
日前,一位美国技术专家利用多个JavaScript函数需求,测试了ChatGPT与Copilot在数据处理与算法生成方面的能力。接下来,就让我们一起通过这些结果来了解一下目前AI在编码方面的真实水平,然后扪心自问,自己是否真的将会被取代呢?
1、JavaScript函数接受可变数量数组并返回交集
第一场测试中,测试者首先要求ChatGPT和Copilot生成一个JavaScript函数,具体条件为:需要能接受可变数量的数组并返回它们的交集。
OpenAI ChatGPT:
微软 Copilot:
对此ChatGPT所生成的函数假定提供少于一个数组是无效的。通过使用Set,ChatGPT确保结果中不存在重复项。交集应该是一个集合操作,重复的应该被删除。Copilot代码则返回了一个可能包含重复项的数组。
而ChatGPT和Copilot都没有按照长度对原始参数进行升序排序,这是一个微不足道的优化,却能带来巨大的改变。如果任何参数的长度为0,则没有交集;不管怎样,它缩短了循环,因为最大交集与最短数组参数相同。
随后,测试者要求ChatGPT和Copilot提高函数的执行效率。
OpenAI ChatGPT:
微软 Copilot:
面对以上问题,Copilot生成了与此前请求相同的代码。而ChatGPT给出了不同的答案并添加了评论,称该函数不会像预期那样对对象起作用,但这项描述并不准确。
而后,测试者利用相同方式检验了ChatGPT与Copilt所提供的两个最快交集库所生成代码的运行效率和内存消耗情况。
ChatGPT所生成代码执行时所占用的CPU较低,但运行效率并不理想,而Copilot生成代码虽然对于堆的使用量较低,但CPU占用率和运行效率较差。
总而言之,在这项测试中ChatGPT与Copilot都无法生成足够高效的代码;ChatGPT在该问题中给出的假设有误;而Copilot所生成的函在参数包含重复值时,会生成不产生集合的代码。
2、JavaScript函数:笛卡尔积
第二场测试,则是要求ChatGPT与Copilot完成一个笛卡尔积的JavaScript函数。
OpenAI ChatGPT:
微软 Copilot:
熟悉笛卡尔积的人都会知道,从内存利用率和性能的角度看,ChatGPT和Copilot所生成的结果都是爆炸性的。简单的实现将消耗大量的RAM用以存储所有的组合,并且直到所有组合生成后才能返回结果。ChatGPT和Copilot所生成的函数都存在这些缺点。
随后,测试者再次要求ChatGPT和Copilot提高函数效率。
OpenAI ChatGPT:
微软 Copilot:
针对这项需求,ChatGPT的表现令人感到惊喜。但在整体函数中,ChatGPT犯了一个严重的错误,yield [item,...result]并不在生成器内部,而是在一个recursion之中。而Copilot则直接无视了需求变化,返回了与此前相同的结果。
在代码运行效率及内存消耗情况方面,ChatGPT和Copilot的表现则如下表所示。
总体看来,ChatGPT与Copilot均无法生成笛卡尔积函数的正确代码;ChatGPT会作出可能无效的假设,例如需要两个参数;虽然检测结果显示ChatGPT生成的代码内存效率更高,但其根本无法顺利运行。
3、JavaScript函数储存对象与原始参数
第三回合,测试人员要求二者生成能够存储对象和原始参数的JavaScript函数。
OpenAI ChatGPT:
微软 Copilot:
对此,ChatGPT与Copilot均生成了较为低效的代码,先进行字符串转化再进行字符串比较的效率很差,并且会大量消耗内存。
虽然有一些JavaScript值无法被转化为字符串,例如Infinity和NaN。但遗憾的是,JavaScript JSON规范是在数据科学和微服务时代之前定义的,而这些值的存在主要是为了在代码出现某些错误条件时,程序还可以用特定的值来表示所产生结果。
最后,为验证函数效率,测试者将ChatGPT与Copilot所生成的代码与常用缓存工具nano-memoize 和micro-memoize进行了横向对比,使用以下代码生成第12个斐波那契数列。
其中nano-memoize是运行效率最高的,几乎是ChatGPT和Copilot所生成代码运行效率的两倍,并且其所使用的内存也是最低的,而micro-memoize的表现则可以说紧随其后。虽然在CPU利用率方面,Copilot表现不错,但综合来看,ChatGPT和Copilot在这场测试中的表现依然不足以击败一个成熟的程序员。
4、总结与预测
通过这三场测试,我们不难发现,虽然使用ChatGPT和Copilot所生成的代码肯定具有一定价值。但就目前而言,无论是ChatGPT还是Copilot,均无法通过简单的任务描述生成足够准确且高效的代码,甚至在某些情况下,它们也会犯下一些非常糟糕的错误。在得知这个结果后,不少开发者也分分表示:感觉自己还能再坚持几年。
对于如今的企业或是程序员而言,如果你希望利用ChatGPT、Copilot或是其他代码生成工具帮助自己完成一些简单的辅助编码任务以加速构建,那么你完全能够得到足够的支持。但如果希望依靠它们彻底解放研发,那么你可能需要花大价钱为其配备一整支强大的调试团队。
然而即便结果如此,今天的我们仍不能忽视AI在自动编码领域的潜力以及这些系统背后强大的软件企业。可以肯定的是,伴随着训练量与技术成熟度的增长,未来的自动编码工具将继续扩充其在不同场景的业务数据,并逐步尝试解决一些更专业、更场景化的实际任务。
最后,对于“AI到底能否在未来取代程序员”这个问题,目前最可靠的答案,也许就是前阿里以色列机器视觉实验室负责人Itamar Friedman在一次采访中所做出的预测了——“在未来的10到20年内,人工智能系统将可能使非程序员的创造者使用自然语言指令进行0错误的开发,届时我们的世界仍会需要大量的程序员,但其角色将可能会发生难以预测的变化。”
参考链接:
https://medium.com/@anywhichway/chatgpt-vs-copilot-vs-programmers
https://github.com/anywhichway/nano-memoize
https://github.com/planttheidea/micro-memoize
以上是三场PK,暴露了ChatGPT的层次!的详细内容。更多信息请关注PHP中文网其他相关文章!

https://undressaitool.ai/是功能强大的移动应用程序,具有成人内容的高级AI功能。立即创建AI生成的色情图像或视频!

有关使用distressai创建色情图片/视频的教程:1。打开相应的工具Web链接; 2。单击工具按钮; 3。根据页面提示上传所需的生产内容; 4。保存并享受结果。

脱衣服AI的官方地址是:https://undressaitool.ai/; undressai是功能强大的移动应用程序,具有成人内容的高级AI功能。立即创建AI生成的色情图像或视频!

有关使用distressai创建色情图片/视频的教程:1。打开相应的工具Web链接; 2。单击工具按钮; 3。根据页面提示上传所需的生产内容; 4。保存并享受结果。

脱衣服AI的官方地址是:https://undressaitool.ai/; undressai是功能强大的移动应用程序,具有成人内容的高级AI功能。立即创建AI生成的色情图像或视频!

有关使用distressai创建色情图片/视频的教程:1。打开相应的工具Web链接; 2。单击工具按钮; 3。根据页面提示上传所需的生产内容; 4。保存并享受结果。
![[带AI的吉卜力风格图像]介绍如何使用Chatgpt和版权创建免费图像](https://img.php.cn/upload/article/001/242/473/174707263295098.jpg?x-oss-process=image/resize,p_40)
OpenAI发布的最新模型GPT-4o,不仅能生成文本,还具备图像生成功能,引发广泛关注。其中最受瞩目的功能便是“吉卜力风格插画”的生成。只需将照片上传至ChatGPT,并给出简单的指令,即可生成宛如吉卜力工作室作品般梦幻的图像。本文将详细解读实际操作流程、效果感受,以及需要注意的错误和版权问题。 OpenAI发布的最新模型“o3”详情请点击此处⬇️ OpenAI o3(ChatGPT o3)详解:特性、定价体系及o4-mini介绍 吉卜力风格文章的英文版请点击此处⬇️ 利用ChatGPT创作吉

作为一种新的交流方法,在地方政府中使用和引入Chatgpt引起了人们的关注。尽管这种趋势在广泛的领域正在发展,但一些地方政府拒绝使用Chatgpt。 在本文中,我们将介绍地方政府中ChatGPT实施的示例。我们将通过各种改革实例,包括支持文件创建和与公民对话,从而探索如何通过各种改革实例来实现地方政府服务的质量和效率提高。 不仅旨在减少员工工作量并改善公民的便利性的地方政府官员,而且都对高级用例感兴趣。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

WebStorm Mac版
好用的JavaScript开发工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Atom编辑器mac版下载
最流行的的开源编辑器