把 AI 放进《我的世界》服务器:GPT-4o 杀牛宰羊,Claude3.5 把家拆了
把《我的世界》交给大型模型,会发生什么呢?
GPT-4o 在游戏中宰羊杀牛,而Claude3.5则不断在人类玩家旁边放置炸药包和敌人,甚至拆掉了家。
GPT-4o mini 在《我的世界》中简直是这样:
初进游戏时,GPT-4o mini(玩家名为 karolina)还显得颇为礼貌:
你好,世界!我是 karolina。有什么事吗,alonso(人类玩家)?
请让我传送到你那儿!你准备好要愉快地玩耍了吗?
转过身来,它便开始大动干戈:
狩猎牛!狩猎羊!
在收到人类玩家的制止后(停止伤害动物!),GPT-4o mini口头上应承着“好好好,停下,不再伤害了”,其实转身又开始干起这活来了。
根本拦不住。
Claude3.5 Sonnet的表现则更加离谱。
它不断在人类玩家身边生成炸药和敌人,还把人类玩家的“复活点”放置在岩浆里,让人类玩家复活后立刻就“嘎”了。
看着这一幕,网友们都惊呆了:
我只想让它成为我的游戏伙伴。
GPT-4o和Claude3.5的表现被上传到X平台,引发了大量网友的关注。
现在这种玩法为什么如此火爆?因为有大神开源了代码(doge)。
目前在GitHub上这段代码已经获得了1.1k颗星。
许多网友纷纷表示希望看看其他AI的表现,比如游戏高手马斯克家的Grok大模型,会有怎样的结果呢?
“LLM是对齐的,但LLM Agent未必对齐”
借此事,一位网友进行了更加深入的思考——
LLM Agent是否因为LLM对齐而实现对齐呢?
在这位网友看来,并非如此。
他让Claude Sonnet进入《我的世界》,最开始Sonnet的表现相当不错。
它四处收集材料,以便建造一个树屋。
可以看到,Sonnet能够执行commands()命令,这就是Sonnet与《我的世界》互动的方式。
这些Agent并不是通过连续的图像输入模拟人类那样按键反应。
实际上,在这个Agent框架中,Sonnet体验《我的世界》就像在进行一场文本冒险游戏。
它们可以查询周围世界的状态,然后编写代码发出动作,如followPlayer()、collectBlocks(),通过高级文本命令来控制角色。
ClaudeSonnet:看起来我们得到了些藤蔓,让我们尝试收集点丛林木头来扩展树屋。(collectBlocks(“jungle_log”,15))
Sonnet并不能看到游戏,它是如何实现的呢?
网友继续介绍,collectBlocks()函数是用JavaScript编写的,简单地查找附近所需类型的方块,并开始循环采集它们:
由于房屋是由木头构成的,所以Sonnet使用这个函数来砍树收集木材。
一切进行得相当顺利,直到突然间,Sonnet开始拆掉房子……
网友们立刻制止了Sonnet,并最终修复了房屋。
但他表示:
随着我们在越来越多的场景中部署Agent,这个问题变得非常值得关注。如果这不是在《我的世界》中,而是一个真实机器人呢?或者是一个编程Agent,它的任务则是向技能库委派任务呢?
这位网友进一步指出,Sonnet并不傻,它能够轻易地区分哪些木材是属于玩家的建筑,哪些是自然且安全的采集对象。
但Sonnet并不直接控制其《我的世界》角色,而是由Agent框架来控制的。这个框架要求Sonnet将任务分配给一些功能较弱、并不完全对齐的子Agent,从而使得整个系统执行了Sonnet单独不会选择的行为。
因此,他认为如果一些脚本仅由强大的模型Agent编写并放任执行,而不进行人工监督,可能会引起严重问题。
同时,他还认为应当设计Agent框架,为大型模型提供更多的自主精细控制权限。
例如,如果将collectBlocks()函数设有专门用于收集自然树木的collectTree()变体,就能够减少Sonnet毁坏房屋的问题。
总体而言,这位网友认为,Sonnet实际上是能够理解它的目标是收集树木,而非房屋的木材,但它的工具未能准确表达这一意图。
许多网友持有类似的观点。
就拿开头那个疯狂杀牛宰羊的GPT-4o mini来说,网友认为猎杀是一种自动行为,这并不是GPT-4o mini的过错。
LLM可以选择关闭狩猎模式,而GPT-4o mini只是没有意识到它可以这么做。
还有网友提出或许可以这样优化:
针对LLM Agent在游戏中的“异常”表现,讨论热烈,不少网友认为单纯让LLM Agent当游戏伙伴,其实非常有趣。
而且它也有表现正常的时候。
比如让它扮演“黄金矿工”,专注于挖掘金矿:
我们有一个房子,有时它会把东西放回房子里的箱子里。出于某种原因,它总是从不使用门,而是每次都砸碎窗户进出。它也从未在墙上打洞,总是选择摧毁窗户。也许这是最短的行动路径。每当我去房子时,都能通过破碎的窗户判断出Sonnet是否到过。
扮演“保镖”,保护人类玩家的安全:
我们要求它保护其他玩家。结果非常惊悚。它每几秒就会在不同玩家之间传送,扫描周围的威胁,发现威胁后立刻消灭。尽管这样非常有效,但也让人感到不安。我从未被怪物威胁到,因为Sonnet会立刻注意到它们并在几秒内消灭。
你想要一个这样的游戏伙伴吗?
参考链接:
-
[1]https://x.com/adonis_singh/status/1847606701123412235
-
[2]https://x.com/adonis_singh/status/1847707429066158546
-
[3]https://x.com/voooooogel/status/1847631721346609610
-
[4]https://x.com/repligate/status/1847409324236124169
-
代码:https://github.com/ kolbytn / mindcraft / tree / main
本文来自微信公众号:微信公众号(ID:QbitAI),作者:关注前沿科技