Serving Helpers

Note

rlmesh._serving is experimental and not yet part of the public surface. Use it with version pinning; signatures may still change before the stable release.

rlmesh._serving exposes a small surface for constructing an environment to serve through EnvServer. It promotes the loaders previously hidden in rlmesh._cli.serve_env so that scripts and downstream runners can build an environment by Gymnasium id or by module:callable entrypoint.

import rlmesh
from rlmesh import _serving

env = _serving.load_env("CartPole-v1")
rlmesh.EnvServer(env).serve()

Loaders

rlmesh._serving.load_env(env_id, *, packages=(), num_envs=1, vectorization_mode=None, kwargs=None)[source]

Load a Gymnasium/Gym environment by registered id (e.g. "CartPole-v1").

packages are imported first so their environments self-register; num_envs > 1 vectorizes (vectorization_mode "sync"/"async"). Returns an environment suitable for rlmesh.EnvServer.

Parameters:
  • env_id (str)

  • packages (Sequence[str])

  • num_envs (int)

  • vectorization_mode (str | None)

  • kwargs (Mapping[str, object] | None)

Return type:

EnvLike

rlmesh._serving.load_env_entrypoint(entrypoint, *, packages=(), kwargs=None)[source]

Load an environment from a module:callable factory entrypoint.

The callable must return an env exposing reset(...)/step(...); packages are imported before resolving it. Returns an environment suitable for rlmesh.EnvServer.

Parameters:
  • entrypoint (str)

  • packages (Sequence[str])

  • kwargs (Mapping[str, object] | None)

Return type:

EnvLike

rlmesh._serving.import_packages(packages)[source]

Import packages so they can register their environments.

Parameters:

packages (Sequence[str])

Return type:

None