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

文档与社区

适合人群 需要即用型 RL 工具箱以减少超参数搜索和扩展性开销的研究人员或工程师,尤其是对尝试进化式 HPO 或使用 RL 训练 LLM 感兴趣的人。


总结 – AgileRL 是一个真正、持续维护的 RL 框架,将广泛的算法套件与进化式超参数优化和云原生 RLOps 平台(Arena)相结合。其目标是让 RL 实验更快、更具可复现性。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目