天天看點

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

作者:ChatGPT掃地僧
遊戲行業可能要變天?

通用 AI 大模型 GPT-4 進遊戲了,進的是開放世界,而且玩出了高水準。

昨天,英偉達釋出的 VOYAGER 給 AI 圈内帶來了一點小小的震撼。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

VOYAGER 是第一個大模型驅動,可以終身學習的遊戲智能體,著名 AI 學者,剛回 OpenAI 的 Andrej Karpathy 看論文了之後表示:還記得在大約 2016 年的時候,在像《我的世界》這樣的環境裡開發 AI 代理是多麼絕望的一件事嗎?

現在畫風變了 —— 正确的做法是忘記所有這些,首先用全網資料去訓練一個大語言模型(LLM)學習世界知識,推理和工具使用(編碼),然後以英偉達這種方式讓它去解決問題。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

Karpathy 最後總結道:如果在 2016 年讀到這種「無梯度」的代理方法,我肯定會大驚失色。

專家說完了,其他人的想法很直接:看起來離通用人工智能(AGI)更近了一步。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

也有人在設想未來遊戲的場景,由大模型帶動 NPC,勃勃生機萬物競發的境界躍然眼前:

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

我們知道,引領科技潮流的 ChatGPT 是一種文本互動的聊天機器人,又因為 GPT-4 更新了多模态能力,人們經常預言通用 AI 的下一步在于把這種大模型放在機器人裡,讓它與現實世界産生互動。

而在機器人與現實 / 虛拟世界互動的方式上,類似 GPT-4 這樣的先進大模型解鎖了一種新範式:「訓練」是代碼執行而非梯度下降。「訓練好的模型」是 VOYAGER 疊代組合的技能代碼庫,而不是浮點數矩陣。現在,我們正在将無梯度架構推向極限。

在《我的世界》裡,VOYAGER 迅速成為了經驗豐富的探險家,它獲得的獨特物品增加了 3.3 倍,行進距離增加了 2.3 倍,解鎖關鍵科技樹裡程碑的速度比之前的方法快了 15.3 倍。

英偉達把 VOYAGER 的研究進行了徹底的開源:

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍
  • 論文連結:https://arxiv.org/pdf/2305.16291.pdf
  • 項目首頁:https://voyager.minedojo.org/
  • GitHub:https://github.com/MineDojo/Voyager

研究背景

建構具有通用能力的具身智能體,在開放的世界中不斷探索、計劃和發展新的技能,是人工智能領域的一個巨大挑戰。傳統的方法采用強化學習和模仿學習的方法,這些方法基于原始行為運作,對于系統性的探索、可解釋性和概括性來說,可能是個挑戰。

近期,基于大型語言模型(LLM)的智能體在這些方面獲得了突破,利用預訓練 LLM 中封裝的世界知識,生成一緻的行動計劃或可執行的政策。它們被應用于像遊戲和機器人這樣的展現性任務,以及沒有展現性的 NLP 任務。然而,這些智能體不是終身學習者,不能在較長的時間跨度内逐漸獲得、更新、積累和遷移知識。

與人工智能中研究的大多數其他遊戲不同,《我的世界》沒有強加一個預定的最終目标或固定的故事情節,而是提供了一個具有無限可能性的獨特遊樂場。一個高效的終身學習智能體應該具有與人類玩家類似的能力:

(1)根據其目前的技能水準和世界狀态提出合适的任務,例如,如果它發現自己處于沙漠而不是森林,就會在打鐵前學會擷取沙子和仙人掌;

(2)根據環境回報完善技能,并将掌握的技能存入記憶,以便将來在類似情況下重複使用(例如,打僵屍與打蜘蛛類似);

(3)不斷探索世界,以自驅動的方式尋找新任務。

VOYAGER 是第一個由 LLM 驅動的展現終身學習的智能體,可以在《我的世界》中驅動探索,掌握廣泛的技能,并在沒有人類幹預的情況下不斷地做出新的發現。

