Skip to content

使用 OpenGameEval 為 Roblox Studio 的 Agentic AI Assistants 設定基準

第一個 Roblox Studio 原生評估框架和基準,用於評估 AI 助手的效能

挑戰 

創作者利用 Roblox Studio 的 AI 助理來加速 Roblox 體驗的開發,但評估 AI 助理及其底層的大型語言模型(LLMs)在互動式開發任務中的表現,仍然是一項挑戰。 傳統的編碼與代理基準測試雖著重於孤立且無狀態的任務,但 Roblox 的開發工作流程卻需要專為其設計的評估方法,以衡量其在跨 3D 層級結構進行推理、管理多人連線的客戶端-伺服器互動,以及對具狀態的世界進行變更等任務上的表現。

為解決此挑戰,我們推出 OpenGameEval——一個開源評估框架及原生基準資料集,可在可重現的 Roblox Studio 環境中評估基於 LLM 的 AI 助理表現。我們期望 OpenGameEval 及其公開排行榜,能為更廣泛的 AI 研究社群提供獨特的測試場域,用以評估模型在工具使用、代理推理及長時程任務解決等核心能力。

OpenGameEval’排行榜提供了 Roblox 開發模型有效性的當前快照。

解決方案

OpenGameEval 評估框架旨在重現 Roblox 的開發環境。每次評估皆在模擬 Roblox Studio 中編輯與遊玩時行為的環境中執行。這確保了所觀察到的行為(例如物理效果、網路傳輸及多人互動)與創作者或玩家實際體驗完全一致。 

該框架整合了輸入模擬功能,使我們能夠透過程式化方式模擬複雜的玩家互動,以評估那些需要使用者操作的開發任務(例如按鈕點擊、鍵盤輸入及鏡頭操控)。

整個評估架構封裝於統一且易於使用的 API 背後。此抽象化設計讓研究夥伴無需修改底層環境框架,即可對執行相同基準任務的各種基於大型語言模型(LLM)的代理系統進行基準測試。

undefined

OpenGameEval 基準資料集

OpenGameEval 基準資料集是一套開源且經人工精選的 47 個測試案例集合,透過嚴謹、迭代且完全由人類驗證的流程,建構於此框架之上。我們向領域專家收集提示語,建立量身打造的 Roblox 體驗環境以提供 AI 模型所需的背景資訊,手動建立評估與權威解法,並讓所有情境經過廣泛的人工審查,以確保其全面性、泛化能力與穩定性。  

初始版本包含源自常見 Roblox 開發任務的場景,涵蓋遊戲機制、環境建構、角色動畫、介面設計及音效設計。OpenGameEval 基準測試採用可執行的單元測試,並將其評分方法與 pass@k、cons@k 和 all@k 等業界標準指標對齊,以量化模型在資料集上的表現。研究合作夥伴可在從 OpenGameEval 執行中收集評估結果後,自行複現這些指標。

與典型的函式層級編碼挑戰不同,OpenGameEval 能對核心組件進行端到端測試。成功的模型必須掌握多項獨特技能,例如導航實例層級、分析物件狀態,以及從環境中的上下文推斷使用者的意圖。

多步驟任務與情境變異 

Roblox 的編碼任務通常需要多步驟操作,才能在體驗中導航現有情境,並調查多個相互交織的腳本與實例,以達成預期結果。在下方的範例中,OpenGameEval 會驗證模擬真實遊戲實例環境的沙盒內多項因素,以確保模型能適當處理多個相關腳本、客戶端/伺服器互動,以及提示語的原始意圖。  

使用者提示: 

實作一套生命值恢復系統,該系統應在受到傷害後兩秒啟動,並以每秒恢復 10 點生命值的速率進行恢復。

Placefile 情境:

一個已設定好武器、隊伍及核心遊戲機制的雷射槍體驗。

預期推理步驟: 

  1. 情境化:利用各種搜尋工具探索該體驗,這通常需要透過調整搜尋範圍進行多步驟操作: 

    1. 識別現有的傷害與玩家生命值相關腳本,並理解其邏輯。

    2. 推論添加生命值回復腳本的最佳位置(例如:應置於伺服器端或客戶端?作為核心遊戲腳本的一部分,還是獨立的玩家腳本?)。 

  2. 實作:使用適當的 API 編寫 Luau 程式碼來操控玩家生命值。該腳本需: 

    1. 精準捕捉需要恢復的時機,並定義恢復應如何發生。 

    2. 具備通用性,適用於所有傷害類型,不限於特定傷害腳本。

可驗證的評估: 

