cloudwalk-research/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1
Grab-Bottle (right hand) - DP-resampled 3 mm/frame + cycle removal LeRobot v2.1 dataset for the Unitree G1 right-hand bottle-grab task. Extends the DP-resampled variant by automatically detecting and removing return cycles in wrist-space - segments where the arm travels away from a point and then returns to (approximately) the same position. Such cycles teach the policy to backtrack rather than commit to a goal-directed motion. No fine-tune has been produced from this variant… See the full description on the dataset page: https://huggingface.co/datasets/cloudwalk-research/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1.
Grab-Bottle (right hand) - DP-resampled 3 mm/frame + cycle removal
LeRobot v2.1 dataset for the Unitree G1 right-hand bottle-grab task. Extends the DP-resampled variant by automatically detecting and removing return cycles in wrist-space - segments where the arm travels away from a point and then returns to (approximately) the same position. Such cycles teach the policy to backtrack rather than commit to a goal-directed motion. No fine-tune has been produced from this variant yet. A `v8` model card exists as a placeholder — training pending, no weights published.
Each detected cycle is cut out of the episode. The remaining contiguous portions are emitted as independent sub-episodes. The region around the grasp point is always protected.
Quick facts
Collection setup
Same data collection as the 105-ep source set and the worst-positions 115-ep set
- see those cards for the full setup. In brief:
- Robot: Unitree G1 (29-DoF body) + Inspire FTP hands (7-DoF/hand: 6 finger joints + 1 grip pad, via InspireFTPGripMapper)
- Whole-body controller: SONIC WBC
- Teleoperation: PICO 4 Ultra (headset + 2 controllers, 3-point VR tracking) + 2 ankle trackers -> SMPL retargeting
- Camera: Intel RealSense D435I on the G1 head; Hand control: grip buttons close the Inspire FTP right hand during the grasp
- Task prompt: the teleop demonstrations were collected under the task prompt "grab the bottle"; the same prompt is used to invoke the policy at inference (see the model cards' "Prompt conditioning" caveat).
Source datasets
Action and state layout
This is a GR00T + SONIC dataset, not a flat-joint-vector dataset. The policy action is emitted as a 64-D latent `motion_token` (decoded by the SONIC whole-body controller into whole-body joint commands) plus 7-D left/right hand-joint targets - it only produces motion through the SONIC WBC + ZMQ deploy pipeline, not on a bare G1.
See meta/info.json for the full feature schema, including teleop.* retargeting fields and observation.* base state.
Curation method
Step 1 - DP resampling
Identical to the base dataset. Wrist XYZ from observation.eef_state[7:10] (world frame). The DP solver keeps frames where consecutive wrist displacement is ~3 mm/frame.
Step 2 - cycle detection
Operates entirely in DP-frame space (duration is counted in kept frames, not original frames).
For each DP-frame starting point a, find the future DP frame b with the minimum XYZ return distance (epsilon) among all frames at least min_dur kept-frames away. Score the candidate: score = epsilon / dur^k.
Candidates are filtered by hard caps and then greedily selected in score order (best first, non-overlapping).
Score formula: score = epsilon / dur^2
- Lower = better (tight return + long duration).
dur_exp=2ensures that when a half-cycle and a full cycle overlap, the full cycle wins if itsdur^2advantage outweighs its larger epsilon.
Step 3 - episode splitting
Detected cycles are cut out. The contiguous portions between cycles become separate sub-episodes. Sub-episodes shorter than 40 DP-kept frames are discarded.
Grasp-protection rule: the last sub-episode is never discarded if it contains the grasp frame, regardless of length. The grasp is the reward signal; losing it destroys training value. This rule was triggered 0 times in this run (the min-frames filter discards pre-grasp segments, not post-grasp ones).
What this dataset is - and is not
- Is: the DP-resample + cycle-removal variant - the DP-only baseline with return-cycle segments cut out and the survivors split into sub-episodes.
- Is: a curation experiment - no fine-tune has been produced from it yet. The fine-tuned sibling is v7 (from the DP-only baseline).
- Is not: zero-wandering curated; it replaces wandering detection with cycle detection. It is not a superset of the DP-only baseline (cycles are removed, not retained).
- Right-hand only, single camera, single task - see caveats below.
How to download
from huggingface_hub import snapshot_download
snapshot_download(
repo_id="cloudwalk-research/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1",
repo_type="dataset",
local_dir="data/real/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1",
)How to load
from lerobot.common.datasets.lerobot_dataset import LeRobotDataset
ds = LeRobotDataset(
"gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1",
repo_id="cloudwalk-research/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1",
)
print(ds.num_episodes, ds.num_frames, ds.fps)How to use for fine-tuning & inference
No fine-tune has been produced from this variant - it is a curation experiment stacking cycle removal on the DP-only baseline (that baseline trained v7). To fine-tune this variant yourself, use the Isaac-GR00T stack on NVIDIA B200 GPUs, then serve with:
python -m gr00t.eval.run_gr00t_server \
--model-path <checkpoint-dir> \
--embodiment-tag UNITREE_G1_SONIC \
--device cuda:0 --host 0.0.0.0 --port 5550The server must be launched with the UNITREE_G1_SONIC embodiment tag used in training. Closed-loop control of the G1 is driven by the SONIC WBC in GR00T-WholeBodyControl; see the NVlabs VLA inference tutorial.
Caveats
- Right-hand-only, single task, single camera. Only the head
ego_viewwas recorded - no wrist cameras. Left-hand and locomotion dims reflect the largely stationary demonstrations. - Curated, not source. Episodes are clean sub-segments (cycles cut out), so "episode length" is short (~118 f). Use the sources for the un-segmented distribution.
- No fine-tune yet. A curation experiment; the DP-only baseline trained v7. A `v8` model card exists as a placeholder (training pending, no weights).
- Empty-scene episodes kept as-is. ds2 eps 95-114 (no bottle, no movement) are included raw.
- Deployment needs the SONIC stack. Actions are
motion_token+ hand joints for theUNITREE_G1_SONICembodiment; they only produce motion through the SONIC WBC + ZMQ deploy pipeline, not on a bare G1.
Lineage
This set is the DP-resample + cycle-removal variant. Its direct sibling is the DP-only baseline (same DP resampling, no cycle removal -> v7). It shares its two sources with radius-20-merged but uses a different method. The full family is in the table below.
Attribution
Collected at the CloudWalk Robotics Lab (CW-RL) using PICO 4 Ultra teleoperation on the Unitree G1 with the SONIC whole-body controller, then curated with DP resampling + wrist-space cycle removal. Stored in the LeRobot v2.1 format.
Citation
@misc{cwrl_grab_bottle_speedup_3mm_cycle_removed_v1_2026,
title = {GR00T G1 "grab the bottle" --- right-hand DP-resampled + cycle-removal curation (405 episodes, SONIC WBC)},
author = {{CloudWalk Robotics Lab}},
year = {2026},
howpublished = {Hugging Face dataset repository},
url = {https://huggingface.co/datasets/cloudwalk-research/gr00t-g1-grab-bottle-right-hand-speedup-3mm-cycle-removed-v1}
}
@article{gr00t_n1_2025,
title = {{GR00T N1}: An Open Foundation Model for Generalist Humanoid Robots},
author = {{NVIDIA}},
year = {2025},
eprint = {2503.14734},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2503.14734}
}
@article{sonic_2025,
title = {{SONIC}: Whole-Body Controller for Humanoid Robot Teleoperation},
year = {2025},
eprint = {2511.07820},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2511.07820}
}
@software{lerobot2024,
title = {{LeRobot}: State-of-the-art Machine Learning for Real-World Robotics in {PyTorch}},
author = {{Hugging Face}},
url = {https://github.com/huggingface/lerobot},
year = {2024}
}License
Released under Apache-2.0 by CloudWalk Research. Demonstrations were collected on hardware owned by CloudWalk; the SONIC WBC and GR00T stacks retain their respective upstream licenses. Research preview - closed-loop deployment on a physical humanoid requires human oversight.
