
Google EnvHarness把「靜態環境」用插件包成可訓練 Agent讓 LLM 在死物里學會決策Hugging Face 每日論文2026-08-22 精選 · 事實流論文EnvHarness: Awakening Static Worlds for Agent Learning作者Chengsong Huang、Zifeng Wang、Rujun Han、Jun Yan、Yanfei Chen、Ke Jiang、Peng Xia、Han Yu、Jiaqi Pan、Bhavana Dalvi Mishra、Jiaxin Huang、Burak Gokturk、Tomas Pfister、Chen-Yu LeeGoogleGitHubgoogle-research/envharness136 stars項目頁https://envharness.com/arXiv2608.198802026-08-20一句話總結Google 這篇 8 月 20 日的論文解決了 Agent RL 訓練里一個最樸素的問題當環境是靜態的、沒法改的時候怎么讓它針對某個 Agent 的弱點變成可訓練解法是把「環境修改」抽成一層可編程插件EnvHarness再用EnvRigger自動化生成這些插件二者構成「Agent 與環境共同進化」的閉環。在 5 個 benchmark、4 個領域的實驗中EnvHarness 在未見過的實例上比原始環境最多高出 9.0 分執行步數減少9.8%——這意味著同樣一個靜態環境被插件「包」一下之后就能榨出更強的訓練信號。一、要解決的真問題LLM Agent 訓練的環境瓶頸過去三年 LLM Agent 論文幾乎都默認一個隱含條件環境會響應。但工程化部署的現實是相反的——絕大多數真實任務環境是靜態的SQL 數據庫表結構固定Agent 不能改瀏覽器自動化DOM 結構由前端開發者決定代碼倉庫除非顯式 fork否則 Agent 看不到修改后的狀態操作系統 shell文件系統是別人管理好的。這就造成了一個尷尬的局面Agent 的策略在變強環境卻原地踏步。強化學習最依賴的「獎勵信號多樣性」就枯竭了——RL 需要大量軌跡變體但固定環境的軌跡變體是有限的。Google 給出的解法思路很巧不改環境改 Agent 看到的「入口」。二、EnvHarness環境外再套一層「可編程插件」EnvHarness 是一個插件層harness layer外掛在靜態環境外面對外暴露同樣的接口但內部把 Agent 的行為做了重塑不動環境核心原環境的 verifier、狀態機、獎勵邏輯全部保留可編程注入用插件重寫 Agent 的觀察、重寫它的動作映射、重寫它的獎勵 shape統一接口插件以標準協議掛載所以同一個環境可以接不同領域的 Agent。關鍵設計取舍「harness 與環境解耦」。以往改造環境的做法是改環境本身代價是不同任務要寫不同的環境變體現在把改造放在 harness 層環境不變、插件可換、訓練信號換思路。論文把這種結構稱為「pluginable harness」——在軟件工程里這就是經典的「中間件」思維但用在 RL 環境上是新的。三、EnvRigger自動生成插件讓環境跟著 Agent 走僅有 EnvHarness 還不夠——插件要人寫就退化成「每個任務一組 hack」。Google 給的第二件工具是EnvRigger作用是自動合成 harness 組件。EnvRigger 的工作流是四步黑盒觀察把目標策略當成黑盒輸入一串任務讓它跑出一堆軌跡失敗診斷分析軌跡里 Agent 卡在哪、錯在哪、把哪些狀態判斷錯了插件合成根據失敗模式生成對應的 harness 插件——比如「把這一類狀態觀察值換成更稀疏的表征」「把這一類動作重命名」「把這一類子任務獎勵放大」新軌跡回歸在合成出的插件上跑一組 fresh rollouts驗證插件確實改善了 Agent 表現避免過擬合到某類樣本。整個流程是policy 在變 → harness 在變 → policy 再變的循環所以論文核心敘事是「agent-environment co-evolution」——Agent 和環境共同進化。四、關鍵實驗數字論文 abstract 給了兩組核心數字評測數字Benchmark 覆蓋5 個 / 4 個領域未見實例最大提升9.0 分執行步數減少9.8%解讀這兩組數字9.0 分是「未見實例」評估集不參與 harness 合成所以這 9 分不是過擬合而是泛化提升9.8% 步數減少說明 Agent 在改造后的環境里用更少的步數拿到更高的分這正是 harness 在「裁剪無效軌跡、放大有效信號」上的直接收益5 個 benchmark、4 個領域說明這套框架不是某個領域的玩具——從 web 自動化到代碼到工具調用、再到推理任務都驗證過。具體到三個基線的對比論文里沒有數字細節但 abstract 明確說「優于原環境和領域特定生成 pipeline」——這意味著無論是 baseline 靜態環境還是別的「環境增強」方案都被這套插件框架跑贏了。五、三個值得展開的工程機制5.1 插件與環境的解耦標準化接口EnvHarness 的插件不是「每個環境自定義」而是遵守標準接口。這帶來兩個工程紅利可移植性同一個插件可以從 web 環境遷移到代碼環境只要目標環境提供了同樣的 hook可復用性訓練過程中發現的「有用插件」可以組成一個插件庫下一次新 Agent 來用現成的。5.2 EnvRigger 的「黑盒」特性EnvRigger 不需要訪問 Agent 的內部梯度、參數或推理日志。論文 abstract 明確寫「treat the target policy as a black box」。這非常重要——它意味著閉源 LLMGPT、Claude、Gemini作為 Agent 也能用策略升級了不需要重訓 harness整個 pipeline 可以被作為 service 提供。5.3 Verifier 保留獎勵信號不被插件污染所有插件只能在 Agent 輸入/輸出/獎勵 shaping 層面改寫不能動原環境的 verifier。這是論文一個反復出現的約束——目的是避免「獎勵黑客」式的 hack插件發現了一個漏洞可以讓 Agent 拿高分但實際并不解決問題。這一條對真實部署極關鍵——RL 訓練里最容易翻車的就是獎勵 hackingEnvHarness 把這道防線放在了架構里。六、這個工作對 Agent 訓練的實際意義6.1 對研究者RL 訓練的「環境多樣性」問題有了工程級答案之前大家只能用 self-play、自動課程學習等方式擴軌跡EnvHarness 提供了一個顯式、可編程、可版本管理的擴展維度跨環境遷移成為可能插件層統一了接口意味著訓練好的 Agent 配合不同 harness 就能切換任務——這正是通用 Agent 的關鍵屬性之一RLHF 與 RLHF-style 工具調用有清晰接口harness 層天然適合把人類反饋注入到 Agent 訓練中。6.2 對工程團隊可以在不動業務后端的前提下做 Agent 強化企業的 SQL、ERP、CRM 接口都能用 harness 包裹同一個 Agent 多個環境插件庫可以讓一個模型在不同業務系統間切換復用 RL 投資失敗診斷自動化EnvRigger 的失敗診斷模塊可以單獨抽出用對企業級 Agent 調試有幫助。6.3 局限依賴環境的 hook 暴露如果某個環境沒有任何可觀察/可重寫的 hookharness 裝不上黑盒策略分析有偏EnvRigger 只能從軌跡反推失敗模式對極復雜決策鏈的診斷可能不夠細致插件庫的可解釋性當插件組合很多時調參空間變大需要額外機制控制復雜度。七、與近一年同類工作對比工作核心機制是否動環境是否黑盒 AgentSelf-PlayAgent 內戰否是Automatic Curriculum Learning自動出題否是Voyager (Minecraft)skill library否否白盒Toolformer 風格工具合成工具自動合成部分是EnvHarness環境插件化不改只包是EnvHarness 的差異化是對環境的「非侵入式增強」——其他工作要么改環境、要么改 Agent 內部而它是「把環境外面套一層東西」。這種思路在軟件工程里叫「sidecar pattern」被搬到 RL 環境上是新的。八、給做 Agent 產品的人三條結論如果你在生產環境跑 Agent把環境外面加一層 harness 是性價比最高的改造不動后端、不會影響其他系統但能直接拿到「可訓練」的接口把 Agent 失敗軌跡歸檔未來用 EnvRigger 風格工具做插件合成失敗日志是被低估的資產EnvHarness 的方法論直接告訴你怎么把它們變成訓練信號關注 2026 下半年 Agent RL 框架的兩個方向環境插件化 失敗驅動課程學習這是從「環境不變 → Agent 自己進化」到「環境也跟著 Agent 進化」的范式轉變。arXiv2608.198802026-08-20GitHubhttps://github.com/google-research/envharness項目頁https://envharness.com/HF 鏈接https://huggingface.co/papers/2608.19880