还能自己写AI算法
萧箫 发自 凹非寺
非常AI | 公众号 QbitAI
抛给ChatGPT一个需求,它只能给你一堆运行效果未知的代码?
现在,只需一个小改动,ChatGPT不仅能直接把你的文字需求变成代码,还能帮你跑一遍,把输出结果返还给你!
这个秘诀就是代码解释器插件。
作家Andrew Mayne(现已加入OpenAI)拿到了内测资格,并上手试了试,效果让他直呼“魔法”——
让ChatGPT写个AI人脸检测程序,Andrew Mayne上传自己的照片后,很快就被检测了出来:
再试试让它写个迷宫生成算法,并把通路做成吃豆人动画,完全没问题:
有网友看到这篇内测文章后感叹:
这太疯狂了,它将改变一切。
来看看Andrew Mayne在内测中都发现了什么神奇“魔法”。
发现了什么神奇“魔法”?
作为当前最受瞩目的ChatGPT插件之一,代码解释器是一个在沙盒、防火墙执行环境中工作的Python解释器,包含一些临时磁盘空间。
简单来说,只需要给ChatGPT输入一句话,它不仅能写出代码,还能借助解释器跑通代码、给出每一行代码的解释,将结果输出给你:
生成的内容也是多种多样,从文字、图像和声音的处理,到棋类游戏引擎和简单的AI算法,ChatGPT都能搞定。
文字图像声音处理
先来看看图像的生成和处理效果。
例如,把ChatGPT把克苏鲁图像转换成ASCII:
生成戴着帽子叼着烟斗的猫(有点抽象):
生成网站二维码:
做一份比较简单的动画也没问题,例如“暴风雪”:
再来看看声音。
例如,生成谢泼德音调(一段听起来像是在不断升高或降低的音调,但其实只是一段音调的无限循环):
不仅给出了解释,还生成了一段音调,听起来似乎真有点那个意思了。
最后是文字处理,以OCR算法为例,这是个将图片识别成一段文字的算法:
上传一张旧照片后,AI很快识别出了对应的文字并转换成了.txt文件,看起来也还不错:
那么,再进一步,试试用ChatGPT写算法?
写AI算法
除了开头提到的人脸识别算法,是ChatGPT基于OpenCV生成的以外,Andrew Mayne这次还尝试了NLP算法。
具体来说,就是给出一半的句子,让AI预测下一个词,ChatGPT很快给出了代码:
看起来不错,生成效果如何?
Andrew Mayne试了一句:
They went to the……(他们去了……)
通常这里应该接一个地点名词,例如沙滩或教堂等等。然而,ChatGPT写的AI算法在思考一通后,接了个“shoulders”???
They went to the shoulders.(他们去了肩膀)
对此Andrew Mayne调侃,不用担心ChatGPT写出个GPT-4了。
生成游戏引擎
最后是生成游戏引擎,Andrew Mayne表示“完全没问题”,但并未给出ChatGPT具体的步骤。
这是生成一个跳棋引擎的效果(此外,还能生成象棋引擎):
还可以让它生成一个细胞自动机(Game of Life):
写的程序并非100%正确
有网友看完后表示,代码解释器插件很好地填补了ChatGPT“数学差”的漏洞:
ChatGPT几乎没啥数学技能,但它能轻松地通过生成Python代码来完成这件事。
但也有不少网友在这次演示中,发现了不少Bug。
例如,虽然都是能运行的Python程序,仔细一看基本都有显而易见的小错误,包括:
- 生成谢泼德音调的方法是错误的,不仅得调振幅,还得调频;
- 生成的谢泼德音调本身也有问题,正常来说最后一个音应该与第一个音相同,使得循环可以无限期地继续;
- 用细胞自动机生成二维码图像,其实是反过来用二维码图像倒推出细胞自动机(不过,这里作者也承认他“教”ChatGPT作弊了)
- 行星轨道模拟中的轨道都是圆形轨道,从科学角度来说应该是很明显的椭圆形。
- 图形生成其实也有小bug,不一一列举。
不过,“这些显而易见的bug反而不需要太担心。”
有网友感觉,真正需要担心的是ChatGPT“叠加错误”的问题。
一旦ChatGPT写的东西有bug,就必须立刻重启新会话,否则它的错误就会开始成倍叠加:
这种感觉就像是它试图在掩饰什么,非常奇怪。
最后,虽然ChatGPT已经能写出象棋引擎了,不过有眼尖的网友发现,它依旧不会下象棋。
例如,突然用马吃掉自己的兵。(手动狗头)
参考链接:
[1]https://andrewmayneblog.wordpress.com/2023/03/23/chatgpt-code-interpreter-magic/
[2]https://news.ycombinator.com/item?id=35312609
[3]https://twitter.com/peteskomoroch/status/1639894112307679232