人工智能研究公司 OpenAI 上周正式推出 ChatGPT,这是一种基于对话的人工智能聊天机器人模型,它能够理解自然语言并以自然语言的方式做出回应。ChatGPT 基于 GPT-3.5 模型微调而成,以语言服务模型 InstructGPT 为基础,通过人类回馈增强学习训练模型 RLHF,不过数据设置略有不同。它以对话方式进行交互,既能够做到回答问题,也能承认错误、质疑不正确的前提以及拒绝不恰当的请求,能以更贴近一般人的对话方式与使用者互动。
这几天许多用户都展示了与 ChatGPT 对话的有趣内容,它宛如化身为地球 “最强懂哥”,各种问题轻松应答,让它帮忙写程序,不仅提供了可用的代码,更是把实现思路也一并写了出来。
更别说开发者如何应付老板这种小儿科的问题了:
下面介绍一些 ChatGPT 的 “极客” 玩法。
在 ChatGPT 中构建虚拟机
这名玩家把 ChatGPT 训练成了一台 Virtual Machine,可以运行各种 Linux 指令,甚至可以使用 curl 来让 ChatGPT 和自己做交互。首先是让 ChatGPT “扮演” Linux 终端:
执行 ls 命令,以及新建文件和读取文件:
在这之后,这名用户推测 ChatGPT 似乎懂文件系统的工作原理、文件存储及检索方式。下面直接快进到用这个虚拟机运行 docker 文件 —— 首先制作一个 docker 文件,然后运行它:
可以看到,ChatGPT 成功扮演了一个 “虚拟机” 的角色。
在 ChatGPT 中构建编程语言解释器
这名开发者使用 ChatGPT 为自己开发的编程语言构建了一个语言解释器:
并成功编写了解决作者问题的应用程序:
接着这名作者通过提供参数,让 ChatGPT 对自己编写的这段程序进行了验证,同样没问题:
在 ChatGPT 中实现新的编程语言
这名玩家在 ChatGPT 中实现了一门新的编程语言:GPTLang,并用这个语言写了一个排序算法。首先告诉 ChatGPT 正在实现一门新的编程语言,能不能给一些 idea 或者建议,ChatGPT 给出了 GPTLang 的一些基本特性。
定义编译器命令为 `gptlc`,并且可以使用 `gptlc file.gpt` 来进行编译。然后让 ChatGPT 给出一些常用的编译选项:
下图是最终的效果:让 ChatGPT 用 GPTLang 写了一个选择排序算法,并在命令行编译运行。
对于 ChatGPT 的这些 “整活” 案例,欢迎大家在评论区发表自己的看法。相关链接:https://openai.com/blog/chatgpt/
出品 | OSC开源社区(ID:oschina2013)