联动天下-只看到“iPhone时刻”?ChatGPT+代码解释器,才是释放魔法

3月底,OpenAI 迎来了“iPhone 时刻”,可调用插件“帮助 ChatGPT拜访最新信息、运转核算或运用第三方服务。”以后,用户出门选哪个商铺就能够通过询问 ChatGPT,而 ChatGPT 则会调用“美版群众点评”给用户建议。俨然一副超级流量入口的姿势。

除了引入第三方东西插件如 WolframAlpha、OpenTable 等,OpenAI 还发布了自己开发的插件——浏览插件和代码解说器。其间,代码解说器能够用来生成代码、运转代码、上传和下载从 csv 数据到图画等一系列格局的文件,并在 ChatGPT 界面内评估输出成果。

现在,代码解说器能够运转 Python,但只能拜访一小部分库,履行少数特定的使命。《华尔街日报》畅销小说家、OpenAI 范畴的科学传播者 Andrew Mayne 最近就在一向测验代码解说器,他发现 ChatGPT 即便只能运用根本库,也能履行许多使命,非常有意思。

图片

除了生成代码之外,代码解说器还能够剖析输出成果,并把成果代入另一个函数中。这就意味着,能够将不同的代码部分串联起来,将一个部分的输出成果,输入到另一个部分,完成功能的连续。

联动天下—以文章开头的吃豆人动图的完成为例,先让代码解说器用算法生成一个迷宫,然后将它转换为一系列的方块,用以直观地表明迷宫的墙面和通道,接下来再用算法找到迷宫的出口,然后让这一过程在视觉效果上模仿吃豆人游戏,最后,用得到的成果生成一张 gif 动图。

代码解说器的参加带来的区别是,之前用 ChatGPT 创建代码的时候,输出成果需求放到另一个环境中去测验。现在,完全能够在不离开 ChatGPT 会话界面的情况下,直接在 ChatGPT 内进行很多的开发作业,再加上 ChatGPT 的数据剖析才能(如电子表格)、以及后续能够履行诸如绘图等一系列功能,能够说就此拥有了一个非常强大的编程和研讨东西。

下面,是 Andrew 在测验 ChatGPT 的代码解说器插件时随机运转的一些风趣的试验事例。

生成声音

我发现 ChatGPT 能够理解很多的数学数据,并且代码解说器能生成可供下载的文件。我就要求 ChatGPT 生成一段谢泼德腔调(Shepard tone)。所谓“谢泼德腔调”,指的是一种音阶处理方式:将一段旋律不断重复,尽管其音高在循环周期中没有变化,却会营造出一种音阶在不断上升的错觉。ChatGPT 用一个图表展示出了腔调,随后,用代码解说器将这段腔调以 wav 的格局输出:

图片

谢泼德腔调

音频1音频:00:0000:10

然后,我进一步测验 ChatGPT 的声音才能,要求 ChatGPT 生成一段康威生命游戏的会话,然后将它转换为一段音乐。

弥补介绍一下,康威生命游戏(Conway’s Game of Life),又称康威生命棋,是英国数学家约翰·何顿·康威(John Horton Conway)在1970年创造的元胞自动机。这是一个零玩家游戏,意味着它的发展完全由其初始状态决议,不需求进一步输入信息。

ChatGPT 榜首次输出的音乐片段听起来有点太随机,所以我要求 ChatGPT 让这段音乐更悦耳一些。ChatGPT 用五声音阶对成果进行处理,所以就得到了下面这段音乐:

以音乐方式呈现的生命游戏

音频2音频:00:0000:14

想象一下,用这种办法,咱们甚至能够让 ChatGPT 制造一整张的数学音乐专辑:斐波那契数列、曼德布洛特集合、元胞自动机等等!

接下来,我让 ChatGPT 为方才的“生命游戏之歌”生成一张专辑封面。由于 ChatGPT 并没有连接到 DALL-E(OpenAI 发布的文本生成图画东西)不具备作图的才能,我就要求它根据一张生命游戏模仿成果生成专辑封面。

生命游戏之歌的专辑封

“生命游戏之歌”的专辑封面

生成二维码

看着上面的生命游戏的专辑封面图,我忽然想到,ChatGPT 或许能生成有效的二维码图片。所以,我先提出了一个简略的指令,ChatGPT 很快给出了成果:

二维码

