dopamine-rl
Dopamine: A framework for flexible Reinforcement Learning research
What it is and what it does
Dopamine is a research-focused reinforcement learning framework maintained by Google that prioritizes ease of experimentation and code clarity over feature breadth. It implements six well-tested RL agents (DQN, C51, Rainbow, IQN, SAC, PPO) with active development in JAX and legacy support for TensorFlow, designed for researchers and students to prototype new ideas on Atari and Mujoco environments.
The framework emphasizes reproducibility and follows best practices from the RL literature. It ships with 19 dependencies spanning deep learning (TensorFlow, JAX, Flax), environment simulation (Gym, Gymnasium, ALE), and data handling (NumPy, Pandas, OpenCV). Installation from source is recommended for research work because the codebase is designed to be modified directly; pip installation is supported but less typical for active development.
Use it for:
- Prototype and test new RL algorithm ideas on Atari benchmark environments with minimal boilerplate.
- Train and compare standard agents (DQN, Rainbow, PPO) to establish baselines for research papers.
- Learn RL algorithm implementation by reading and modifying well-documented, battle-tested agent code.
- Reproduce published results using Dopamine's implementations following Machado et al. (2018) evaluation protocols.
- Extend existing agents with custom reward shaping or network architectures for domain-specific tasks.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Dopamine is a research framework for prototyping reinforcement learning algorithms, providing implementations of DQN, C51, Rainbow, IQN, SAC, and PPO agents built primarily with JAX.
Yes, if you are conducting RL research or learning algorithm implementation. The framework is actively maintained, carries no known vulnerabilities, and provides a curated set of proven agents with clear code. The 19 dependencies and environment setup overhead make it less suitable for lightweight production inference, but ideal for experimentation and reproducible research.
Install
dopamine-rl on PyPI
pip
pip install dopamine-rluv
uv add dopamine-rlpoetry
poetry add dopamine-rlInstalling dopamine-rl
Before you install
Low install friction with a pure-Python wheel, but carries 19 runtime dependencies including TensorFlow, JAX, and environment simulators (Gym, Gymnasium, ALE). Installation from source is recommended over pip for research use.
License in practice
Apache 2.0 permissive license allows free use, modification, and distribution in both open and closed projects without copyleft obligations.
Quickstart
pip install dopamine-rl
import dopamine
from dopamine.agents import dqn_agent
# Configure and train an agent on Atari environments
Requires manual setup of Atari (ale-py) or Mujoco environments before training; TensorFlow and JAX dependencies have their own system-level prerequisites.
Verify before relying
- Current Python version support beyond the listed 3.5–3.8 classifiers (requires_python states >=3.5,<4)
- Whether all 19 dependencies are required for basic usage or if subsets suffice for specific agents
- Performance or stability differences between JAX and legacy TensorFlow implementations
Package facts
| License | Apache 2.0 (permissive) |
| Python support | supports the current Python release (<4,>=3.5) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 19 — tensorflow, gin-config, absl-py, ale-py, opencv-python, gym, gymnasium, flax, jax, jaxlib, Pillow, numpy, pygame, pandas, python-snappy, tf-slim, tensorflow-probability, tf-keras, tqdm |
| Maintenance | actively maintained — 652 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 98,516/month — #13,077 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dopamine_rl-4.1.2-py3-none-any.whl
Keywords: dopamine, reinforcement, machine, learning, research
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
tianshouTianshou is a PyTorch-based reinforcement…
permissive · top 15,000 on PyPI
sb3-contribProvides experimental reinforcement learning…
permissive · top 15,000 on PyPI
rsl-rl-libRSL-RL is a GPU-accelerated reinforcement…
permissive · top 15,000 on PyPI
stable-baselines3Stable Baselines3 provides PyTorch…
permissive · top 5,000 on PyPI
skrlskrl is a modular reinforcement learning…
permissive · top 15,000 on PyPI
verlverl is a reinforcement learning training…
permissive · top 15,000 on PyPI
gymnasiumGymnasium provides a standard Python API for…
permissive · top 5,000 on PyPI
google-tunixTunix is a JAX-based library for post-training…
permissive · top 15,000 on PyPI
mjlabmjlab provides a GPU-accelerated reinforcement…
permissive · top 15,000 on PyPI
agentlightningAgent Lightning optimizes AI agents using…
unclear · top 15,000 on PyPI