Skip to main content
The get_data function provides access to test data and model files, handling Git LFS downloads automatically.

Basic Usage

How It Works

output
  1. Checks if data/{name} already exists locally
  2. If missing, pulls the .tar.gz archive from Git LFS
  3. Decompresses the archive to data/
  4. Returns the Path to the extracted file/directory

Common Patterns

Loading Images

Loading Model Checkpoints

skip

Loading Recorded Data for Replay

skip

Loading Point Clouds

skip

Data Directory Structure

Data files live in data/ at the repo root. Large files are stored in data/.lfs/ as .tar.gz archives tracked by Git LFS.

Adding New Data

Small Files (< 1MB)

Commit directly to data/:
skip

Large Files or Directories

Use the LFS workflow:
skip
The lfs_push script:
  1. Compresses data/my_dataset/data/.lfs/my_dataset.tar.gz
  2. Uploads to Git LFS
  3. Stages the compressed file
A pre-commit hook (bin/hooks/lfs_check) blocks commits if you have uncompressed directories in data/ without a corresponding .tar.gz in data/.lfs/.

Location Resolution

When running from:
  • Git repo: Uses {repo}/data/
  • Installed package: Clones repo to user data dir:
    • Linux: ~/.local/share/dimos/repo/data/
    • macOS: ~/Library/Application Support/dimos/repo/data/
    • Fallback: /tmp/dimos/repo/data/

Docs media assets

Binary media displayed by the docs (screenshots, plots, GIFs) is LFS-tracked here under docs/**/assets/, but Mintlify deploys the docs site without fetching Git LFS. So content behind those LFS pointers is hosted as plain git blobs in dimensionalOS/dimos-docs-assets (mirroring the docs tree, minus the docs/ prefix), and docs pages reference that copy with an absolute URL:
Small text SVGs emitted by pikchr and to_svg are exempt: they are committed here as plain text and referenced relatively.