Migrating from skrl

skrl’s strength is algorithm breadth. UniLab focuses on a curated set (PPO, SAC with several optimized variants) but adds a real-hardware deployment path.

Mapping skrl concepts to UniLab

skrl

UniLab

Agent (PPO, SAC, …)

unilab.rl.algos.*

RolloutMemory

unilab.rl.runtime.ipc.tensor_rollout_ring_buffer

ReplayMemory

unilab.rl.runtime.ipc.replay_buffer

Trainer

unilab.training.run

Wrapper for env

TorchEnv subclassing

What to expect

  • No algorithm parity for niche algos (CQL, IQL, etc.) — UniLab intentionally focuses on a few highly optimized actor-critic variants.

  • Different runner lifecycle. skrl’s monolithic trainer becomes a collector + learner pair connected by shared memory. See Runner Lifecycle.

  • Different env interface. skrl tolerates many env styles. UniLab insists on TorchEnv + tensor dict obs.

Migration checklist

  1. Decide which UniLab algorithm best matches your skrl agent.

  2. Port the env into TorchEnv form.

  3. Convert hyperparameter YAML into Hydra groups under src/unilab/conf/<algo>/<task>/.

  4. Validate reward parity.