Environment Setup
1. Quick Download
# Clone the repository
git clone git@github.com:UBTECH-Robot/GlobalHumanoidRobotChallenge_2026_Baseline.git
# Switch to the working directory (replace workspace with your own workspace path)
cd workspace/GlobalHumanoidRobotChallenge_2026_Baseline
# Install huggingface-cli
pip install huggingface-hub
# Get simulation assets (recommended: use Git submodules)
git submodule update --init --recursive
# Or manually download assets to ./assets
# hf download UBTECH-Robotics/challenge2026_assets --local-dir ./assets --repo-type model
# Download the training dataset
hf download UBTECH-Robotics/challenge2026_dataset --local-dir ./datasets --repo-type dataset
# Download pretrained weights
hf download UBTECH-Robotics/challenge2026_baseline --local-dir ./challenge2026_baseline --repo-type model
⚠️ If you encounter network issues during download, please download the simulation assets and training dataset from the official website.
2. Build the Environment
This project uses the Dockerfile in the repository root to build the runtime environment. The base image is nvcr.io/nvidia/isaac-sim:5.1.0. The image installs common dependencies required by Isaac Sim and copies the project into /workspace/GlobalHumanoidRobotChallenge_2026_Baseline inside the container.
2.1 Prerequisites
- Docker installed
- NVIDIA Container Toolkit installed
- NVIDIA GPU is available on the host
- Repository code,
assets/submodule,datasets/, andchallenge2026_baseline/resources are ready
Run the following in the project root:
# Use Tsinghua mirror (recommended)
docker build --build-arg PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple/ -t ghrc_2026:v0 -f Dockerfile .
# Use Aliyun mirror
docker build --build-arg PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ -t ghrc_2026:v0 -f Dockerfile .
⚠️ We recommend using the Tsinghua mirror command first to build the Docker image.
If you want to use a different image name, you can override it with build parameters:
# Build a Docker image
# -t image_name:tag
# . indicates using the Dockerfile in the current directory
docker build \
-t your-images-name:latest \
.
2.2 Find the Keyboard evdev Path
Before using keyboard teleoperation, you need to identify the evdev device path (/dev/input/eventX) for your keyboard. By default, the system will traverse all /dev/input/event* devices automatically.
Method 1: Find by device ID (recommended)
ls -la /dev/input/by-id/
# Find the symlink containing "keyboard", for example:
# usb-046D_C328-if01-event-kbd -> /dev/input/event2
Method 2: List all input devices
cat /proc/bus/input/devices | grep -A 3 -i keyboard
# Look for eventX in the "handlers" line
Method 3: Use evtest (interactive testing)
apt install evtest
evtest
# Select the keyboard's event device and press keys to verify
⚠️ When running inside a Docker container, make sure the input devices are properly mounted into the container.