unilab.base.registry¶
Functions
|
Check if an environment configuration is registered. |
|
Import env registry bootstrap modules. |
|
Decorator to register an environment class or function factory. |
|
Decorator to register an environment configuration class or factory. |
|
Find the explicit default simulation backend for an environment. |
List all registered environments with their available backends. |
|
|
Create an environment instance by name. |
|
Construct one config instance from the registered cold-path factory. |
|
Register and return an environment class or function factory. |
|
Register a zero-argument environment configuration factory. |
|
Resolve the Hydra root reward target declared by an env config owner. |
Classes
Construct an environment for one materialized config and backend. |
|
EnvMeta(env_cfg_factory: Callable[[], unilab.base.base.EnvCfg], env_factory_dict: Dict[str, unilab.base.registry.EnvFactory] = <factory>) |
- class unilab.base.registry.EnvFactory[source]¶
Bases:
ProtocolConstruct an environment for one materialized config and backend.
- __init__(*args, **kwargs)¶
- class unilab.base.registry.EnvMeta[source]¶
Bases:
objectEnvMeta(env_cfg_factory: Callable[[], unilab.base.base.EnvCfg], env_factory_dict: Dict[str, unilab.base.registry.EnvFactory] = <factory>)
- Parameters:
env_factory_dict (
Dict[str,EnvFactory])
-
env_factory_dict:
Dict[str,EnvFactory]¶
- available_sim_backend()[source]¶
Return the explicit default simulation backend for this environment.
- unilab.base.registry.register_env_config(name, env_cfg_factory)[source]¶
Register a zero-argument environment configuration factory.
- unilab.base.registry.envcfg(name)[source]¶
Decorator to register an environment configuration class or factory.
- Usage:
@envcfg(“my-env”) @dataclass class MyEnvCfg(EnvCfg):
…
@envcfg(“my-manager-env”) def make_my_env_cfg() -> EnvCfg:
…
- unilab.base.registry.materialize_env_config(name)[source]¶
Construct one config instance from the registered cold-path factory.
- unilab.base.registry.register_env(name, env_factory, sim_backend)[source]¶
Register and return an environment class or function factory.
- Parameters:
name (
str)env_factory (
TypeVar(TEnvFactory, bound=EnvFactory))sim_backend (
str)
- Return type:
TypeVar(TEnvFactory, bound=EnvFactory)
- unilab.base.registry.env(name, sim_backend)[source]¶
Decorator to register an environment class or function factory.
- Usage:
@env(“my-env”, “mujoco”) class MyEnv(ABEnv):
…
@env(“my-manager-env”, “mujoco”) def make_my_env(cfg, num_envs=1, backend_type=”mujoco”):
…
- Parameters:
- Return type:
Callable[[TypeVar(TEnvFactory, bound=EnvFactory)],TypeVar(TEnvFactory, bound=EnvFactory)]
- unilab.base.registry.find_available_sim_backend(env_name)[source]¶
Find the explicit default simulation backend for an environment.
- unilab.base.registry.resolve_reward_override_field(env_name)[source]¶
Resolve the Hydra root reward target declared by an env config owner.
Legacy configs own a
reward_configfield. Manager-Based configs opt in through the explicit manager-term mapping metadata onrewards. The registry resolves this on the config class without constructing an env or backend so training adapters do not branch on task names.
- unilab.base.registry.make(name, sim_backend=None, env_cfg_override=None, num_envs=1)[source]¶
Create an environment instance by name.
- Parameters:
- Return type:
- Returns:
Environment instance