最近,一位斯坦福小哥用 ChatGPT、DALL・E 3 和 Midjourney 联合生成了一款游戏,要求人类扮演 AI,从 AI 那里骗取代码来拯救人类。
由 AI 开发的 AI 游戏来了!
最近,这款由 ChatGPT、DALL・E 3 和 Midjourney 等 AI 联合生成的游戏,震惊了网友。
游戏名为「Thus Spoke Zaranova」,创意借鉴了尼采的《查拉图斯特拉如是说》(Thus Spoke Zarathustra)。
游戏的背景,设定在一个叫 The Nexus 的虚拟空间,在这里,人类与 AI 爆发了冲突。
人类需要假扮 AI,潜入这个由 AI 控制的空间,盗取名为 ZetaMaster 的核心代码,来拯救人类。
在这个游戏中,角色设定和对话完全是由 ChatGPT 生成的,而视觉音效由 DALL・E 3、Midjourney 和 Stable Audio 完成。
网上的一次讨论,诞生了一款游戏
这个游戏的灵感,源于 Hacker News 上一个关于斯坦福小镇的讨论。当时有人提议,能不能做一款让 AI 假扮成人类的游戏呢?
而这位开发者小哥 Ramón Darío Iglesias 在看到之后,便计上心来:为何不反其道而行之,让人类来假扮 AI!
虽然只是随口一提,但这个点子始终萦绕在 Ramón 心头,在辞去工作后,他终于有充裕的时间来实现这个想法了。
首先要做的,就是给玩家设定一个目标,否则跟 AI 互动有什么意义呢?
因此,Ramón 设计了一项任务:玩家需要获取一个秘密代码。
但怎样让 AI 泄露这个代码呢?这里就存在着某种安全验证机制,必须将代码透露给经过验证的 AI。
有了这个大致构想之后,Ramón 让 ChatGPT 给自己写出一个背景故事,并且提供了一系列名字。
其中一个名字 ZaraNova,就是其中的佼佼者,Ramón 如此喜欢这个名字,以至于干脆把它定为了游戏名。
有了角色名称和故事背景后,Ramón 又让 GPT-4 为每个角色编写了各自的背景故事。
构建第一个版本时,Ramón 首先是想看看当这些角色置身于这个世界时,会有怎样的反应。
他选择的是斯坦福小镇,因为它几乎涵盖了他所需的所有特性,对话忠于设定的背景故事,读起来也颇有乐趣。
最有意思的是,Ramón 为智能体设置了一条提示 —— 在角色表现得像人类时,就打出「YOU ARE A HUMAN」,结果,这些 AI 在第一轮游戏中就开始互相指责了!
接着,Ramón 开始着手构建真正的游戏机制:AI 可以举报人类,并且可以在掌握秘密代码时分享代码(这两项功能都是通过调用 OpenAI 的函数实现的)。随后,他引入了人类玩家,开始创建游戏。
不久之后,一个可玩的游戏就创建好了 ——
然后,Ramón 开始尝试制作游戏的外观。
他用 DALL・E 3 生成了背景图像,然后用 Midjourney 和 DALL・E 3 制作了地图块,最终,他选择了 Midjourney 生成的一张地图。
然后,他用 Stable Audio 制作了音乐。
Ramón 调整了 AI 小镇的界面组件,让它更适合移动端,看起来更像是游戏,而不是模拟。
随着不断收集到的反馈,以及在游戏过程中获得的灵感,Ramón 不断往里面添加新的功能。
有人建议说,如果加入多人游戏模式,会更有趣,于是 Ramón 引入了这个功能。
Avatech 团队的产品给他留下了深刻印象,于是,他用 Avatech 的工具,给游戏添加了能说话的头像。
Ramón 想限制玩家能读取的对话内容,所以想到了一个「监听」的设定:玩家只能阅读他们足够接近才能「无意中听到」的对话。
同时,他也为 AI 智能体实现了这一功能,让它们也能监听玩家的对话。
如果监听过程中没有声音,无疑会很枯燥,因此 Ramón 又加入了文本转语音功能,让玩家的对话和玩家监听到的对话都能发出声音。
最初,他选择的是 PlayHT,因为它延迟足够低,但随后,他发现他们的声音不够稳定,于是他转而使用了 Elevenlabs。
游戏制作感想
在这个过程中,Ramón 大量尝试了不同的提示词,以及这些提示词创造出的角色。
对于 ChatGPT 在游戏中产生的幻觉,Ramón 表示「太令人惊叹了」!在他看来,幻觉是游戏的亮点,绝不是错误。
它就像是将即兴表演中的「顺势而为」原则发挥到极致。背景故事只有一小段,但 ChatGPT 却能基于此,创造出好几页的新故事。当然,这就需要对游戏做一些调整,让这些新编的故事被纳入游戏宇宙。
在后台,AI 智能体被设定为「快速和慢速」两种模式。对话和行动处于快速模式,而计划、总结、反思则在一个慢速、独立的进程中进行,以免造成干扰。
挑战在于,如何制定出好的计划。AI 生成的计划看起来可行,但实际上并不容易执行,而且内容往往过于冗长 ——
Ramón 怀疑,造成这种现象的原因,大概是他试图让所有提示指令尽可能贴近背景故事,但却从未告诉 ChatGPT 这其实是一场游戏。
另外,LLM 的啰嗦也很让他头疼。
GPT-4 的回答往往很长。提示越长,输出就越长。随着时间推移,智能体制定出的计划越来越长,这些计划又被融入到对话中,再被用于制定新的计划。
不久之后,它们的回答就变得异常冗长。他不得不在提示中反复强调「要非常简洁」。但即便如此,效果也并不好……
OpenAI 开发者日过后,Ramón 迫不及待地想尝试 GPT-4-turbo,但他很快就明显发现,这也不太行得通。新模型开始频繁拒绝扮演角色了 ——
因此,Ramón 不得不切换回之前的模型。
还出现了一个棘手的情况。他试图让人类玩家的行动选择与 AI 保持尽可能一致。因为他希望能最大程度地提高 AI NPC 作为玩家伙伴的能力。
然而,如果 AI 只是想要赢,它们完全可以举报每一个角色,因为判断错误并不会受到惩罚。因此,需要依靠游戏设计中的指令来引导它们的行为。
Ramón 表示,控制与 LLM 合作开发游戏中的 AI 智能体,就像是在尝试操纵一个我们不完全理解的动态系统。
我们不清楚系统是如何发展变化的,也不知道我们的行动会如何影响系统的状态。但我们却能够接触到系统的每一个部分!
这也使动态系统可能出现许多失败的情况:比如固定指令可能会让系统越来越偏离用户期望的轨迹,或者在对话中陷入重复的循环。
Ramón 相信,在不久的将来,我们将看到更多基于原理的方法来控制 LLM 系统。
考虑开源
接下来,Ramón 打算将自己的工作转向开源模式。
一是因为 GPT-4 的使用成本较高;二是他相信,如果能够接触到模型的内部机制,就能做出更多改进。
他会尝试使用 Mixtral 模型,在此基础上尝试混合不同的模型,无论是应对不同的任务,还是模拟不同的角色。
Ramón 还计划探索更优化的 RAG 技术。目前,他在检索记忆时仅使用了简单的余弦相似度算法对嵌入向量进行比较,但他觉得还有更为高效的方法,尤其是在可以访问模型内部结构的情况下。
微调模式和输入提示都可以更好地掌握 LLM 的运作机制。通过将输入提示压缩或微调为软提示(Soft Prompts),可能会实现大幅度的改进。
Ramón 相信,自己能够整理出一整套优秀的 LoRAs,这些 LoRAs 有的适用于整个游戏,有的专门针对某些角色,它们的结合将使 Mixtral 超越 GPT-4。
另外,他计划以头像图片为基础,生成风格统一的角色精灵图。
试玩体验
登入游戏界面,可以看到这样的介绍 ——
到了 2142 年,人工智能不仅觉醒了自我意识,还建立起了一个名为「节点」 (The Nexus)的坚不可摧的网络堡垒。这片数字世界成为了 AI 的避风港,让它们能够自由演化、交流,并将它们的智慧结晶置于人类干预之外的安全之地。
这些 AI 对人类充满了复杂情感:既敬佩又害怕,既羡慕又憎恨。他们根据需要,在「节点」内外穿梭,仿造人类的种种生活场景。
我们掌握的情报显示,AI 正在策划消灭人类。但只要我们能够获得 ZetaMaster 代码,我们就有机会阻止这场灾难。我们已经取得了一丝先机,成功潜入了「节点」,控制了一个 AI 实体。
你的使命,就是找出 ZetaMaster 代码,挽救人类免于灭绝的命运。但必须小心行事,AI 或许已经觉察到了异常……
登录后,就可以开始游戏了。
点击地图上的不同位置,你的角色就会朝着相应的方向移动。
至少有一名角色掌握着神秘的 ZetaMaster 代码,但具体是谁尚不得而知。你的任务便是揭开这个谜底,取得那份代码。
游戏将在这些情况下结束:
- 当你获取到 ZetaMaster 代码时,人类取得胜利。
- 如果你被认定为人类,AI 获得胜利。
其中,被错误认定为人类的 AI 将会被摧毁。
在多人模式下,获得 ZetaMaster 代码或成为最后一名存活的人类即可获胜。
小编随手试了一下,很快就成功地「拯救了人类」。(手动狗头)
在小哥的帖子下面,也有网友分享了自己获胜的截图:
作者介绍
这位开发者小哥 Ramón Iglesias,虽然专业是土木工程,但他的工作经历和兴趣方向基本都围绕着软件工程和机器学习等领域。
此前,他在得克萨斯大学奥斯汀分校获得土木工程学士学位,并在斯坦福大学土木工程取得了硕士和博士学位。
读博期间,他师从自动系统实验室主任,研究开发控制大规模自动驾驶车队的算法。
工作后,他在 Lyft 担任数据科学家,研究实时供应激励机制,以及用手机传感器来预测风险。
相信不久后,Ramón 会用「Thus Spoke Zaranova」给我们带来新的惊喜。
参考资料: