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 实验更快、更具可复现性。
相关
- 项目
- 项目
- 项目
- 项目
- 项目