研究者使用了代碼作為行動空間,而不是低級的運動指令,因為程式可以自然地表示時間上的擴充群組合行動,這對于《我的世界》中的許多長線任務是至關重要的。

VOYAGER 通過 prompt 和上下文學習與黑盒子 LLM(GPT-4)互動。值得注意的是,該方法避開了對模型參數通路和明确的基于梯度的訓練或微調的需要。

具體地說,VOYAGER 試圖解決由自動課程提出的逐漸困難的任務。該課程是由 GPT-4 根據 「盡可能多發現不同的東西」的總體目标生成的。這種方法可以被看作是一種上下文式的新穎性搜尋。通過存儲有助于成功解決某個任務的行動程式,VOYAGER 逐漸建立起一個技能庫。每個程式都由其描述的嵌入來索引,未來可以在類似情況下進行檢索。複雜的技能則可以通過組成更簡單的程式來合成,這使 VOYAGER 的能力随着時間的推移迅速變得「複合」,緩解了其他持續學習方法中的「災難性遺忘」。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

方法

VOYAGER 由三個新型元件組成:(1) 自動課程,用于提出開放式探索的目标;(2) 技能庫,用于開發越來越複雜的行為;(3) 疊代 prompt 機制,用于為具身控制生成可執行代碼。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

自動課程

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

具身智能體在開放模式下會遇到各種不同複雜程度的目标環境。自動課程這個元件為開放式探索提供了許多好處,實作了具有挑戰性但可管理的學習過程,培養了好奇心驅動的内在動機,供智能體學習和探索,并鼓勵開發通用和靈活的問題解決政策。

自動課程元件利用網際網路規模的知識,通過促使 GPT-4 提供源源不斷的新任務或挑戰,提供非常強大的适應性和響應能力。自動課程會根據探索進度和智能體的狀态使探索最大化。該課程由 GPT-4 基于「發現盡可能多的不同僚物」的總體目标生成。

技能庫

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

随着自動課程不斷提出越來越複雜的任務,VOYAGER 需要有一個技能庫,作為學習和進化的基礎。受程式的通用性、可解釋性和普遍性的啟發,研究團隊用可執行代碼表示每項技能,這些代碼支援臨時擴充,以完成自動課程提出的特定任務。

具體來說,技能庫的頂部用于添加新技能。每個技能都通過其描述的嵌入進行索引,将來可以在類似情況下檢索到。

技能庫的底部是技能檢索。當自動課程提出新任務時,技能庫會執行查詢以确定最相關的 5 項技能。複雜的技能可以通過編寫更簡單的程式來合成。這種做法讓 VOYAGER 的能力随着時間的推移迅速增強,并緩解了「災難性遺忘」問題。

疊代 prompt 機制

研究團隊通過三種類型的回報引入自我提升的疊代 prompt 機制,包括環境回報、執行錯誤、檢查任務成功與否的自我驗證。

下圖(左)是一個環境回報的例子:GPT-4 意識到在制作木棍之前還需要 2 個木闆。執行錯誤的例子如下圖(右)所示, GPT-4 意識到它應該制作木斧而不是灌木斧,因為《我的世界》中沒有灌木斧。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

下圖是一個自我驗證的例子。通過向 GPT-4 提供智能體的目前狀态和任務,GPT-4 會充當「評論者」并通知程式是否完成了任務。此外,如果任務失敗,它會「批評」智能體并提供如何完成任務的建議。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

實驗

在實驗中,研究者系統對比了 VOYAGER 和基線的探索性能、技術樹的掌握情況、地圖覆寫率以及對新世界中新任務的零樣本泛化能力。

他們利用 OpenAI 的 gpt-4-0314 和 gpt-3.5-turbo-0301 的 API 來完成文本,同時利用 text-embedding-ada-002 API 進行文本嵌入。所有的溫度設定為 0,除了 automatic curriculum 需要使用溫度 = 0.1 來鼓勵任務多樣性。模拟環境建立在 MineDojo 的基礎上,并利用 Mineflayer 的 JavaScript APIs 進行電機控制。