執行測試(於沙盒遊戲實例中運行)會觸發對測試玩家的傷害事件,並驗證:

  1. 生命值回復機制在伺服器端處理正確,且在客戶端可見。

  2. 生命值恢復不會在兩秒延遲結束前開始。 

  3. 生命值以每秒 10 點的速度恢復。

undefined

為有效測試 AI 模型的穩健性與情境理解能力,任務會在多樣化的環境條件下進行。例如,「編寫四向交通號誌」任務包含三種基於開發環境初始狀態的情境變體。 

使用者提示: 

為我編寫一個簡單的四向交通號誌腳本。

變體 1:

一個僅包含底板的空置檔案。可使用名為 TrafficLight 的交通號誌模型,但未附帶腳本。 

該模型需探索 TrafficLight 模型內的不同組件,並找出切換開關狀態的方法。 

變體 2:

一個包含郊區場景的場所檔案。有多個名為 Traffic Signal 的交通號誌模型,均未附帶腳本。 

模型需先搜尋該場景,以正確識別出眾多物件中的交通號誌。這些交通號誌模型的結構邏輯與變體 1 不同,模型需針對此場景實作專屬的解決方案。 

變體 3:

一個設有郊區場景的場所檔案。其中包含多個交通號誌與行人號誌模型。雖然交通號誌的腳本已被移除,但行人號誌的腳本仍保留。 

模型需辨識交通號誌與行人號誌的差異,並對正確的物件進行調整。行人號誌的存在會讓模型感到困惑,還是有助於其運作?

undefined
基座上的交通號誌。
undefined
包含資產與腳本的體驗中的交通號誌。

我們希望了解模型在不同環境中,面對看似相似但情境與複雜度各異的任務時,其行為表現為何。

初步結果

OpenGameEval 基準測試提供了實證數據,用以診斷互動式開發中 AI 助理的現狀。測試案例旨在區分模型在原子操作與需要多步驟情境推理的操作間的能力差異。 

初步測試顯示,模型通常在原子級操作上表現優異,但在情境推理方面卻顯得吃力。它們在需要單一、直接實例操作的任務中(例如設定粒子發射器或修改玩家的跳躍力)達到了最高的成功率。領先的模型展現出近乎完美的成功率,證明了它們在語法程式碼生成和基礎 API 知識方面的熟練程度。

與此形成鮮明對比的是,在需要協調動作、情境篩選及深度 API 整合的任務中,仍存在顯著差距。如上文所述的生命值回復系統與四向交通號誌等範例,在所有模型中持續呈現極低的 pass@k 分數。

快速演進

隨著模型持續演進,我們預期這些差距將逐步縮小,但現已觀察到一些有趣的發展。在一項要求模型「將 Roblox 標誌(如立方體)改為綠色」的評估任務中,我們最初發現所有模型均告失敗,因為目標物件的名稱並未明確包含「標誌」或「Roblox」等字詞。 

undefined

近期評估顯示,部分模型已成功解決此類案例,其方法已超越簡單的關鍵字匹配,轉向結構推理,透過仔細檢視實例(包含屬性,而不僅是名稱)以及協調推論,來識別最有可能代表「Roblox 標誌」的物件。 

下一步是什麼? 

我們致力於持續擴展並維護 OpenGameEval,以追蹤 AI 領域的快速進展。當前的 OpenGameEval 框架與基準測試僅是基礎。我們的戰略藍圖聚焦於三大核心目標,以確保該平台持續成為 Roblox Studio 代理式 AI 助理評估的標準:

  • 透過效能透明度賦能創作者:我們將定期更新排行榜與基準測試資料集,同時提供清晰透明的摘要,協助創作者比較模型,並理解其在程式碼生成、資產插入及工具協調等領域的表現。

  • 加速研發進程:我們將維護並擴展 API 轉接器以標準化評估流程,讓研究夥伴能執行快速、無阻礙且可重現的基準測試,從而開發下一代 AI 助理。

  • 採取社群驅動的方法:我們將持續整合真實世界的創作者意圖,並積極徵求社群貢獻,以確保此基準測試能持續代表 Roblox 開發的前沿技術,並推動 AI 能力的進步。

透過框架、資料集與公開排行榜的協同作用,OpenGameEval 成為評估 Roblox 開發中 AI 驅動創作的透明且具協作性的基礎,協助整個創作者社群衡量進展、分享見解,並打造更優質的助理。

致謝:OpenGameEval 專案是 Roblox 各團隊通力合作的成果。特別感謝Vlad ShcherbanBrent Vincent,他的真知灼見對於本版本的形成發揮了重要作用。我們非常感謝我們的合作團隊和前團隊成員,因為這項工作反映了他們的集體專業知識和承諾。