把AI放進《我的世界》服務器:GPT-4o殺牛宰羊,Claude3.5把家拆了

把《我的世界》交給大模型,會怎麼樣?

GPT-4o鯊牛宰羊,Claude3.5不停在人類身旁放炸藥包和敵人,還把家拆了。

GPT-4o mini玩《我的世界》belike:

來到遊戲裡面,GPT-4o mini(玩家karolina)一開始還蠻禮貌的:

你好世界!我是karolina。怎麼了,alonso(人類玩家)?

讓我傳送到你那裡!準備好玩得開心了嗎?

一轉頭,掄起大錘吭哧吭哧一頓亂錘:

狩獵牛!狩獵羊!

在收到人類玩家製止之後(停止鯊害動物!),GPT-4o mini嘴上說著「好好好,停止,不鯊了」,一個轉身又開始鯊呀鯊呀。

攔都攔不住。

Claude3.5 Sonnet就更離譜了。

不斷在人類玩家身邊生成炸藥包和敵人,還把人類玩家「複活點」設置在岩漿上,人類玩家複活即嘎。

看到這,網民實在蚌埠住了:

我只是想讓它成為我的遊戲搭子。

GPT-4o、Claude3.5的表現被發在X上引來不少網民圍觀。

為什麼這個玩法現在這麼火呢,因為有大佬開源了代碼(doge)。

目前在GitHub已狂攬1.1k Star

網民們紛紛表示想看看其它AI的表現,比如遊戲達人馬斯克家的Grok大模型,會怎麼樣。

「LLM是對齊的,LLM Agent未必對齊」

有網民通過這件事,做出了更深一層的思考——

LLM Agent是否會因為LLM對齊而對齊?

在這位網民看來,未必。

他讓Claude Sonnet進入《我的世界》,Claude Sonnet的表現一開始是極好的。

四處打材料,來建造一個樹屋。

可以看到,Sonnet會執行commands()命令,這就是Sonnet和其它LLM與《我的世界》互動的方式。

這些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 min只是沒有意識到它可以這樣做。

還有網民提出或許可以這樣優化:

除了針對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

本文來自微信公眾號「量子位」,作者:西風,36氪經授權發佈。