#rl #ml #reinforcement-learning #gym #api-bindings

gymnasium

Gymnasium API for Reinforcement Learning

2 releases

0.0.1 Jan 20, 2024
0.0.0 Jun 28, 2023

#12 in #gym


Used in gymnasium_cli

MIT/Apache

16KB

gymnasium_rs

crates.io docs.rs Rust Docker deps.rs codecov.io

Rust implementation of Gymnasium API for reinforcement learning. This implementation is compatible and interoperable with the Python implementation.

Overview

The workspace contains these packages:

Instructions

Rust

Add gymnasium as a Rust dependency to your Cargo.toml manifest.

[dependencies]
gymnasium = "0.1"

CLI tool

Install the gymnasium_rs executable with cargo.

cargo install --locked gymnasium_cli

Afterwards, run the gymnasium_rs executable.

# Pass `--help` to show the usage and available options
gymnasium_rs

Docker

To install Docker on your system, you can run .docker/host/install_docker.bash to configure Docker with NVIDIA GPU support.

.docker/host/install_docker.bash

Build Image

To build a new Docker image from Dockerfile, you can run .docker/build.bash as shown below.

.docker/build.bash ${TAG:-latest} ${BUILD_ARGS}

Run Container

To run the Docker container, you can use .docker/run.bash as shown below.

.docker/run.bash ${TAG:-latest} ${CMD}

Run Dev Container

To run the Docker container in a development mode (source code mounted as a volume), you can use .docker/dev.bash as shown below.

.docker/dev.bash ${TAG:-latest} ${CMD}

As an alternative, users familiar with Dev Containers can modify the included .devcontainer/devcontainer.json to their needs. For convenience, .devcontainer/open.bash script is available to open this repository as a Dev Container in VS Code.

.devcontainer/open.bash

Join Container

To join a running Docker container from another terminal, you can use .docker/join.bash as shown below.

.docker/join.bash ${CMD:-bash}

License

This project is dual-licensed to be compatible with the Rust project, under either the MIT or Apache 2.0 licenses.

Contributing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~3.5–8.5MB
~90K SLoC