Skip to main content

RemoteRL: high-performance command-line & Python client with pre-compiled native wheels for remote reinforcement-learning workloads.

Project description

RemoteRL: Cloud Service for Remote Reinforcement Learning

Overview

RemoteRL is a cloud-based platform that enables reinforcement-learning (RL) training to run remotely, decoupling the agent’s training process from environment (simulator) execution. It’s a scalable framework that lets you connect environments (simulators or robots) from anywhere, stream live experience data, and train smarter models in real time. You always run both pieces yourself—the trainer on a laptop, on-prem cluster, or robot controller, and the simulators or robots wherever they already live, nearby or across the globe. RemoteRL’s relay nodes stream data between them over secure WebSockets, letting you connect environments anywhere, send live experience data, and plug into popular RL frameworks—all without rewriting code.

Key Characteristics:

  • Separation of Concerns: The RL environment (“Simulator”) keeps running wherever it already lives—on your PC, a robot, or another server—and connects to RemoteRL’s relay. The learning algorithm (“Trainer”) stays on your own machine or cluster, receiving observations and rewards through RemoteRL and sending back actions or updated policies. Because each process remains on hardware you control, you never have to install the simulator on the training host, simplifying setup and letting you leverage local compute when it makes sense.

  • Use Cases: RemoteRL is especially useful for scenarios like robotics and IoT (where a physical robot or device provides real-time data to train a model remotely) and distributed simulation (where many simulators run in parallel on different machines to speed up training). It allows training "from anywhere" – whether the environment is on-premises or in the cloud – by handling the networking, synchronization, and scaling behind the scenes. For example, a robotics engineer could connect a robot’s control loop to RemoteRL and have a cloud-based RL agent train on the live data, or a researcher could run dozens of game simulations on local PCs all feeding into a single cloud RL learner.

Core Features and Functionality

RemoteRL provides a number of features to make remote and distributed RL easy to integrate and manage:

  • Zero-Setup Integration: It works out-of-the-box with popular Python RL libraries. Users simply install the remoterl Python package and add a one-line initialization with their API key to an existing Gymnasium or RLlib script – “Run pip install remoterl and add remoterl.init(api_key="…") to any Gymnasium / Ray RLlib script, and hit run — no rewrites, zero friction”. This means no extensive code refactoring or complex cluster setup is required; RemoteRL hooks into the RL frameworks to handle remote environment communication transparently.

  • Framework and Tool Support: The service auto-integrates with popular RL frameworks like OpenAI Gymnasium (Gym) for environment interfaces and Ray RLlib for distributed training algorithms. It also supports integration with libraries like Stable-Baselines3. This broad support allows developers to use familiar APIs and algorithms (e.g. RLlib’s trainers or Stable-Baselines3’s agents) while RemoteRL manages the remote execution of environments. Whether you use custom Gym environments or standard ones, or whether you train with RLlib’s scalable architecture or a single-agent approach, RemoteRL can plug in with minimal changes.

  • Live Web Dashboard & Monitoring: RemoteRL provides a web‑based dashboard that shows which simulators and trainers are online alongside basic byte/step counters. When you add remoterl.init(api_key="…") to a process, it appears on the dashboard within seconds. The dashboard displays connection status only—RemoteRL does not view, store, or inspect observation, reward, or model payloads. Operators can disconnect a simulator or temporarily block new sessions; they cannot peek into in‑flight data nor pause individual training iterations.

  • Distributed & Scalable Training: RemoteRL’s relay layer is logically centralized, but it feeds data just as well into a single-process trainer or a distributed RL cluster you run with frameworks such as Ray RLlib. Many simulators—or whole fleets of robots—can stream experience to one learner, while an RLlib-style trainer can shard its own work behind the relay. RemoteRL handles fan-in/fan-out, step ordering, and back-pressure, so you scale from one to hundreds of simulators without touching networking code or changing your training loop.

  • Real-Time Online RL: RemoteRL streams observations and rewards to the trainer—and actions back to simulators—in real time. Each simulator automatically connects through the relay node in the nearest cloud region, so every env.step() returns with minimal round-trip delay even when trainer and environments are on different continents. With servers rolling out across major cities, you can run a trainer in Europe while simulators in Asia and the Americas each route to their closest node, delivering interactive, online RL at global scale.

  • Usage-Based Pricing and Tiers: RemoteRL offers a free tier and a premium plan. The service will be “available free for everyone” for light use, meaning you can run training jobs without paying as long as data usage is under a certain limit. The free tier includes 1 GB of data traffic free (as noted in the feature list) and likely some reasonable number of simulators. For heavier usage, premium services (pay-as-you-go) are offered – “charged per GB” for data beyond the free quota. The premium tier is designed for those who need “extensive data usage, multiple simulators, and large-scale training across global regions.” In other words, large experiments or enterprise deployments with many environments and high throughput would incur a usage-based fee. This pricing model is traffic/duration-based (billing on both bytes of data exchanged and active connection minutes), ensuring you only pay for what you use, and there is no hard limit on speed or number of simulators in premium aside from practical scaling limits. This makes the service accessible to individual researchers (on the free tier) while scaling up to industrial projects on the paid tier.

