首页 >>  正文

代码输完后按什么运行

来源:baiyundou.net   日期:2024-09-22

萧箫 发自 凹非寺

量子位 | 公众号 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程序,仔细一看基本都有显而易见的小错误,包括:

  1. 生成谢泼德音调的方法是错误的,不仅得调振幅,还得调频;
  2. 生成的谢泼德音调本身也有问题,正常来说最后一个音应该与第一个音相同,使得循环可以无限期地继续;
  3. 用细胞自动机生成二维码图像,其实是反过来用二维码图像倒推出细胞自动机(不过,这里作者也承认他“教”ChatGPT作弊了)
  4. 行星轨道模拟中的轨道都是圆形轨道,从科学角度来说应该是很明显的椭圆形。
  5. 图形生成其实也有小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

— 完 —

量子位 QbitAI · 头条号签约

","gnid":"995f7f3be9a2beffd","img_data":[{"flag":2,"img":[{"desc":"","height":"1212","title":"","url":"https://p0.ssl.img.360kuai.com/t010f47f78e8eb0d14b.jpg","width":"1376"},{"desc":"","height":"234","title":"","url":"https://p0.ssl.img.360kuai.com/t01b8ee7649577b9691.jpg","width":"872"},{"desc":"","height":"1112","title":"","url":"https://p0.ssl.img.360kuai.com/t01f4221497d551d8fa.jpg","width":"1140"},{"desc":"","height":"274","s_url":"https://p0.ssl.img.360kuai.com/t01104782462dafa27e_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01104782462dafa27e.gif","width":"274"},{"desc":"","height":"1168","title":"","url":"https://p0.ssl.img.360kuai.com/t01c05c9fa471e4abe4.jpg","width":"1048"},{"desc":"","height":"627","title":"","url":"https://p0.ssl.img.360kuai.com/t0103e5ec8f1cbe3bb5.jpg","width":"1080"},{"desc":"","height":"669","title":"","url":"https://p0.ssl.img.360kuai.com/t0126c725855f77865b.jpg","width":"1080"},{"desc":"","height":"547","title":"","url":"https://p0.ssl.img.360kuai.com/t01695db8ad34f82812.jpg","width":"1080"},{"desc":"","height":"238","s_url":"https://p0.ssl.img.360kuai.com/t0115e7ff6d850569c3_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t0115e7ff6d850569c3.gif","width":"246"},{"desc":"","height":"961","title":"","url":"https://p0.ssl.img.360kuai.com/t010586ddf26eb676d7.jpg","width":"1080"},{"desc":"","height":"1219","title":"","url":"https://p0.ssl.img.360kuai.com/t01226c65a72b08971f.jpg","width":"1080"},{"desc":"","height":"502","title":"","url":"https://p0.ssl.img.360kuai.com/t0154cad4179246e367.jpg","width":"1080"},{"desc":"","height":"1416","title":"","url":"https://p0.ssl.img.360kuai.com/t01ef9e3234fc975158.jpg","width":"1078"},{"desc":"","height":"1066","title":"","url":"https://p0.ssl.img.360kuai.com/t01a1b9cdebf5fc2f03.jpg","width":"1074"},{"desc":"","height":"258","s_url":"https://p0.ssl.img.360kuai.com/t011076721c30ad6d87_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t011076721c30ad6d87.gif","width":"260"},{"desc":"","height":"276","s_url":"https://p0.ssl.img.360kuai.com/t01a48ec02d57e9e90a_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01a48ec02d57e9e90a.gif","width":"278"},{"desc":"","height":"215","title":"","url":"https://p0.ssl.img.360kuai.com/t01305932ceabd3abec.jpg","width":"1080"},{"desc":"","height":"743","title":"","url":"https://p0.ssl.img.360kuai.com/t01fa539e9f8b9114f6.jpg","width":"1080"},{"desc":"","height":"227","title":"","url":"https://p0.ssl.img.360kuai.com/t01d98fc30f7284b0d8.jpg","width":"1080"},{"desc":"","height":"340","s_url":"https://p0.ssl.img.360kuai.com/t01288a182d5cc25fec_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01288a182d5cc25fec.gif","width":"344"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"hbase","pub_time":1680162480000,"pure":"","rawurl":"http://zm.news.so.com/e6170e328c29e1c67dc94175a146b090","redirect":0,"rptid":"5355dbdd6815d3e8","rss_ext":[],"s":"t","src":"量子位","tag":[],"title":"ChatGPT能自己跑代码了:提需求输出运行结果,网友直呼“魔法”

冷沫汤3206我用C语言编写了一个程序,然后运行它.我输入一个数值,再看它的运算结果,应该按哪个键? -
都海乔13138245901 ______ Alt + F5

冷沫汤3206将编制的加工程序输入数控系统,具体的操作方法是什么?
都海乔13138245901 ______ 将编制的加工程序输入数控系统,具体的操作方法是: 折叠启动数控机床 先通过机械操作面板启动数控机床,接着由CRT/MDI面板输入加工程序,然后运行加工程序. 1...

冷沫汤3206VC++6.0输入完代码后怎么编译怎么运行 -
都海乔13138245901 ______ F7编译 Ctrl+F5运行

冷沫汤3206c语言蓝屏幕背景下编完数据怎么出结果,按什么键, -
都海乔13138245901 ______ Ctrl+F9是编译运行,运行完后会退回到蓝屏幕界面,再按Ctrl+F5可以查看运行结果.你也可以在代码最后加上getchar(),这样就不会直接退到蓝屏幕了

冷沫汤3206VC++6.0输入完代码后怎么编译怎么运行
都海乔13138245901 ______ ctrl+F5

冷沫汤3206我这程序为什么输入后不能再c中自动运行,的按f7才行啊! -
都海乔13138245901 ______ 在VC6.0下程序要运行的步骤是:写代码->编译(F7就是编译)->运行.编译就是生成.obj结尾的文件.好像是字节码文件,才可以运行.VC6.0下,编译可以按F7,也可以点击感叹号左边第二个按钮.运行按钮就是感叹号,或者Ctrl+F5,调试是F10,调试运行到光标处是Ctrl+F10;

冷沫汤3206笔记本“运行”模式下打完代码后要不要按什么键?打完代码然后不用按什么它就自动有效? -
都海乔13138245901 ______ 按回车键执行代码.冒号不用敲,那是人家给你的提示.

冷沫汤3206C语言程序输进去后需不需要输入数据后运行,如果要,怎么输入 -
都海乔13138245901 ______ 这个要看你源代码是怎么编的,有的要输入,有的不输入,输入用 scanf 或 gets

冷沫汤3206lingo求距离是代码写完按哪个键运行里? -
都海乔13138245901 ______ 按f5或者点击菜单栏上面那个红色的靶形按钮...

冷沫汤3206Python 2.7.3 IDEL中输入多行代码时,如何回车? x = raw - input("Enter Name:") print "Hey" + x -
都海乔13138245901 ______ 楼下的两种建议都对.一个是做个函数.放进去.另一个是把代码放在文件里. 当然也可以用些技巧实现. 比如 if True: x=raw_input("enter name:") print x 回车两次 或者是这样子 exec("""\ x=raw_input("enter name:") print x """) 除此以外,就是用类.再没有想出来其它的办法了. 在命令行执行状态下,每输入一行代码,就立即解释执行.

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024