Molmospaces
An end-to-end open ecosystem for robot learning
Install / Use
/learn @allenai/MolmospacesREADME
Updates
- [2026/03/24] 🔥 MolmoBot-Datagen Code for scripted planners, data generation, and benchmark creation.
- [2026/02/27] 🔥 Leaderboards are out.
- [2026/02/11] 🔥 Datasets for assets and scenes in MJCF and USDa format.
- [2026/02/11] 🔥 Benchmark for 8 tasks, including pick, open, and close tasks in JSONs.
- [2026/02/11] 🔥 MolmoSpaces Code for scene conversion, grasp generation, teleoperation, and benchmark evaluation.
Installation
Installing molmospaces is easy!
First, set up a conda environment with Python 3.11:
conda create -n mlspaces python=3.11
conda activate mlspaces
Then, clone and install the project:
git clone git@github.com:allenai/molmospaces.git
cd molmospaces
pip install -e ".[mujoco]"
One of the following options must be provided:
mujocoto use the classic MuJoCo renderermujoco-filamentto use the improved Filament renderer for MuJoCo
The optional installation options are:
devinstalls dependencies for code developmentgraspinstalls dependencies for the grasp generation pipelinehousegeninstalls dependencies for house generation pipeline from iTHOR, ProcTHOR, or Holodeck JSONscuroboinstalls CuRobo for GPU-accelerated planning
You may wish to specify some environment variables to configure behavior.
Currently molmospaces supports Linux and Mac.
We provide simulation assets for Mujoco, Isaac, and ManiSkill. Data genration and Benchmarking are only supported for Mujoco.
Installing the Filament renderer (optional)
If using uv, simply run:
uv pip install -e .[mujoco-filament]
Otherwise, first install mujoco-filament before installing this project:
pip install -i https://test.pypi.org/simple/ mujoco-filament
pip install -e .[mujoco-filament]
Installing Curobo (optional, used only for RB-Y1 tasks)
For curobo support, inside of your conda environment, install with:
# Install CUDA toolkit and build tools (conda-forge for toolkit, nvidia channel for headers)
conda install -c conda-forge cuda-toolkit=12.8 ninja evdev cuda-nvcc cuda-cudart-dev -n mlspaces
# Install torch with CUDA 12.8 support BEFORE installing curobo (Ignore warnings after this step)
pip install "torch~=2.7.0" "torchvision>=0.22.0,<0.23.0" --index-url https://download.pytorch.org/whl/cu128
# Then compile and install the project against the installed torch
export CUDA_HOME=$CONDA_PREFIX
export CPATH=$(dirname $(find $CONDA_PREFIX -name "cuda_runtime_api.h" | head -1)):$CPATH
export TORCH_CUDA_ARCH_LIST="7.5;8.0;8.6;8.9;9.0"
pip install -e ".[mujoco,curobo]"
Set Environment Variables (Optional)
You may wish to specify some environment variables to configure behavior.
Environment variables beginning with the MLSPACES prefix can be used to customize MolmoSpaces behavior.
| Environment Variable | Effect | Default |
|---|---|---|
| MLSPACES_ASSETS_DIR | Where to place downloaded assets | ../assets relative to molmo-spaces directory |
| MLSPACES_FORCE_INSTALL | Override existing assets | True |
| MLSPACES_PINNED_ASSETS_FILE | A .json file containing pinned versions for each asset, used to override the versions specified in molmo_spaces_constants.py. | |
Quick Test
Run a quick sample of data generation. For machines with a display use the --viewer option to launching the passive viewer (push "w" for wire-frame view to see the robot more easily, more details here). Assets should be downloaded automatically for all runs.
# Linux
python scripts/datagen/run_pipeline.py --viewer --seed 3
# Mac
mjpython scripts/datagen/run_pipeline.py --viewer --seed 3
The MolmoSpaces codebase has three entry points for data generation, evaluation, and debugging. The two initial entry points make use of experiment configs to configure runs. The third is more easily modifiable, with some logic for constructing runs on the fly, however constructing experiments is complicated and not all permutations have been tested fully.
molmo_spaces/evaluation/eval_main.py # evaluation
molmo_spaces/data_generation/main.py # data generation
scripts/datagen/run_pipeline.py # debugging
This readme contains more information on experiment configs as well as the other entry-points, for those, please see the evaluation and data generation sections of this readme.
MolmoSpaces Assets
Molmospaces provides scenes, objects, robots, and benchmarks. These can be downloaded using an asset manager to automatically fetch and version-control asset dependencies. A number of assets are provided; this overview explains the naming of the assets in code:
| Type | Code Name | Paper Name | Description | Size | |---|----------------------|--------------|----------------------------------------------|-------| | objects| thor | | hand-crafted indoor assets | ~2k | | objects| objaverse | | converted Objaverse assets | ~129k | | scenes | ithor | MSCrafted | hand-crafted, many articulated assets | 120 | | scenes | procthor-10k | MSProc | procedurally generated with THOR assets | ~120k | | scenes | procthor-objaverse | MSProcObja | procedurally generated with Objaverse assets | ~110k | | scenes | holodeck | MSMultiType | LLM generated with Objaverse assets | ~110k | | benchmark| molmospaces_bench_v1 | MS-Bench v1 | base benchmark for atomic tasks | | | benchmark| molmospaces_bench_v2 | MS-Bench v2 | extended benchmark for atomic tasks | |
Please refer to here for instructions to set up data directories, but you shouldn't need to manually manage any dependencies beyond setting the appropriate environment variables. If you are interested only in data generation and evaluation using MujoCo you can skip the rest of this section.
| Simulator | Documentation | |---|-------------------------------------------------------------------------------| | MuJoCo | MuJoCo Assets Quick Start Instructions | | Isaac-Sim | Isaac-Sim Assets Quick Start Instructions | | ManiSkill | ManiSkill Assets Quick Start Instructions |
Experiment Configs
In MolmoSpaces all runs, whether for data generation or evaluation of policies, are defined by experiment configs.
The base experiment config class is called MlSpacesExpConfig and is located in molmo_spaces/configs/abstract_exp_config.py, it contains documentation on configuring experiments.
To see a list of all currently defined experiment configs run this:
from molmo_spaces.data_generation.main import auto_import_configs
from molmo_spaces.data_generation.config_registry import list_available_configs
auto_import_configs()
print(list_available_configs())
Benchmarks and Evaluations
Currently, installing and running the benchmark is only supported in the MuJoCo simulator.
Installing Benchmarks
export MLSPACES_ASSETS_DIR=/path/to/symlink/resources
python -m molmo_spaces.molmo_spaces_constants
