huggingface/OpenEnv
An interface library for RL post training with environments.
解決的問題
OpenEnv 提供了一種標準化的方式,用於建立、部署和互動式使用代理強化學習(RL)訓練所需的隔離執行環境。它消除了為代理在安全、沙盒化的容器中運行而設置的繁瑣過程,同時為強化學習框架提供與這些環境通信的一致性 API。
工作原理
OpenEnv 採用客戶端-伺服器架構,環境託管在隔離的 Docker 容器中(透過 LocalDocker、Docker Swarm 或 Hugging Face Spaces 等提供者部署)。
- 伺服器端:環境創建者實作一個包含
reset()、step()和state()方法的基類,以定義邏輯和獎勵。 - 客戶端:使用者透過
EnvClient使用 Gymnasium 風格的 API 與這些環境互動,透過 WebSockets 通訊。 - 工具:CLI(
openenv)允許使用者產生新環境、建構 Docker 鏡像,並推送到 Hugging Face Spaces 以實現輕鬆部署。
適用對象
- RL 研究人員:那些在模擬或沙盒環境中訓練 LLM 或其他代理以執行任務的研究者。
- 環境創建者:構建專用模擬器或沙盒(例如程式設計、國際象棋、金融市場)的開發者,需要安全部署並易於存取。
主要亮點
- Gymnasium 風格 API:使用熟悉的
step()和reset()模式,實現與強化學習的無縫整合。 - 沙盒執行:確保代理在隔離容器中運行,保障安全性。
- 整合 Web 界面:包含內建 UI,支援即時除錯和對代理-環境互動的互動式探索。
- 彈性部署:支援多種容器提供者,並可輕鬆部署至 Hugging Face Spaces。
- 廣泛生態系統:與 TRL、torchforge、SkyRL 和 Oumi 等強化學習框架整合。
相關
- Dispatch
- Dispatch
- Dispatch
- 專案
- 專案