Architecture and How It Works

At a high level, RemoteRL follows a client–server architecture specialized for RL. The core components are defined as follows:

  • Trainer: The RL algorithm process that you run and manage (e.g., on your own cloud instances, on-prem servers, or a laptop). RemoteRL simply provides the networking bridge: it relays state/reward data from simulators to your trainer and returns actions. You can still scale the trainer across multiple machines—using Ray RLlib or similar frameworks—while RemoteRL abstracts away the connection details, not the computation itself.

  • Simulator: The environment process that produces observations and receives actions—whether it’s a game engine, robotics simulator, custom code, or a real-world device such as a robot control loop or IoT sensor. It can run anywhere (local machine, edge device, or another cloud) and connects to RemoteRL over a secure WebSocket. Functionally it behaves like any Gym environment; the only difference is that these interactions travel across the network through RemoteRL’s bridge.

import gymnasium as gym
import remoterl 

remoterl.init(api_key="YOUR_KEY", role="trainer") # the SDK treats this process as the trainer
env = gym.make("Humanoid-v5")  # Environment runs remotely in another city

Communication: When you integrate RemoteRL, the typical RL loop is split between the trainer and simulator via the network:

  • The trainer invokes an environment step (e.g. calling env.step(action) in RL code). Instead of running locally, this call is routed through RemoteRL’s library which sends the action to the remote simulator over the WebSocket connection.
  • The simulator receives the action, applies it (advancing the simulation or executing on the robot), and returns the resulting observation, reward, and done flag back over the socket.
  • The trainer then uses the received data to update the agent’s model (e.g., via policy gradient, Q-learning update, etc.), and the cycle repeats.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

remoterl-1.1.5-cp312-cp312-win_amd64.whl (5.5 MB view details)

Uploaded CPython 3.12Windows x86-64

remoterl-1.1.5-cp312-cp312-musllinux_1_2_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

remoterl-1.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

remoterl-1.1.5-cp312-cp312-macosx_11_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

remoterl-1.1.5-cp311-cp311-win_amd64.whl (5.3 MB view details)

Uploaded CPython 3.11Windows x86-64

remoterl-1.1.5-cp311-cp311-musllinux_1_2_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

remoterl-1.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

remoterl-1.1.5-cp311-cp311-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

remoterl-1.1.5-cp310-cp310-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.10Windows x86-64

remoterl-1.1.5-cp310-cp310-musllinux_1_2_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

remoterl-1.1.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

remoterl-1.1.5-cp310-cp310-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

remoterl-1.1.5-cp39-cp39-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.9Windows x86-64

