ORLax - Offline Reinforcement Learning with JAX
ORLax is an extensible, research-friendly offline reinforcement learning framework built with JAX, Flax, and Optax. It provides clean, typed APIs optimized for editor autocompletion, modular algorithm implementations, and production-ready features like WandB logging and GPU acceleration.
Features
- 🔥 Modern JAX Stack: Built on JAX, Flax, and Optax for high-performance GPU/TPU training
- 📦 Modular Design: Clean separation of concerns with pluggable algorithms, models, and datasets
- 🎯 Type-Safe: Comprehensive type hints with dataclasses instead of dict-heavy patterns
- 📊 Built-in Logging: WandB integration with terminal progress bars (tqdm)
- 🚀 Production-Ready: Checkpointing, multi-device training, and reproducible experiments
- 🧪 Research-Friendly: Clear interfaces, and easy extensibility
Algorithms
- BC (Behavioral Cloning) - Supervised learning from expert demonstrations
- CQL (Conservative Q-Learning) - Conservative offline RL with Q-value penalties
- IQL (Implicit Q-Learning) - Expectile regression-based offline RL
Installation
Using uv (Recommended)
# Clone the repository
git clone https://github.com/sql-hkr/orlax.git
cd orlax
# Install with uv
uv sync
Using pip
# Clone the repository
git clone https://github.com/sql-hkr/orlax.git
cd orlax
# Install in editable mode
pip install -e .
GPU Support
For CUDA support, install JAX with CUDA:
# For CUDA 12
pip install --upgrade "jax[cuda12]"
Quick Start
Training
# Train IQL on Hopper-Medium
uv run orlax-train --config configs/iql_hopper.toml
Citation
If you use ORLax in your research, please cite:
@software{orlax2025,
title = {ORLax: Offline Reinforcement Learning with JAX},
author = {sql-hkr},
year = {2025},
url = {https://github.com/sql-hkr/orlax}
}
Acknowledgments
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feat/amazing-feature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feat/amazing-feature) - Open a Pull Request
Contact
- Author: sql-hkr
- Email: sql.hkr@gmail.com
- GitHub: @sql-hkr
- Issues: GitHub Issues
Note: This software is under active development. API stability is not guaranteed until version 1.0.0.
Metadata
Release files for orlax 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| orlax-0.1.1.tar.gz | 23.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| orlax-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 59.3 kB
Release files / orlax-0.1.1.tar.gz
| Download URL | orlax-0.1.1.tar.gz |
|---|---|
| Size | 23.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5231a07c6162a5d4c3ec198f147c0ff2b6a52d88680ad1c10f96182ad865e875
|
|
BLAKE2b-256 checksum How to use checksums |
e8f9481bde3a77eb0917e69beb9b5630f4bacebd14e3960771e23a17e49f4ab6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 12, 2025.
Transparency logRelease files / orlax-0.1.1-py3-none-any.whl
| Download URL | orlax-0.1.1-py3-none-any.whl |
|---|---|
| Size | 36.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
05dde4d949ee3a52ac61e68e91b83c6c2c372734398b4cde5a99c530009ed0ac
|
|
BLAKE2b-256 checksum How to use checksums |
30e4a0d7da74f08e4e716b52561fe9f263617b68593a48975d61d2e0c3055a6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 12, 2025.
Transparency log