華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

文章圖片

華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

文章圖片

華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

文章圖片

華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

文章圖片

華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案

文章圖片




「首個公開的面向 Terminal-Bench 環境交互類任務的數據規?;a管線正式發布!」
開源完整自動化數據構建算法 構建 1655 個高可靠 CLI 任務環境鏡像 通過 291 條軌跡數據帶來 20% 解決率提升
在 Agentic Coding 領域 , 基于 SWE-bench 的數據管線研究已取得長足進展 。 過去一年中 , 業界涌現了大量相關工作 , 例如 SWE-Gym、SWE-Smith 和 R2E-Gym 等 , 極大推動了以代碼生成為核心的 Agentic Coding 發展 , 也使得當前最先進的開源模型與閉源模型之間的表現差距顯著縮小 。 然而 , 對于更廣泛的環境交互類問題(如 Terminal-Bench 所涵蓋的任務) , 目前尚沒有公開的高效和可規?;臄祿a方案 , 導致相關數據構建困難重重 , 高度依賴人工參與 , 這已然成為制約該方向發展的瓶頸 , 也使得在相關任務上開源模型的表現大幅落后于閉源模型 。



因此 CLI-Gym 來了!我們首先嘗試用 Dockerfile 對環境進行結構化與可復現定義;進一步 , 將數據生產管線本身重新建模為一種 Agentic Coding 任務:在健康環境中驅動 Code Agent 執行環境反演(即 “劣化” 操作) , 自動生成問題環境及其準確的單元測試 , 從而實現問題實例與驗證工具的自動化構造 。 我們在 29 個基礎鏡像上制造出 1655 個針對 Terminal-Bench 實例并產出 291 條高質量成功軌跡 , 我們的微調模型 LiberCoder 32B 和 235B 在 Terminal Bench 上分別實現了 + 28.6%(至 38.9%)和 + 21.1%(至 46.1%)的提升 。

我們的管線創新性地以 Codebase、Dockerfile 與 Base Image 為核心抽象 , 完備地定義任意 CLI Coding 實體 , 使環境構建、問題生成與驗證機制形成統一表達框架 , 具備良好的可組合性與通用性 。 我們希望這一范式能夠進一步拓展至更多 Agentic Coding 場景 , 推動更通用的數據生產算法與基準構建方法的發展 。



論文、代碼和鏡像數據均會在如下鏈接放出:

論文鏈接:https://arxiv.org/pdf/2602.10999 開源代碼:https://github.com/LiberCoders/CLI-Gym 鏡像數據:https://huggingface.co/datasets/LiberCoders/CLI-Gym
背景介紹

近年來 , Agentic Coding 正在快速改變軟件工程任務的解決方式 , 模型能力的邊界正在從 “寫代碼” 逐漸擴展為 “解決真實軟件系統中的復雜問題” 。 當前的研究重點還停留在以 SWE-bench 為核心的的代碼層面的研究 , 而在現實的軟件工程和系統運維場景中 , 大量問題并非源于代碼本身 , 而是來自運行環境 , 例如依賴版本沖突、環境變量錯誤、權限配置問題、系統庫損壞、網絡配置錯誤等 。 這類問題通常無法或很難通過修改代碼修復 , 而必須依賴 agent 通過命令行理解系統狀態 , 定位問題來源 , 并執行一系列系統級操作恢復環境運行狀態 。 因此 , 對 agent 的環境理解與干預能力的要求越來越高 。

Terminal-Bench 的任務恰好契合這一需求 。 其基準中包含大量以環境修復為核心目標的任務 , 對 agent 在 CLI 環境下的交互、診斷與修復能力提出了更高要求 。 然而 , 從當前官方 leaderboard 可以觀察到 , 高性能方案往往依賴圍繞強閉源模型構建的復雜 agent 框架 , 通過大量提示工程與多輪反思機制來彌補模型在環境理解與問題定位方面的能力不足 。 相比之下 , 圍繞開源模型如何通過系統性訓練提升其環境修復能力的研究仍然相當有限 。

其根本瓶頸在于:環境密集型任務難以規?;?。 代碼類問題可以通過挖掘倉庫歷史與 pull request 自動構建訓練數據 , 但環境狀態通常缺乏可追溯的演化記錄 , 難以進行自動化重建與標注 。 這使得環境任務的數據長期依賴人工構造 , 規模難以擴展 , 也限制了模型在該方向上的持續訓練與能力提升 。
【華為CLI-Gym:環境交互類任務首個公開的數據Scaling方案】


CLI-Gym 正是在這一背景下提出 , 旨在通過自動化機制突破環境依賴型任務數據難以規?;膯栴} , 為 agent 能力訓練提供可持續的數據來源 。 我們創新性地將數據生產管線本身重新建模為一種 Agentic Coding 任務:在健康環境中驅動 Code Agent 執行環境反演(即 “劣化” 操作) , 自動生成問題環境及其精確的單元測試 , 從而實現問題實例與驗證機制的自動化構建 。



如上表所示 , 該建模思路具有良好的通用性 , 不僅適用于環境依賴型任務的構造 , 也在統一框架下涵蓋了此前 SWE 系列方法的核心范式 , 實現了方法論層面的整合與擴展 。

