Skip to content

Commit 978e28a

Browse files
Initial commit: QuantVLA GR00T (DuQuant W4A8 + ATM + OHB)
0 parents  commit 978e28a

165 files changed

Lines changed: 335659 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.safetensors filter=lfs diff=lfs merge=lfs -text
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: 🐛 Bug Report
2+
description: Create a report to help us reproduce and fix the bug
3+
labels: 'bug'
4+
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: >
9+
#### Before submitting a bug, please make sure the issue hasn't been already addressed by searching through [the existing and past issues](https://github.com/NVIDIA/Isaac-GR00T/issues?q=is%3Aissue+sort%3Acreated-desc+).
10+
- type: textarea
11+
attributes:
12+
label: 🐛 Describe the bug
13+
description: |
14+
Please provide a clear and concise description of what the bug is.
15+
16+
If relevant, add a minimal example so that we can reproduce the error by running the code. It is very important for the snippet to be as succinct (minimal) as possible, so please take time to trim down any irrelevant code to help us debug efficiently. We are going to copy-paste your code and we expect to get the same result as you did: avoid any external data, and include the relevant imports, etc. For example:
17+
18+
```python
19+
# All necessary imports at the beginning
20+
import gr00t
21+
22+
# A succinct reproducing example trimmed down to the essential parts:
23+
assert False is True, "Oh no!"
24+
```
25+
26+
If the code is too long (hopefully, it isn't), feel free to put it in a public gist and link it in the issue: https://gist.github.com.
27+
28+
Please also paste or describe the results you observe instead of the expected results. If you observe an error, please paste the error message including the **full** traceback of the exception. It may be relevant to wrap error messages in ```` ```triple quotes blocks``` ````.
29+
placeholder: |
30+
A clear and concise description of what the bug is.
31+
validations:
32+
required: true
33+
- type: textarea
34+
attributes:
35+
label: Versions
36+
description: |
37+
Please run the following and paste the output below.
38+
```sh
39+
python --version && pip freeze
40+
```
41+
validations:
42+
required: true
43+
- type: markdown
44+
attributes:
45+
value: >
46+
Thanks for contributing 🎉!
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: 📚 Documentation
2+
description: Report an issue related to https://github.com/NVIDIA/Isaac-GR00T
3+
labels: 'documentation'
4+
5+
body:
6+
- type: textarea
7+
attributes:
8+
label: 📚 The doc issue
9+
description: >
10+
A clear and concise description of what content in https://github.com/NVIDIA/Isaac-GR00T is an issue.
11+
validations:
12+
required: true
13+
- type: textarea
14+
attributes:
15+
label: Suggest a potential alternative/fix
16+
description: >
17+
Tell us how we could improve the documentation in this regard.
18+
- type: markdown
19+
attributes:
20+
value: >
21+
Thanks for contributing 🎉!
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: 🚀 Feature request
2+
description: Submit a proposal/request for a new feature
3+
labels: 'feature request'
4+
5+
body:
6+
- type: textarea
7+
attributes:
8+
label: 🚀 The feature, motivation and pitch
9+
description: >
10+
A clear and concise description of the feature proposal. Please outline the motivation for the proposal. Is your feature request related to a specific problem? e.g., *"I'm working on X and would like Y to be possible"*. If this is related to another GitHub issue, please link here too.
11+
validations:
12+
required: true
13+
- type: textarea
14+
attributes:
15+
label: Alternatives
16+
description: >
17+
A description of any alternative solutions or features you've considered, if any.
18+
- type: textarea
19+
attributes:
20+
label: Additional context
21+
description: >
22+
Add any other context or screenshots about the feature request.
23+
- type: markdown
24+
attributes:
25+
value: >
26+
Thanks for contributing 🎉!
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Python virtualenv
2+
description: Set up a Python virtual environment with caching
3+
inputs:
4+
python-version:
5+
description: The Python version to use
6+
required: true
7+
cache-prefix:
8+
description: Update this to invalidate the cache
9+
required: true
10+
default: v4
11+
runs:
12+
using: composite
13+
steps:
14+
- name: Setup Python
15+
uses: actions/setup-python@v4
16+
with:
17+
python-version: ${{ inputs.python-version }}
18+
19+
- shell: bash
20+
run: |
21+
# Install prerequisites.
22+
pip install --upgrade pip setuptools wheel virtualenv
23+
24+
- shell: bash
25+
run: |
26+
# Get the exact Python version to use in the cache key.
27+
echo "PYTHON_VERSION=$(python --version)" >> $GITHUB_ENV
28+
29+
- uses: actions/cache@v4
30+
id: virtualenv-cache
31+
with:
32+
path: .venv
33+
key: ${{ inputs.cache-prefix }}-${{ runner.os }}-${{ env.PYTHON_VERSION }}-${{ hashFiles('pyproject.toml') }}
34+
35+
- if: steps.virtualenv-cache.outputs.cache-hit != 'true'
36+
shell: bash
37+
run: |
38+
# Set up virtual environment without cache hit.
39+
test -d .venv || virtualenv -p $(which python) --copies --reset-app-data .venv
40+
. .venv/bin/activate
41+
pip install -e .[dev]
42+
43+
- if: steps.virtualenv-cache.outputs.cache-hit == 'true'
44+
shell: bash
45+
run: |
46+
# Set up virtual environment from cache hit.
47+
. .venv/bin/activate
48+
pip install --no-deps -e .[dev]
49+
50+
- shell: bash
51+
run: |
52+
# Show environment info.
53+
. .venv/bin/activate
54+
echo "✓ Installed $(python --version) virtual environment to $(which python)"
55+
echo "Packages:"
56+
pip freeze

.github/pull_request_template.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<!-- To ensure we can review your pull request promptly please complete this template entirely. -->
2+
3+
<!-- Please reference the issue number here. You can replace "Fixes" with "Closes" if it makes more sense. -->
4+
Fixes #
5+
6+
Changes proposed in this pull request:
7+
<!-- Please list all changes/additions here. -->
8+
-
9+
10+
## Before submitting
11+
12+
<!-- Please complete this checklist BEFORE submitting your PR to speed along the review process. -->
13+
- [ ] I've read and followed all steps in the [Making a pull request](https://github.com/NVIDIA/Isaac-GR00T/blob/main/CONTRIBUTING.md#making-a-pull-request)
14+
section of the `CONTRIBUTING` docs.
15+
- [ ] I've updated or added any relevant docstrings.
16+
- [ ] If this PR fixes a bug, I've added a test that will fail without my fix.
17+
- [ ] If this PR adds a new feature, I've added tests that sufficiently cover my new functionality.

.github/workflows/main.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: Main
2+
3+
concurrency:
4+
group: ${{ github.workflow }}-${{ github.ref }}
5+
cancel-in-progress: true
6+
7+
on:
8+
pull_request:
9+
branches:
10+
- main
11+
push:
12+
branches:
13+
- main
14+
tags:
15+
- "v*.*.*"
16+
17+
env:
18+
# Change this to invalidate existing cache.
19+
CACHE_PREFIX: v4
20+
PYTHONPATH: ./
21+
22+
jobs:
23+
checks:
24+
name: Python ${{ matrix.python }} - ${{ matrix.task.name }}
25+
runs-on: [ubuntu-latest]
26+
timeout-minutes: 15
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
python: ["3.10"]
31+
task:
32+
- name: Test
33+
run: |
34+
pytest -v --color=yes tests/
35+
36+
include:
37+
- python: "3.10"
38+
task:
39+
name: Lint
40+
run: ruff check .
41+
42+
- python: "3.10"
43+
task:
44+
name: Style
45+
run: |
46+
isort --check .
47+
black --check .
48+
49+
steps:
50+
- uses: actions/checkout@v4
51+
with:
52+
lfs: true
53+
54+
- name: Pull LFS objects
55+
run: git lfs pull
56+
57+
- name: Setup Python environment
58+
uses: ./.github/actions/setup-venv
59+
with:
60+
python-version: ${{ matrix.python }}
61+
cache-prefix: ${{ env.CACHE_PREFIX }}
62+
63+
- name: ${{ matrix.task.name }}
64+
run: |
65+
. .venv/bin/activate
66+
${{ matrix.task.run }}
67+
68+
- name: Upload package distribution files
69+
if: matrix.task.name == 'Build'
70+
uses: actions/upload-artifact@v4
71+
with:
72+
name: package
73+
path: dist
74+
75+
- name: Clean up
76+
if: always()
77+
run: |
78+
. .venv/bin/activate
79+
pip uninstall -y gr00t

.gitignore

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# C extensions
2+
*.so
3+
4+
# Distribution / packaging
5+
.Python
6+
build/
7+
develop-eggs/
8+
dist/
9+
downloads/
10+
eggs/
11+
.eggs/
12+
lib/
13+
lib64/
14+
parts/
15+
sdist/
16+
var/
17+
wheels/
18+
share/python-wheels/
19+
*.egg-info/
20+
.installed.cfg
21+
*.egg
22+
MANIFEST
23+
24+
# build artifacts
25+
26+
.eggs/
27+
.mypy_cache
28+
*.egg-info/
29+
build/
30+
dist/
31+
pip-wheel-metadata/
32+
33+
34+
# dev tools
35+
36+
.envrc
37+
.python-version
38+
.idea
39+
.venv/
40+
.vscode/
41+
/*.iml
42+
pyrightconfig.json
43+
.ruff_cache/
44+
45+
# jupyter notebooks
46+
47+
.ipynb_checkpoints
48+
49+
50+
# miscellaneous
51+
52+
.cache/
53+
doc/_build/
54+
*.swp
55+
.DS_Store
56+
57+
58+
# python
59+
60+
*.pyc
61+
*.pyo
62+
__pycache__
63+
64+
65+
# testing and continuous integration
66+
67+
.coverage
68+
.pytest_cache/
69+
.benchmarks
70+
71+
# documentation build artifacts
72+
73+
docs/build
74+
site/
75+
76+
# The following ignores are from vila repository
77+
*.whl
78+
*_dev
79+
dev/
80+
# config.json
81+
eval_output/
82+
eval-result/
83+
hostfile
84+
core.*
85+
*.out
86+
captioner_bk/
87+
slurm-logs/
88+
captioner/
89+
hostfile
90+
*_dev.py
91+
*_dev.sh
92+
93+
94+
# Python
95+
__pycache__
96+
*.pyc
97+
*.egg-info
98+
dist
99+
100+
# Log
101+
*.log
102+
*.log.*
103+
104+
# Data
105+
!**/alpaca-data-conversation.json
106+
107+
# Editor
108+
.idea
109+
*.swp
110+
111+
# Other
112+
.DS_Store
113+
wandb
114+
115+
# Playground
116+
playground/
117+
118+
# Hydra
119+
.hydra/
120+
121+
# Data
122+
demo_data/gr00t-gr1-apple-to-shelf/
123+
tmp/
124+
output/
125+
126+
duquant*/
127+
rollout*/
128+
ohb_viz/
129+
smooth*/
130+
atm_viz*/
131+
ckpts*/
132+
media*/
133+
SimplerEnv/

0 commit comments

Comments
 (0)