all-rl-algorithms

一个仓库搞定所有强化学习算法,快速上手复现

这是一个用Jupyter Notebook实现的强化学习算法集合,旨在以更简洁的方式实现所有主流RL算法。项目覆盖了从基础算法到前沿方法的广泛内容,包括DQN、PPO、SAC、TD3等经典算法,以及一些最新的研究进展。它解决了初学者和研究者在学习强化学习时面临的代码实现复杂、难以理解的问题,通过清晰、模块化的代码结构,让用户能够快速上手并理解每个算法的核心思想。项目不仅提供了算法实现,还包含了相应的实验环境和训练脚本,方便用户进行复现和实验。其目标是成为强化学习领域的算法代码库,帮助用户节省从论文到代码的转换时间,加速研究和学习进程。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1954
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队FareedKhan-dev
所属国家
官网地址
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言Jupyter Notebook
技术栈/模型agent,llm,openai,python,reinforcement-learning,rl
GitHub 星标★ 1954
30天Star增速
HF 下载量
上线时间2025-03-30 00:00:00
最近更新2026-09-22 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数2

使用教程

难度:入门 约 15 分钟 部署方式:本地安装 6 步

环境要求

  • Python 环境(用于运行 Notebook 与依赖)
  • git,用于克隆 GitHub 仓库
  • uv 包管理器(未安装时可 pip install uv)
  • 可运行 Jupyter Notebook 的环境

安装与启动步骤

  1. 1克隆仓库

    把项目代码从 GitHub 克隆到本地并进入项目目录,后续命令都在该目录下执行。

    git clone https://github.com/fareedkhan-dev/all-rl-algorithms.git
    cd all-rl-algorithms
  2. 2安装 uv 工具

    README 使用 uv 管理虚拟环境,若本机尚未安装 uv,先用 pip 装上它。

    pip install uv
  3. 3创建虚拟环境

    在项目目录内用 uv 创建 .venv 虚拟环境。注意 uv init 仅在从零新建项目时需要,克隆仓库时不用执行。

    uv venv
  4. 4激活虚拟环境

    按操作系统选择一条命令激活,Windows 用第一条,macOS/Linux 用第二条。激活后终端提示符会带 (.venv)。

    .venvScriptsctivate
    source .venv/bin/activate
  5. 5安装依赖

    用 uv 按 requirements.txt 安装项目所需依赖(NumPy、Matplotlib、PyTorch 等)。

    uv add -r requirements.txt
  6. 6运行 A3C 训练

    A3C 涉及多进程,在 Jupyter 中运行会有问题,README 要求在终端里直接执行该脚本。

    python a3c_training.py

关键配置

配置项必填说明示例
requirements.txt是项目依赖清单,克隆后即可用于安装依赖uv add -r requirements.txt
learning_rate否学习率超参数,可在 Notebook 中修改并观察学习曲线变化在对应 Notebook 中修改
discount_factor否折扣因子超参数,控制未来奖励的权重在对应 Notebook 中修改
exploration_rate否探索率超参数,影响探索与利用的平衡在对应 Notebook 中修改

如何确认成功

能激活 .venv 并成功安装依赖;在 Jupyter 中打开 01_simple_rl.ipynb 可运行,终端执行 python a3c_training.py 无报错并开始训练。

常见问题

Q:没有安装 uv 怎么办?

A:README 给出:直接执行 pip install uv 即可安装,然后再用 uv venv 创建虚拟环境。

Q:需要执行 uv init 吗?

A:只有从零新建项目时才需要,克隆本仓库时不需要执行 uv init,直接 uv venv 即可。

Q:为什么 A3C 不能在 Jupyter Notebook 里跑?

A:A3C 使用多进程,在 Notebook 中运行会带来复杂问题,README 要求在终端执行 python a3c_training.py。

Q:该从哪里开始学习?

A:先看 01_simple_rl.ipynb 打基础,再看 Q-Learning、SARSA、REINFORCE 等核心算法,并配合 cheatsheet.md 速查。

注意事项

  • 本项目以教学为目的,优先保证可读性,不是性能优化过的库。
  • 仓库目前包含 18 个算法 Notebook,并附有 cheatsheet.md 速查表。
  • 除 A3C 外的内容都在 Jupyter Notebook 中以交互方式运行。
  • 建议按 README 的学习路径从基础算法逐步过渡到 DQN、PPO、PlaNet、MADDPG、QMIX 等进阶内容。

核心亮点

  • 覆盖算法全面,从DQN到SAC等主流算法一应俱全
  • 代码简洁易懂,适合初学者快速理解RL核心思想
  • 使用Jupyter Notebook,交互式学习体验好,便于调试和实验

不足之处

  • 部分算法实现可能未经过充分优化,性能不如工业级库
  • 文档和社区支持相对薄弱,依赖个人维护

适用场景

  • 强化学习入门学习,快速理解算法原理
  • 算法对比实验,快速搭建基线
  • 教学演示,展示不同RL算法的行为差异

替代项目

Stable-Baselines3、OpenAI Spinning Up、TF-Agents

项目介绍

all-rl-algorithms 是模型训练领域的开源项目,由 FareedKhan-dev 开发,2025 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(1,954)位列前 30%,在模型训练分类中处于中上游。

近 42 天,它的 GitHub 星标从 1,909 增加到 1,954,净增 45。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-22。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:强化学习入门学习,快速理解算法原理。同类可对比的替代方案包括 Stable-Baselines3、OpenAI Spinning Up、TF-Agents。

上一篇:DB-GPT-Hub

下一篇:PRIME

同类项目推荐

Long-RL 开源

让强化学习轻松驾驭超长序列,训练更稳更快

Long-RL: Scaling RL to Long Sequences (NeurIPS 2025)

★ 729 2026-08-09
TPA 开源

把注意力复杂度从平方降到线性,长序列不再卡顿

[NeurIPS 2025 Spotlight] TPA: Tensor ProducT ATTenTion Transformer (https://arxiv.or···

★ 463 2026-08-09
minimind 开源

两小时造出你的小模型,练手入门不求人

Train a 64M-parameter LLM from scratch in just 2h!

★ 62178 2026-08-09
pruna 开源

一键优化 AI 模型,推理提速又省资源。

Pruna is a model optimization framework built for developers, enabling you to delive···

★ 1286 2026-08-13