查看原文
其他

GPT 上神器 Code Interpreter 的三大超级特性

ElfeXu 南瓜博士 2023-09-17

前天下午,收到任鑫同学的微信消息。他终于不用眼红我,可以自己玩 Code Interpreter 啦。很开心地,他被 GPT 萌到了:


我也很开心呀:不再是写一次 Code Interpreter 就要遭一次恨,独乐乐不如众乐乐。默默用了两个半月后,我终于可以好好和大家一起来探索这个神器啦。

用 Code Interpreter 来做数据分析、图像视频文件转化之类的功能就不赘述了,这两天看朋友圈很多人摸索得很欢呢。这篇文章简要分享下我认为 让 Code Interpreter 具备强大能力的三个重要特性:
1. 排查问题自我纠错
2. 接收百兆以内大文件并对文件进行分析
3. 把运行代码的沙盒环境用作大容量记忆体

1. 排查问题自我纠错

自我纠错是 Code Interpreter 最重要的特性。大语音模型需要通过接收反馈来迭代进化更好地完成任务,而代码运行结果就是最好不过的全自动反馈。

四月初我在 GPT 的帮助下写代码,还时不时有“与其费劲打字,不如自己敲代码”的感叹。老华有个特别经典的比喻——就像主管带新人,常会有“撸起袖子我自己来”的冲动。

有了 Code Interpreter 后,就不需要我教,它能自己在运行过程中发现错误并自动修正了。它甚至会主动写 test case 并通过运行结果来找出代码中的逻辑错误。下面这个例子来自我五一节时的实验,受之启发后来我请 GPT 帮我写代码,也常要求它配上对应的测试用例。

“下属”聪明了,很多任务我就可以非常偷懒地扔给它。例如解读一个层次非常深、前后内容还有相互引用的 json 文件、提取其要素转化成表格。我不需要解释这个文件是什么结构、各字段分别是什么意思,只要说清楚自己最终想要的结果就足够。

向上滑动阅览

等它翻来覆去尝试了十来遍搞定问题后,我让它把代码重新整理成函数,就可以直接复制粘贴到我自己的项目中。我曾说自己的代码有 60% 是 GPT 帮助完成的,其中一半以上用的就是这招。

在 GPT 完成了上述任务后我想起还有一个文件,扔给它做补充,再扔一个新的测试数据让它运行做检查。它依旧完成得很好。曾见过它拿新的数据运行代码时报错,就自动对代码添加例外情况的防护。

这篇文章中我让 GPT 从需求到文档到测试用例到代码一气呵成,靠的也是 Code Interpreter。

总之,有了 Code Interpreter 后 GPT 能通过运行代码来获得反馈,从而自动纠错,这是超级厉害的一项能力。GPT 写代码自动化了。

2. 接收大文件并分析

很多时候我会把 Code Interpreter 当成 ChatPDF / ChatDOC 来用。

向上滑动阅览

等它分析完成后,就可以让 GPT 像 ChatPDF ChatDOC 那样给你解释内容:

它的强大之处在于你可以上传一整个 zip 包,然后随时按需指定文件要求解读。

向上滑动阅览


你甚至可以把完整代码库扔给它,让它带着你一点点读懂代码。比如下面的截图,来自于我让它带着我读 langchain 源码。

向上滑动阅览



它对关注重点的选择很准确,是个优秀的代码阅读者。

向上滑动阅览



现在唯一的缺陷是还不够流畅需要我时不时敲个“继续”。如果它能不断自己自动执行,我只要等分析完毕后来看报告,那就更美妙了。

3. 把沙盒用作大容量记忆体突破 token 数限制

Code Interpreter 背后是 Jupyter Notebook,这个运行沙盒的内存有多大,我们就可以让它记住多少内容,后面随时调取,只要把希望它记住的内容塞到函数或变量里就好。

例如我之前写的这篇文章,每一个表情包绘制都是一个独立的函数,最终它能将这些函数组合起来,创作一个表情包剧本。若非“靠程序来记住上下文”的特性,GPT 真没能力把这个剧本一口气画下来。

向上滑动阅览




也就是说,如果我们让 GPT 分步骤完成任务时,可以把中间过程保存在某些函数/变量中,在需要的时候提取出来用,这样 GPT 的长度限制就变成了 jupyter notebook 的内存限制,上百兆,超级大呢。


当然,这需要针对使用场景做专门的设计。我还没有想过通用的方案,也许你可以试试看?当然,通用方案,也可以用 openai 的 api 接口来实现一套。可是在 chat 界面里用更方便:有什么特别的需求,想改随时能自由改。


--------


以上就是我最喜欢的三大超能力。日常使用最多的是第一项,有大量潜力没挖掘的是第三项。现在大家都有 Code Interpreter 了,很想知道你们都是怎么玩的呢。请关注我的公众号,加个星标,咱们多多交流呀。



相关文章

能运行代码的 GPT 那是真的王炸呀
当 AI 开始自动思考和行动——让 GPT 左右互搏会发生什么
我敢肯定你没这么玩过 GPT


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存