remoterl-1.1.5-cp39-cp39-musllinux_1_2_x86_64.whl (4.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

remoterl-1.1.5-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

remoterl-1.1.5-cp39-cp39-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file remoterl-1.1.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: remoterl-1.1.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for remoterl-1.1.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 632a014205450729031801f463a31a2519e867d5ddabe55a4a7819c5e6889e2b
MD5 2890c295ae5f9d085ed12e48625aa4c6
BLAKE2b-256 1ed07c6fa871234f006e2c2232ef5fae514e2c02cdbcc96c25408deb4d3e507b

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0776b1edb90737efecb41d29837a41232252c939a5ba0f386b3e7f14d7a89632
MD5 e1d667d044301febc6b7520c1452b7f5
BLAKE2b-256 55f8bb55daeea2a62758b90b10b9073c567f7fe44d3a29e368e7d8effdc22515

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7c575857dc9e9c804258b44cde73a20bb95823b30edab5f3103716f1ffa929f0
MD5 8f653054759e24200145242189eedfd8
BLAKE2b-256 789f930efb0519a6d7feee6b7a5036aa8adb59b0b6c1dba226b0937355424a5b

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3fa7f876853319bd1d8074298b098ef3da775b58656a74d1763e8dec73fef2b7
MD5 780177129c0ba8a43a9c4b46471b4717
BLAKE2b-256 9f482be080b47c2076352a9867e9c034480da1e1d54f61b80674e1e567002250

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: remoterl-1.1.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for remoterl-1.1.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b7fbf5ebc06a93eca3307f77062683a34c66eb22a2e58f7cabd4eca8e25fb341
MD5 f6dc99b623e8587ff0291a78c32bb2e2
BLAKE2b-256 0bb71444f0d011732ae999933911f6d971c4624fde720b21ddac67ab5c5486e1

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b3e2a3f9667ecded8e509d76a9f0ce5d0ec89d5863af28fce6edeb5cc1fe6336
MD5 f6dd1425922152920b83e5ad1e108df1
BLAKE2b-256 cdb1b81d5ef55272d9d76408ec1ac48b930f709626a564e6fb2eaf2ce884e61e

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f93826c41712b2bbfd9ecc0075488a371368a8c226e24ba087f6cd4f3fe2b99e
MD5 4d3557410759ef05c715392f19b589d6
BLAKE2b-256 358778eae07eaa1b32722862728740de16cc3d564f037e6daff91e4e72317024

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b3dd20fa89a2e3bb971aeb02560bc5e92ed9d718be87cbbde577e631ff32820
MD5 bc9531c334b17ca3edcf3d7830f9a825
BLAKE2b-256 fbc5b8ecbbaae38a67ca24b5e7d429885b74f16bb4b3d31cca43e19f3b90a1a7

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: remoterl-1.1.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for remoterl-1.1.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f2d419b7e253a58bc342ae4b58fcb8789fc434532bebecdc10db1468e408b523
MD5 53d5c57f4bbad825803772685814fb64
BLAKE2b-256 1eabfb86e9f836162ec2f81817ff8c78fe948f20724515afb1524354a9521123

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9ce26d6076a8e42090d5856d343375660846e290829b8adb841795b41e051fc3
MD5 993ea73af6259f8589503050b215e2ac
BLAKE2b-256 03ba2c563f612e04ae07b44ff3f6a38c75a86dbe430b90d401b695d9e01e5bbc

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4b2323862226f21e7a134bfd1ebba33269b71d93419c2a71a34fba379f83aa79
MD5 396034d64dc00d3a3de29539abe91f15
BLAKE2b-256 11efa18213da7d2be98cecc9a48345e27b22224f940cb0f52ed1baf2780a662d

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fc55248a313ce26e1bc4de7ef994f2fd7982aaecdc734d8fffe280bea0760dc1
MD5 b9177aabe9f8c50e03ae2634bece3763
BLAKE2b-256 8ad515238ec71ef33b78f3e00e9fead1b737de13923a8dba872815eba7e29b9d

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: remoterl-1.1.5-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for remoterl-1.1.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 af79df21aea8f3f2b0575dc9aa734c7a23397eb318415f08de2626fd361160ab
MD5 260d69205f63c625d95823e57c32e897
BLAKE2b-256 bfbb06ef1fa5ead9a5d601c7a50d608f57167325197ea1d128298f1333e96ab8

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8730eb03474a080d6d98f2085068631fb8b6b0b794dcd0dcbb8627af124da112
MD5 910332c449c5120f1575c409adf32344
BLAKE2b-256 97ed70f1aed5dc10a34f95bfdb7edac0427569c457cf55fc934968488c1ba54f

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8329ede1830a8c20448ed861f29c62b5776c3d31bb3995f2a6929e7119dd4f7c
MD5 82cfa9eb4935bdb19a23a87a7ac618f4
BLAKE2b-256 3ba2fee0dd0e5a3a8c2adf5f9a7e154c682cb0461191eadddb43a7f0bc5f82ff

See more details on using hashes here.

File details

Details for the file remoterl-1.1.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for remoterl-1.1.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c61af1da4dc76c1796bf72bd32164a4515390124cb37c9fcec674609ac1058f9
MD5 abe60eeb8c36a8b300fb45c7a98a715d
BLAKE2b-256 218126a974b304c84baed457d8122d20f52742b4d310f480b4b713164eb1e1eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page