metaworld-algorithms

May 20, 2026 ยท View on GitHub

Implementations of Multi-Task and Meta-Learning baselines for the Metaworld benchmark

Installation

From a clone of the repository

  1. Install uv
  2. Create a virtual environment for the project (with Python>=3.12)
    uv venv .venv --python 3.12
    
  3. Activate the virtual environment
    source .venv/bin/activate
    
  4. Install the dependencies
    uv pip install -e ".[cuda13]"
    

Important

Installing this package with no extras specified, i.e. uv pip install -e . will not work. You need to be explicit about your choice of accelerator by specifying the correct extra when installing.

Note

To use other accelerators, replace cuda13 with the appropriate accelerator name. Valid options are cpu, tpu, and cuda13. macOS users should install the cpu extra for local development

Optional video recording dependencies

Install the recording extra when you want to record rendered evaluation episodes:

uv pip install -e ".[cuda13,recording]"

Video recording uses MuJoCo offscreen rendering. The system must expose a working MuJoCo GL backend:

  • GPU/headless rendering: set MUJOCO_GL=egl and make sure EGL, GLVND, and the GPU driver libraries are visible in the runtime environment.
  • CPU/software rendering: set MUJOCO_GL=osmesa and install OSMesa/Mesa GL runtime libraries.

Structure

Here is how you can navigate this repository:

  • examples contains code for running baselines.
  • metaworld_algorithms/rl/algorithms contains the implementations of baseline algorithms (e.g. MTSAC, MTPPO, MAML, etc).
  • metaworld_algorithms/nn contains the implementations of neural network architectures used in multi-task RL (e.g. Soft-Modules, PaCo, MOORE, etc).
  • metaworld_algorithms/rl/networks.py contains code that wraps these neural network building blocks into agent components (actor networks, critic networks, etc).
  • metaworld_algorithms/rl/buffers.py contains code for the buffers used.
  • metaworld_algorithms/rl/algorithms/base.py contains code for training loops (e.g. on-policy, off-policy, meta-rl).
  • metaworld_algorithms/envs/metaworld.py contains utilities for wrapping metaworld for use with these baselines.