Quick Demo¶
This page mirrors the README Quick Demo and uses the first-level UniLab CLI:
uv run train, uv run eval, and uv run demo.
Clone And Sync¶
# 0. If uv is not installed
curl -LsSf https://astral.sh/uv/install.sh | sh
# 1. Clone the repository
git clone https://github.com/unilabsim/UniLab.git
cd UniLab
Choose exactly one dependency setup command for your platform:
# Linux CUDA or macOS
make setup-motrix
# Without shell completion setup:
# uv sync --extra motrix
# If make is not installed:
# uv sync --extra motrix && uv run --no-sync unilab-complete install
# Linux AMD / ROCm
# make sync-rocm
# Linux Intel Arc / iGPU
# make sync-xpu
First Success¶
Run a pre-trained policy before changing any task configuration:
# Fetches the checkpoint and assets from Hugging Face on first run.
uv run demo dance
Available demo names are teaser, dance, wallflip, boxtracking,
and inhandgrasp. Use uv run demo --help for device and refresh
options.
Train A Task¶
uv run train --algo ppo --task go2_joystick_flat --sim motrix
This command routes to the registered go2_joystick_flat task with the Motrix
backend. The CLI keeps algorithm, task, and backend selection explicit through
--algo, --task, and --sim; internally it composes the matching owner YAML.
Evaluate And Replay¶
uv run eval --algo ppo --task go2_joystick_flat --sim motrix --load-run -1
# Headless Motrix video export for Linux/server runs
uv run eval --algo ppo --task go2_joystick_flat --sim motrix \
--load-run -1 --render-mode record
Mainland China users: motions, scenes, robot meshes, and demo checkpoints come
from Hugging Face on first run. If huggingface.co is unreachable, switch to the
community mirror before running training, eval, or demo commands:
export HF_ENDPOINT=https://hf-mirror.com
X2 robot meshes auto-download from Hugging Face (unilabsim/unilab-robots) into
src/unilab/assets/robots/x2/meshes/ on first run; no manual step is needed. To
pre-fetch them:
uv run unilab-pull-assets --robot x2
On macOS, the CLI routes Motrix interactive playback through mxpython when
needed. Use --render-mode record for headless video export or
--render-mode none to skip rendering.
Short Smoke Variant¶
For CI-style local checks, keep the same CLI route and add Hydra overrides after the flags:
uv run train --algo ppo --task go2_joystick_flat --sim motrix \
algo.max_iterations=1 \
algo.num_envs=16 \
training.no_play=true
Next Steps¶
Platform details: Installation.
Replay details: Evaluation and Playback.
Learn the unified CLI in CLI Reference.
Read how Hydra owner YAMLs work in Hydra Config.