英偉達AI智能體接入GPT-4,完勝AutoGPT!自主寫代碼獨霸我的世界,無需人類插手
繼斯坦福的25人小鎮后,AI智能體又出爆款新作了。
最近,英偉達首席科學家Jim Fan等人把GPT-4整進了「我的世界」(Minecraft)——提出了一個全新的AI智能體Voyager。
Voyager的厲害之處在于,它不僅性能完勝AutoGPT,而且還可以在游戲中進行全場景的終身學習!
(資料圖)
比起之前的SOTA,Voyager獲得的物品多出了3.3倍,旅行距離變長了2.3倍,解鎖關鍵技能樹的速度快了15.3倍。
對此,網友直接震驚了:我們離通用人工智能AGI,又近了一步。
所以,未來的游戲,就是由大模型帶動NPC來玩的吧?
真·數字生命
接入GPT-4之后,Voyager根本不用人類操心,完全就是自學成才。
它不僅掌握了挖掘、建房屋、收集、打獵這些基本的生存技能,還學會了自個進行開放式探索。
它會自己去到不同的城市,路過一片片海洋,一座座金字塔,甚至還會自己搭建傳送門。
通過自我驅動,它不斷探索著這個神奇的世界,擴充著自己的物品和裝備,配備不同等級的盔甲,用盾牌格擋上海,用柵欄圈養動物……
論文地址:https://arxiv.org/abs/2305.16291
項目地址:https://voyager.minedojo.org/
Voyager的英勇事跡包括但不限于——
數字生命的潛能究竟有多大?我們只知道,現在Voyager仍然在Minecraft中一刻不停地探索,不斷擴展著自己的疆域。
「訓練」無需梯度下降
此前,AI領域的一大挑戰就是,構建具有通用能力的具身智能體,讓它們在開放世界中自主探索,自行發展新技能。
以往,學界都是采用強化學習和模仿學習,但這些方法在系統化的探索、可解釋性和泛化性等方面,表現往往差強人意。
大語言模型的出現,給構建具身智能體帶來了全新的可能性。因為基于LLM的智能體可以利用預訓練模型中蘊含的世界知識,生成一致的行動計劃或可執行策略,這就非常適合應用于游戲和機器人之類的任務。
此前,斯坦福研究者構建出生活著25個AI智能體的虛擬小鎮,震驚了AI社區
這種智能體還有一個好處就是,不需要具體化的自然語言處理任務。
然而,這些智能體仍然無法擺脫這樣的缺陷——無法終身學習,因而不能在較長時間跨度上逐步獲取知識,并且將它們積累下來。
而這項工作最重要的意義就在于,GPT-4開啟了一種新的范式:這個過程中是靠代碼執行「訓練」,而非靠梯度下降。
Jim Fan解釋道:我們在BabyAGI/AutoGPT之前就有了這個想法,花了很多時間找出最好的無梯度架構
「訓練模型」是Voyager迭代式構建的技能代碼庫,而非浮點數矩陣。通過這種方法,團隊正在將無梯度架構推向極限。
在這種情況下訓練出的智能體,已經具備了同人類一樣的終身學習能力。
比如,Voyager如果發現自己處在沙漠而非森林中,就會知道學會收集沙子和仙人掌就比學會收集鐵礦更重要。
而且,它不僅能根據目前的技能水平和世界狀態明確自己最合適的任務,還能根據反饋不斷完善技能,保存在記憶中,留在下次調用。
所以,我們離硅基生命出現還有多遠?
剛剛回到OpenAI的Karpathy對這個工作表示盛贊:這是個用于高級技能的「無梯度架構」。在這里,LLM就相當于是前額葉皮層,通過代碼生成了較低級的mineflayer API。
Karpathy回憶起,在2016年左右,智能體在Minecraft環境中的表現還很讓人絕望。當時的RL只能從超稀疏的獎勵中隨機地探索執行長期任務的方式,讓人感覺非常stuck。
而現在,這個障礙已經在很大程度上被解除了——正確的做法是另辟蹊徑,首先訓練LLM從互聯網文本上學習世界知識、推理和工具使用(尤其是編寫代碼),然后直接把問題拋給它們。
最后他感慨道:如果我在2016年就讀到這種對智能體的「無梯度」方法,我肯定會大吃一驚。
微博大V「寶玉xp」也對這個工作給予了高度評價——
真的是了不起的嘗試,整個代碼都是開源的,這種自動生成任務->自動寫代碼執行任務->保存一個代碼庫可以重用的思路,應該是可以很容易應用到其他領域。
Voyager
與其他AI研究中常用的游戲不同,Minecraft并沒有強加預定義的終點目標或固定的劇情線,而是提供了一個具有無盡可能性的游樂場。
對于一個有效的終身學習智能體來說,它應該具有與人類玩家類似的能力:
1. 根據其當前的技能水平和世界狀態提出適當的任務,例如,如果它發現自己是在沙漠而不是森林中,就會在學習收集鐵之前學習收集沙子和仙人掌
2. 基于環境反饋來完善技能,并將掌握的技能記入記憶,以便在類似情況下重復使用(例如,與僵尸戰斗與與蜘蛛戰斗類似)
3. 持續探索世界,以自我驅動的方式尋找新的任務。
為了讓Voyager具有上述這些能力,來自英偉達、加州理工學院、得克薩斯大學奧斯汀分校和亞利桑那州立大學的團隊提出了3個關鍵組件:
1. 一個迭代提示機制,能結合游戲反饋、執行錯誤和自我驗證來改進程序2. 一個技能代碼庫,用來存儲和檢索復雜行為
3. 一個自動教程,可以最大化智能體的探索
首先,Voyager會嘗試使用一個流行的Minecraft JavaScript API(Mineflayer)來編寫一個實現特定目標的程序。
雖然程序在第一次嘗試時就出錯了,但是游戲環境反饋和JavaScript執行錯誤(如果有的話)會幫助GPT-4改進程序。
左:環境反饋。GPT-4意識到在制作木棒之前還需要2塊木板。
右:執行錯誤。GPT-4意識到它應該制作一把木斧,而不是一把「相思木」斧,因為Minecraft中并沒有「相思木」斧。
通過提供智能體當前的狀態和任務,GPT-4會告訴程序是否完成了任務。
此外,如果任務失敗了,GPT-4還會提出批評,建議如何完成任務。
自我驗證
其次,Voyager通過在向量數據庫中存儲成功的程序,逐步建立一個技能庫。每個程序可以通過其文檔字符串的嵌入來檢索。
復雜的技能是通過組合簡單的技能來合成的,這會使Voyager的能力隨著時間的推移迅速增長,并緩解災難性遺忘。
上:添加技能。每個技能都由其描述的嵌入索引,可以在將來的類似情況中檢索。
下:檢索技能。當面對自動課程提出的新任務時,會進行查詢并識別前5個相關技能。
第三,自動課程會根據智能體當前的技能水平和世界狀態,提出合適的探索任務。
例如,如果它發現自己在沙漠而非森林中,就學習采集沙子和仙人掌,而不是鐵。
具體來說,課程是由GPT-4基于「發現盡可能多樣化的東西」這個目標生成的。
自動課程
團隊將Voyager與其他基于LLM的智能體技術進行了系統性的比較,比如ReAct、Reflexion,以及在Minecraft中廣受歡迎的AutoGPT。
在160次提示迭代中,Voyager發現了63個獨特的物品,比之前的SOTA多出3.3倍。
尋求新奇的自動課程自然會驅使Voyager進行廣泛的旅行。即使沒有明確的指示,Voyager也會遍歷更長的距離(2.3倍),訪問更多的地形。
相比之下,之前的方法就顯得非?!笐猩ⅰ沽?,經常會在一小片區域里兜圈子。
地圖探索率
那么,經過終身學習后的「訓練模型」——技能庫,表現如何呢?
團隊清空了物品/護甲,生成了一個新的世界,并用從未見過的任務對智能體進行了測試。
可以看到,Voyager解決任務的速度明顯比其他方法更快。
值得注意的是,從終身學習中構建的技能庫不僅提高了Voyager的性能,也提升了AutoGPT的性能。
這表明,技能庫作為一種通用工具,可以有效地作為一個即插即用的方法來提高性能。
零樣本泛化
上圖中的數字是三次試驗中提示迭代的平均值。迭代次數越少,方法越有效。可以看到,Voyager解決了所有的任務,而AutoGPT經過50次提示迭代都無法解決。
此外,與其他方法相比,Voyager在解鎖木工具上快了15.3倍,石工具快8.5倍,鐵工具快6.4倍。而且擁有技能庫的Voyager是唯一解鎖鉆石工具的。
技能樹掌握情況(木工具 → 石工具 → 鐵工具 → 鉆石工具)
目前,Voyager只支持文本,但在未來可以通過視覺感知進行增強。
在團隊進行的一個初步研究中,人類可以像一個圖像標注模型一樣,向智能體提供反饋。
從而讓Voyager能夠構建復雜的3D結構,比如地獄門和房子。
結果表明,Voyager的性能優于所有替代方案。此外,GPT-4在代碼生成方面也明顯優于GPT-3.5。
消融實驗
結論
Voyager是第一個由LLM驅動、可以終身學習的具身智能體。它可以利用GPT-4不停地探索世界,開發越來越復雜的技能,并始終能在沒有人工干預的情況下進行新的發現。
在發現新物品、解鎖Minecraft技術樹、穿越多樣化地形,以及將其學習到的技能庫應用于新生成世界中的未知任務方面,Voyager表現出了優越的性能。
對于通用智能體的開發來說,無需調整模型參數的Voyager是可以作為一個起點的。
參考資料:
https://voyager.minedojo.org/
本文來源:新智元 (ID:AI_era),原文標題:《英偉達AI智能體接入GPT-4,完勝AutoGPT!自主寫代碼獨霸我的世界,無需人類插手》
風險提示及免責條款 市場有風險,投資需謹慎。本文不構成個人投資建議,也未考慮到個別用戶特殊的投資目標、財務狀況或需要。用戶應考慮本文中的任何意見、觀點或結論是否符合其特定狀況。據此投資,責任自負。關鍵詞: