Skip to main content

Python build pre-commit Code style: black release

Minari is a Python library for conducting research in offline reinforcement learning, akin to an offline version of Gymnasium or an offline RL version of HuggingFace's datasets library.

The documentation website is at minari.farama.org. We also have a public discord server (which we use for Q&A and to coordinate development work) that you can join here: https://discord.gg/bnJ6kubTg6.

Installation

To install Minari from PyPI:

pip install minari

This will install the minimum required dependencies. Additional dependencies will be prompted for installation based on your use case. To install all dependencies at once, use:

pip install "minari[all]"

If you'd like to start testing or contribute to Minari please install this project from source with:

git clone https://github.com/Farama-Foundation/Minari.git --single-branch
cd Minari
pip install -e ".[all]"

Command Line API

To check available remote datasets:

minari list remote

To download a dataset:

minari download D4RL/door/human-v2

To check available local datasets:

minari list local

To show the details of a dataset:

minari show D4RL/door/human-v2

For the list of commands:

minari --help

Basic Usage

Reading a Dataset

import minari

dataset = minari.load_dataset("D4RL/door/human-v2")

for episode_data in dataset.iterate_episodes():
    observations = episode_data.observations
    actions = episode_data.actions
    rewards = episode_data.rewards
    terminations = episode_data.terminations
    truncations = episode_data.truncations
    infos = episode_data.infos
    ...

Writing a Dataset

import minari
import gymnasium as gym
from minari import DataCollector


env = gym.make('FrozenLake-v1')
env = DataCollector(env)

for _ in range(100):
    env.reset()
    done = False
    while not done:
        action = env.action_space.sample()  # <- use your policy here
        obs, rew, terminated, truncated, info = env.step(action)
        done = terminated or truncated

dataset = env.create_dataset("frozenlake/test-v0")

For other examples, see Basic Usage. For a complete tutorial on how to create new datasets using Minari, see our Pointmaze D4RL Dataset tutorial, which re-creates the Maze2D datasets from D4RL.

Training Libraries Integrating Minari

Citation

If you use Minari, please consider citing it:

@software{minari,
	author = {Younis, Omar G. and Perez-Vicente, Rodrigo and Balis, John U. and Dudley, Will and Davey, Alex and Terry, Jordan K},
	doi = {10.5281/zenodo.13767625},
	month = sep,
	publisher = {Zenodo},
	title = {Minari},
	url = {https://doi.org/10.5281/zenodo.13767625},
	version = {0.5.0},
	year = 2024,
	bdsk-url-1 = {https://doi.org/10.5281/zenodo.13767625}
}

Minari is a shortening of Minarai, the Japanese word for "learning by observation".

Metadata

Release files for minari 0.5.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for minari 0.5.4
File Size Uploaded
minari-0.5.4.tar.gz 52.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for minari 0.5.4
File Interpreter ABI Platform
minari-0.5.4-py3-none-any.whl Python 3 none any Details

Total release size: 109.2 kB

Release files / minari-0.5.4.tar.gz

Download URL minari-0.5.4.tar.gz
Size 52.5 kB
Tags Source
SHA-256 checksum
How to use checksums
a32a7c7a93b6986ceac3552c32cecd94e37367cdb533a81647ca9e76b5b42116
BLAKE2b-256 checksum
How to use checksums
0a18523f8a6da59568691b4de8924177bf62a913b57eacf0b49f518a4d7d54c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / minari-0.5.4-py3-none-any.whl

Download URL minari-0.5.4-py3-none-any.whl
Size 56.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c396ca5d141a519aaa60d15e5f7f73487d6084e5bb00acd08b63a01f65eefd69
BLAKE2b-256 checksum
How to use checksums
54578abdaf14f018f987798a8d30df2e75d4515e666552c2e6b57f2bda76c268
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release history Release notifications | RSS feed

This release

0.5.4 This release

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page