Pipeline:通過環境反演自動生成故障任務

CLI-Gym 的核心思想非常巧妙 , 通過模擬環境歷史自動生成故障場景 。 與傳統方法相反 , 我們不是從零構建受損環境 , 而是驅動一個 “破壞者” agent 主動篡改健康環境 , 制造多樣化故障 , 再將其轉化為可修復的任務實例 。



CLI-Gym 的核心思想在于重新思考任務生成方式:既然真實環境問題通常源于環境狀態的錯誤 , 那么我們不再從零人工構造損壞環境 , 而是從健康環境出發 , 自動模擬環境如何被破壞 , 從而反向構造出可修復任務 。 這一思想被稱為 “環境反演” , 即通過 agent 將一個原本正常運行的環境主動破壞 , 使其回退到包含運行錯誤的狀態 , 再將這一退化過程轉換為 agent 需要修復的問題實例 。 在具體流程中 , 系統首先從真實開源倉庫中構建包含健康環境的 Docker 鏡像 , 該環境能夠成功運行并通過全部單元測試 , 作為后續任務生成的起點 。 隨后系統自動從 Unit Tests 中抽取目標 UT , 通過語言模型生成誘導 agent 執行環境破壞的指令 , 例如刪除關鍵依賴、篡改配置文件、破壞系統庫、修改路徑或權限等 , agent 在執行過程中不斷改變環境狀態 , 使得部分測試失敗 , 從而模擬真實系統退化或配置錯誤產生的歷史過程 。

當環境中出現失敗測試后 , 系統根據失敗日志、執行軌跡以及環境變更自動生成問題描述與修復目標 , 從而形成完整 CLI 任務實例 , agent 的目標是通過命令行操作恢復環境 , 使失敗測試重新通過 。 整個流程無需人工參與 , 從健康環境生成故障環境 , 再從故障環境構造修復任務 , 實現了環境問題的自動規模化生成 。 這一過程不僅能夠模擬真實系統問題的產生方式 , 同時由于每次破壞路徑不同 , 也帶來了豐富多樣的任務類型 , 使得生成任務覆蓋軟件工程、系統管理、安全調試等多個場景 , 顯著提升訓練數據的多樣性與真實性 。

產出:規?;c高質量的數據



基于這一自動化 pipeline , CLI-Gym 在 29 個真實開源倉庫中生成了 1655 個環境密集型 CLI 任務實例 , 規模遠超 Terminal-Bench 的人工構造數據 , 同時任務類型覆蓋多個應用領域 , 展現出極強的可擴展性 。 與現有 benchmark 相比 , 這些任務具有更高復雜度 , 每個任務平均包含超過 20 個失敗測試 , 為 agent 提供更豐富的診斷信號和修復反饋 , 使模型必須真正理解系統狀態并執行多步操作才能完成修復 , 而不是通過簡單代碼修改或投機策略通過測試 。 此外 , 該流程完全自動化運行 , 僅消耗計算資源而無需人工標注 , 相比依賴大量工程師構造任務的傳統方式大幅降低成本 , 使環境任務數據能夠持續擴展 。

在軌跡數據收集階段 , 系統通過強模型運行這些自動生成任務 , 收集成功修復軌跡 , 并通過嚴格過濾機制排除過于簡單或存在作弊路徑的軌跡 , 僅保留真正體現復雜環境修復過程的數據 , 最終獲得數百條高質量 agent 行為軌跡 , 用于后續模型訓練 。 這些軌跡展示了豐富的修復策略 , 包括依賴恢復、系統配置調試、權限問題處理與環境組件修復等 , 為模型學習真實環境問題解決模式提供了寶貴監督信號 。

實戰效果:顯著提升環境問題解決能力



基于 CLI-Gym 生成的數據對 Qwen3 系列模型進行微調后 , 得到 LiberCoder 系列模型 , 在 Terminal-Bench 上取得顯著性能提升 。 LiberCoder-32B 在 Terminal-Bench 1.0 上的 Pass@1 達到 38.9% , 相比基礎模型實現大幅提升 , 而規模更大的 LiberCoder-235B-A22B 達到 46.1% , 超過大多數開源模型 , 并接近部分閉源模型性能 。 進一步分析發現 , 微調后的模型在環境問題處理能力上發生明顯變化 , 模型不再頻繁失敗于編輯錯誤或問題定位 , 而更多受到上下文長度與執行時間等外部因素限制 , 說明其核心環境修復能力已經顯著增強 。 同時在多個任務類別中均觀察到一致提升 , 包括軟件工程、系統管理、安全修復與調試任務 , 說明 CLI-Gym 數據并非針對單一場景優化 , 而是全面增強了模型在環境交互任務中的泛化能力 。





結語

CLI-Gym 是第一種用于擴展 CLI 代理編碼任務訓練環境的公開方法 。 使用 Dockerfile 來表示每個環境 , 以進行精確的配置和版本控制 , 并使用 agent 來模擬環境歷史 。 整理了 1655 個任務實例 , 收集了 291 個成功的軌跡 。 實驗表明 , 對我們的數據進行微調可以大大增強以環境為中心的代理編碼 , 從而在開源模型中在 Terminal Bench 上實現頂級性能 。

    推薦閱讀