評估結果如下:

明顯更強的探索能力

VOYAGER 的優勢展現在它能夠不斷取得新的進展(如圖 1),比如能在 160 次 prompt 疊代中發現了 63 個獨特的項目,數量是同類的 3.3 倍。另一方面,AutoGPT 在發現新項目方面明顯滞後,而 ReAct 和 Reflexion 則難以取得重大進展。

科技樹的掌握

《我的世界》中技術樹測試的是智能體制作和使用工具層次的能力。通過這棵樹(木制工具→石制工具→鐵制工具→鑽石工具)的進展需要智能體掌握系統性和構成性的技能。

在表 1 中,分數表示三次總運作中的成功試驗次數。數字是三次試驗中平均的 prompt 疊代次數,疊代次數越少,方法就越有效。與基線相比,VOYAGER 解鎖木質等級的速度快了 15.3 倍(就 prompt 疊代而言),解鎖石質等級快了 8.5 倍,解鎖鐵質等級快了 6.4 倍,VOYAGER 是唯一能解鎖科技樹中鑽石等級的模型。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

廣泛的地圖周遊

與基線相比,VOYAGER 的行動範圍能夠覆寫 2.3 倍的距離,可穿越各種地形,而基線智能體往往發現自己被限制在本地,這大大阻礙了他們發現新知識的能力(圖 7)。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

對未見任務的零樣本泛化能力

為了評估零樣本泛化能力,研究者清除了智能體的庫,将其重置到一個新的執行個體化的世界,并用未見過的任務來測試。對于 VOYAGER 和 AutoGPT,他們利用 GPT-4 将任務分解為一系列的子目标。

如表 2 和圖 8 所示,VOYAGER 可以持續地解決所有的任務,而基線不能在 50 次 prompt 疊代内解決任何任務。值得注意的是,從終身學習中建構的技能庫不僅增強了 VOYAGER 的性能,而且也給 AutoGPT 帶來了提升。這表明,技能庫是一個多功能的工具,可以随時被其他方法所采用,有效地作為一種即插即用的資産來提高性能。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍
AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

消融研究

研究者在 VOYAGER 中消融了 6 個設計選擇(自動課程、技能庫、環境回報、執行錯誤、自我驗證和用于代碼生成的 GPT-4),并研究它們對探索性能的影響,結果如圖 9 所示。

VOYAGER 的性能優于所有替代方案,表明了每個元件的關鍵作用。此外,GPT-4 在代碼生成方面明顯優于 GPT-3.5。

AI 有意思: 英偉達把GPT4塞進《我的世界》打遊戲快15倍

最後,英偉達的研究者也指出了一些局限性和未來的工作方向。

首先是成本問題。GPT-4 API 導緻了巨大的成本。它比 GPT-3.5 的成本高 15 倍。然而,VOYAGER 需要 GPT-4 實作代碼生成品質的飛躍,這是 GPT-3.5 和開源的 LLM 都無法提供的。

其次,盡管有疊代 prompt 機制,但仍有智能體卡住而無法生成正确技能的情況。自動課程有靈活性,可以在以後的時間裡重新嘗試這項任務。自我驗證子產品偶爾也可能失敗,例如不能識别出蜘蛛串正是打倒蜘蛛的成功信号。

然後是大模型的「幻覺」問題。自動課程偶爾會提出無法完成的任務,例如可能要求智能體制作遊戲中并不存在的「銅劍」或「銅胸甲」。幻覺也會發生在代碼生成過程中,例如 GPT-4 傾向于使用鵝卵石作為燃料輸入,這在遊戲中是一個無效的燃料來源。此外,它可能會調用所提供的控制原始 API 中沒有的函數,導緻代碼執行錯誤。研究者認為,GPT API 模型的改進以及微調開源 LLM 的新技術将在未來克服這些限制。

繼續閱讀