get_data function provides access to test data and model files, handling Git LFS downloads automatically.
Basic Usage
How It Works
- Checks if
data/{name}already exists locally - If missing, pulls the
.tar.gzarchive from Git LFS - Decompresses the archive to
data/ - Returns the
Pathto 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 indata/ 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 todata/:
skip
Large Files or Directories
Use the LFS workflow:skip
lfs_push script:
- Compresses
data/my_dataset/→data/.lfs/my_dataset.tar.gz - Uploads to Git LFS
- Stages the compressed file
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/
- Linux:
Docs media assets
Binary media displayed by the docs (screenshots, plots, GIFs) is LFS-tracked here underdocs/**/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:
to_svg are exempt: they are committed here as plain text and referenced relatively.