看着生命游戏专辑图片和旁边的二维码,我在想……能不能让 ChatGPT 创建一个以二维码为结局的生命游戏模仿过程呢?(我告知它通过从二维码倒推来做弊……)没错,它能够:

生命游戏二维码

生成图片

在关于 ChatGPT 插件的博客文章中,我展示了一些用 Python 库进行图画处理的酷炫办法。这也让我忍不住猎奇,想看看 ChatGPT 还能用根底库做些什么。

运用 OpenCV(开放源代码核算机视觉类库)和一个简略的人脸辨认算法(Haar Cascade Classifier),代码解说器能够创建一个函数,在下面这张图片中找到我的脸:

用 OpenCV 查找人脸

已然 ChatGPT 能翻开并读取文件,那也意味着,理论上,ChatGPT 能够用这些数据生成新的东西。所以咱们来让 ChatGPT 把一张图片转换成 ASCII 图画:

上传一张图片,转换成 ASCII 格局

生成动画

已然代码解说器能够生成数据,并将其输出为包含 gif 动图在内的不同格局,那咱们就来测验一下,ChatGPT 具体能做到什么程度。

首要,我让 ChatGPT 制造一个弹跳的方块:

跳动的方块

再来一场暴风雪:

暴风雪

接下来,生成一个生命游戏:

生命游戏

然后,我试着让 ChatGPT 用矢量立方体来生成生命游戏,得到的最接近的成果是这样的:

旋转的立方体

光学字符辨认(OCR)

事实证明,ChatGPT 的代码解说器根本库中,包含了光学字符辨认(OCR)。我决议用一个网站的屏幕截图来测验一下。果然,这个办法有用。能把 OCR 与一个非常强大的语言模型相结合,这有可能让 ChatGPT 具备了必定的恢复古文档的才能。

日程约请

尽管代码解说器没有拜访 ics 库的权限,但它能够以纯文本方式生成日程约请,然后让 ChatGPT 将其保存为 .ics 文件。

绘画

尽管现在已经有一些用 GPT-4生成 SVG(可缩放矢量图)的好玩儿事例,但我很猎奇 ChatGPT 和代码解说器能用简略的条块图画做出什么。

我让 ChatGPT 画一只猫,成果它确实生成了一张形似猫的图片。为了保证 ChatGPT 并不是因为履行过类似练习才做到这一点,我进一步要求 ChatGPT 画的猫要戴一顶蓝色的高顶帽,再叼一支烟斗。输出的成果尽管不完满是我想象中的高顶帽,但确确实实是一顶帽子,而且是蓝色的。

形似一只猫

形似一只戴帽子、叼烟斗的猫

一只戴帽子、叼烟斗的猫

创建机器学习模型(某种意义上的)

尽管 ChatGPT 现在暂时无法将任何机器学习库加载到代码解说器中,但咱们能够用 n-gram 进行一些根本的计算文本生成。在这个示例中,我喂了一本书给 ChatGPT,让它创建一个预测算法,用来预测文本序列中的下一个单词。很快,ChatGPT 给到的成果无一例外地再次证明了 GPT-4的才能。

下个单词预测

模仿

这儿重现一下开头的吃豆人模仿器,用代码解说器生成算法和 gif 动图的才能,让它制造一个迷宫,然后生成一个点找到迷宫的出口……然后让整个过程看起来像吃豆人游戏:

吃豆人模仿器

图片

运用 Matplotlib 库,咱们能够让 ChatGPT 模仿内行星(距离太阳最近的4颗行星)运转轨迹,并将其保存为 gif 动图。

行星轨迹

然后我想知道 ChatGPT 能否模仿一局跳棋。我设法移动了棋子,但出于礼貌没有取走任何其他玩家的棋子:

跳棋

那么 ChatGPT 能够模仿国际象棋吗?首要,我必须让 ChatGPT 创建它自己的国际象棋库(一个简化了规则的、不怎么标准的国际象棋库……)并运用 unicode 表明棋子,之后,ChatGPT 就能模仿一局游戏的开端,并将其保存为 gif 动图:

国际象棋

这是我与 ChatGPT 进行的关于生成国际象棋模仿过程的对话。能够看到,这儿我只给出了一些指令,剩下的作业都是由 ChatGPT 和代码解说器完成的。

以上这些只是我对 ChatGPT 和代码解说器插件的部分探索。随着越来越多的人参加进来,我相信咱们很快会看到一些真正令人惊叹的应用。