explaingit

tsinghua-mars-lab/omg

Analysis updated 2026-05-18

56PythonAudience · researcherComplexity · 5/5LicenseSetup · hard

TLDR

A research project that trains diffusion models to generate humanoid robot motion from text or audio commands.

Mindmap

mindmap
  root((OMG))
    What it does
      Humanoid motion generation
      Diffusion models
      Text and audio conditions
    Tech stack
      Python
      CUDA
      TensorRT
      ONNX
    Use cases
      Train motion models
      Export for inference
      Deploy to G1 robot
    Audience
      Researchers
      Robotics engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Train a diffusion model to generate humanoid motion from text descriptions or audio.

USE CASE 2

Export a trained motion model to ONNX for fast GPU inference.

USE CASE 3

Run a combined generation and tracking pipeline to produce robot control signals.

USE CASE 4

Deploy the generative planner and tracking system to a Unitree G1 humanoid robot.

What is it built with?

PythonCUDATensorRTONNX

How does it compare?

tsinghua-mars-lab/omgeadmin2/jarvis_aigreatvishal27-rc/ai-resume_analyzer
Stars565656
LanguagePythonPythonPython
Setup difficultyhardhardmoderate
Complexity5/54/52/5
Audienceresearcherdevelopervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Requires multiple CUDA GPUs for training and a Unitree G1 with Nvidia Orin for real-robot deployment, some checkpoints are not yet released.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

OMG (Omni-Modal Motion Generation for Generalist Humanoid Control) is a research project from Tsinghua University's MARS Lab that trains AI models to generate realistic movements for humanoid robots. The work is tied to an academic paper and focuses on getting a robot to move in response to different kinds of instructions, such as text commands or audio cues. The core approach uses a diffusion model, a type of AI that learns to produce outputs by progressively refining random noise into something structured. Here, the model learns to produce sequences of body joint positions that form coherent motions. Models of several sizes are provided, ranging from 50 million to 1 billion parameters, and training can be distributed across multiple GPUs. The workflow has several stages. You download the training data and pretrained model weights (some of which are not yet released at the time of this writing), preprocess the data into fixed chunks for efficiency, compute normalization statistics, and then train the diffusion model. After training, you export the model to ONNX format for fast inference using TensorRT on a CUDA-capable GPU. A separate motion-tracking component called HoloMotion converts the generated joint positions into actual robot control signals. For running the system, the repository supports several pipeline modes: generating motion only, tracking only, or a combined online or offline pipeline that chains generation and tracking together. The generation step accepts conditions such as text descriptions and a seed motion clip. Real-robot deployment targets the Unitree G1 humanoid running on an Nvidia Orin compute module. A GPU workstation runs the generative planner while the robot's onboard system handles motion tracking and actuation. The project is MIT licensed.

Copy-paste prompts

Prompt 1
Walk me through the OMG pipeline from installing the environment to training a 50M model.
Prompt 2
Explain how OMG's diffusion model turns text or audio conditions into robot motion.
Prompt 3
Help me set up the OMG_DATA_ROOT and OMG_MODELS_ROOT environment variables for training.
Prompt 4
Show me how to export a trained checkpoint to ONNX for TensorRT inference.

Frequently asked questions

What is omg?

A research project that trains diffusion models to generate humanoid robot motion from text or audio commands.

What language is omg written in?

Mainly Python. The stack also includes Python, CUDA, TensorRT.

What license does omg use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is omg to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is omg for?

Mainly researcher.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.