AgileRL/AgileRL
Streamlining reinforcement learning with RLOps. State-of-the-art RL algorithms and tools, with 10x faster training through evolutionary hyperparameter optimization.
AgileRL – 內建 RLOps 的強化學習程式庫
是什麼 – AgileRL 是一個開源的 Python 庫,整合了眾多先進的強化學習(RL)演算法(在策略、離策略、離線、多智能體、上下文臂、LLM 微調等),並附帶 進化式超參數最佳化(HPO)與 分散式訓練 工具。開發者將此組合稱為 RLOps —— 類比於 RL 工作負載的 MLOps。
核心理念
- 進化式 HPO – 不再需要執行數十個獨立實驗,AgileRL 透過進化一個 智能體群體,每數千步對超參數與網路架構進行變異。README 指出,相比傳統 Optuna 基礎管道,HPO 速度最快可提升 10 倍。
- 模組化訓練器 –
LocalTrainer(單機版)與雲端平台 Arena 的 SDK/CLI,可訓練單一智能體、群體或自訂流程。 - 廣泛的演算法覆蓋 – 支援 PPO、DQN(含 Rainbow)、DDPG/TD3、CQL、ILQL、MADDPG、MATD3、IPPO、NeuralUCB/NeuralTS,以及針對長週期、多回合任務的特殊 LLM 微調流程(CISPO)。
- 分散式/多智能體支援 – 相容 Gymnasium 向量化環境與 PettingZoo 並行 API;可透過 Arena RLOps 平台在多個 GPU 上擴展。
如何使用
# 在 LunarLander 上訓練單一 DQN 智能體
from agilerl import LocalTrainer
trainer = LocalTrainer(algorithm="DQN", environment="LunarLander-v3")
population, fitnesses = trainer.train()
啟用進化式 HPO 時,只需設定 hpo=True,並可選地設定 pop_size:
trainer = LocalTrainer(
algorithm="DQN",
environment="LunarLander-v3",
training=TrainingSpec(pop_size=4),
hpo=True,
)
population, fitnesses = trainer.train()
你也可以透過 YAML 清單或命令列(python -m agilerl.train path/to/config.yaml)驅動訓練。
Arena – 受管理的 RLOps 服務
- 獨立的
agilerl-arena套件提供 Python SDK(ArenaClient)與 CLI(arena …)。 - 透過這些工具,你可以上傳自訂環境、提交訓練工作,並在雲端 GPU 上部署訓練完成的智能體,無需自行管理基礎設施。
安裝
pip install agilerl # 核心套件
pip install agilerl[box2d] # 可選:經典控制任務的 Box2D 物理引擎
pip install agilerl[llm] # LLM 微調額外功能
pip install agilerl-arena # Arena SDK/CLI(也是 agilerl 的基本依賴)
開發模式支援 pip install -e . 或 pip install git+https://github.com/AgileRL/AgileRL.git@main。
文件與社群
- 完整文件請見 https://docs.agilerl.com(包含單一智能體、多智能體、上下文臂、課程學習、自訂網路與 LLM 微調的教學)
- Discord 伺服器與線上基準頁面展示了宣稱的 HPO 10 倍加速與最先進的 LLM 微調成果。
適合對象 需要即用型 RL 工具箱以減少超參數搜尋與擴展性開銷的研究人員或工程師,特別是對嘗試進化式 HPO 或使用 RL 訓練 LLM 感興趣者。
總結 – AgileRL 是一個真正、持續維護的 RL 框架,結合廣泛的演算法套件與進化式超參數最佳化,以及雲原生 RLOps 平台(Arena)。其目標是讓 RL 實驗更快速、更具可重現性。
相關
- 專案
- 專案
- 專案
- 專案
- 專案