Buckets:
| <meta charset="utf-8" /><meta name="hf:doc:metadata" content="{"title":"GR00T Policy","local":"gr00t-policy","sections":[{"title":"Model Overview","local":"model-overview","sections":[],"depth":2},{"title":"Installation Requirements","local":"installation-requirements","sections":[],"depth":2},{"title":"Usage","local":"usage","sections":[],"depth":2},{"title":"Training","local":"training","sections":[{"title":"Training Command Example","local":"training-command-example","sections":[],"depth":3}],"depth":2},{"title":"Performance Results","local":"performance-results","sections":[{"title":"LIBERO Benchmark Results","local":"libero-benchmark-results","sections":[],"depth":3},{"title":"Train on LIBERO","local":"train-on-libero","sections":[],"depth":3},{"title":"GR00T N1.7 LIBERO Results","local":"gr00t-n17-libero-results","sections":[],"depth":3},{"title":"Evaluate in your hardware setup","local":"evaluate-in-your-hardware-setup","sections":[],"depth":3}],"depth":2},{"title":"License","local":"license","sections":[],"depth":2}],"depth":1}"/> | |
| <link href="/docs/lerobot/main/en/_app/immutable/entry/start.BigjVlyv.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/xA_erHoZ.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/BeOBUSJC.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/entry/app.wSiz0M_s.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/DqTJsk7W.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/BwNHWMUY.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/DsnmJJEf.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/BboA8w9n.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/nodes/0.DCYzYRwi.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/BUzkCu0d.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/nodes/23.DNAomACP.js" rel="modulepreload"> | |
| <link href="/docs/lerobot/main/en/_app/immutable/chunks/DBfi0TBS.js" rel="modulepreload"> | |
| <!--nyssdy--><meta name="hf:doc:metadata" content="{"title":"GR00T Policy","local":"gr00t-policy","sections":[{"title":"Model Overview","local":"model-overview","sections":[],"depth":2},{"title":"Installation Requirements","local":"installation-requirements","sections":[],"depth":2},{"title":"Usage","local":"usage","sections":[],"depth":2},{"title":"Training","local":"training","sections":[{"title":"Training Command Example","local":"training-command-example","sections":[],"depth":3}],"depth":2},{"title":"Performance Results","local":"performance-results","sections":[{"title":"LIBERO Benchmark Results","local":"libero-benchmark-results","sections":[],"depth":3},{"title":"Train on LIBERO","local":"train-on-libero","sections":[],"depth":3},{"title":"GR00T N1.7 LIBERO Results","local":"gr00t-n17-libero-results","sections":[],"depth":3},{"title":"Evaluate in your hardware setup","local":"evaluate-in-your-hardware-setup","sections":[],"depth":3}],"depth":2},{"title":"License","local":"license","sections":[],"depth":2}],"depth":1}"/><!----> | |
| <link href="/docs/lerobot/main/en/_app/immutable/assets/0.tn0RQdqM.css" rel="modulepreload"> <!--[--><!--[0--><!--[--><!--[0--><!--[--><p></p> <div class="items-center shrink-0 min-w-[100px] max-sm:min-w-[50px] justify-end ml-auto flex" style="float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"><div class="inline-flex rounded-md max-sm:rounded-sm"><button class="inline-flex items-center gap-1 h-7 max-sm:h-7 px-2 max-sm:px-1.5 text-sm font-medium text-gray-800 border border-r-0 rounded-l-md max-sm:rounded-l-sm border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0 hover:text-gray-800 dark:hover:text-gray-200"><svg class="sm:size-3.5 size-3" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----></span> <span>Copy page</span></button> <button class="inline-flex items-center justify-center w-6 max-sm:w-5 h-7 max-sm:h-7 disabled:pointer-events-none text-sm text-gray-500 hover:text-gray-700 dark:hover:text-white rounded-r-md max-sm:rounded-r-sm border border-l transition border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-haspopup="menu" aria-expanded="false" aria-label="Open copy menu"><svg class="transition-transform text-gray-400 overflow-visible sm:size-3.5 size-3 rotate-0" width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg><!----></button></div> <!--[-1--><!--]--></div><!----> <!--[0--><h1 class="relative group"><a id="gr00t-policy" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#gr00t-policy"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>GR00T Policy</span></h1><!--]--><!----> <p>GR00T is an NVIDIA foundation model family for generalized humanoid robot reasoning and skills. It is a cross-embodiment policy that accepts multimodal input, including language, images, and proprioception, to perform manipulation tasks in diverse environments.</p> <p>LeRobot integrates GR00T N1.7 through the <code>groot</code> policy type.</p> <blockquote class="warning"><p><strong>Breaking change:</strong> GR00T N1.5 support was removed from LeRobot, and current releases support GR00T N1.7 only. N1.5 checkpoints and configs are rejected with a migration note. To keep using an N1.5 checkpoint, pin the last release that supports it: <code>pip install 'lerobot==0.5.1'</code>. To use the current release, migrate to GR00T N1.7 (base model <a href="https://huggingface.co/nvidia/GR00T-N1.7-3B" rel="nofollow"><code>nvidia/GR00T-N1.7-3B</code></a>).</p></blockquote> <!--[1--><h2 class="relative group"><a id="model-overview" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#model-overview"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Model Overview</span></h2><!--]--><!----> <p>GR00T N1.7 uses a Cosmos-Reason2/Qwen3-VL backbone and provides checkpoints for SimplerEnv, DROID, and LIBERO.</p> <p>Developers and researchers can post-train GR00T with their own real or synthetic data to adapt it for specific humanoid robots or tasks.</p> <p>GR00T uses pre-trained vision and language encoders with a flow matching action transformer to model a chunk of actions conditioned on vision, language, and proprioception.</p> <img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/lerobot/lerobot-groot-paper1%20(1).png" alt="An overview of GR00T" width="80%"/> <p>Its strong performance comes from being trained on an expansive and diverse humanoid dataset, which includes:</p> <ul><li>Real captured data from robots.</li> <li>Synthetic data generated using NVIDIA Isaac GR00T Blueprint.</li> <li>Internet-scale video data.</li></ul> <p>This approach allows the model to be highly adaptable through post-training for specific embodiments, tasks, and environments.</p> <!--[1--><h2 class="relative group"><a id="installation-requirements" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#installation-requirements"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Installation Requirements</span></h2><!--]--><!----> <p>GR00T is intended for NVIDIA GPU-accelerated systems. Install LeRobot with the GR00T extra:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!---->pip install <span class="hljs-string">"lerobot[groot]"</span><!----></pre></div><!----> <p>For a source checkout:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!---->pip install -e <span class="hljs-string">".[groot]"</span><!----></pre></div><!----> <!--[1--><h2 class="relative group"><a id="usage" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#usage"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Usage</span></h2><!--]--><!----> <p>To use GR00T N1.7:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!---->--policy.type=groot<!----></pre></div><!----> <!--[1--><h2 class="relative group"><a id="training" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#training"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Training</span></h2><!--]--><!----> <!--[2--><h3 class="relative group"><a id="training-command-example" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#training-command-example"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Training Command Example</span></h3><!--]--><!----> <p>Here’s a complete training command for finetuning the base GR00T model on your own dataset:</p> <p>This command is using the <code>new_embodiment</code> flag, which is used for the SO-101 robot, <a href="https://github.com/NVIDIA/Isaac-GR00T/blob/main/getting_started/policy.md#--embodiment-tag" rel="nofollow">read more about how GR00T handles different embodiments.</a>.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!----><span class="hljs-comment"># install extra deps for training</span> | |
| pip install <span class="hljs-string">"lerobot[training]"</span> | |
| hf auth login | |
| wandb login | |
| <span class="hljs-built_in">export</span> DATASET_NAME=your_data_set | |
| <span class="hljs-built_in">export</span> HF_USER=your_hf_username | |
| <span class="hljs-built_in">export</span> DATASET=<span class="hljs-variable">$HF_USER</span>/<span class="hljs-variable">$DATASET_NAME</span> | |
| <span class="hljs-built_in">export</span> REPO_ID=<span class="hljs-string">"<span class="hljs-variable">${DATASET}</span>_GR00T17"</span> <span class="hljs-comment">#this is the model that will be uploaded to huggingface</span> | |
| <span class="hljs-built_in">export</span> OUTPUT_DIR=outputs/train/<span class="hljs-variable">$REPO_ID</span> | |
| lerobot-train \ | |
| --dataset.repo_id=<span class="hljs-variable">$DATASET</span> \ | |
| --dataset.image_transforms.enable=<span class="hljs-literal">true</span> \ | |
| --policy.type=groot \ | |
| --policy.device=cuda \ | |
| --policy.base_model_path=nvidia/GR00T-N1.7-3B \ | |
| --policy.embodiment_tag=new_embodiment \ | |
| --policy.chunk_size=16 \ | |
| --policy.n_action_steps=16 \ | |
| --policy.use_relative_actions=<span class="hljs-literal">true</span> \ | |
| --policy.relative_exclude_joints=<span class="hljs-string">'["gripper"]'</span> \ | |
| --policy.use_bf16=<span class="hljs-literal">true</span> \ | |
| --policy.push_to_hub=<span class="hljs-literal">true</span> \ | |
| --policy.repo_id=<span class="hljs-variable">$REPO_ID</span> \ | |
| --seed=42 \ | |
| --batch_size=64 \ | |
| --steps=20000 \ | |
| --save_checkpoint=<span class="hljs-literal">true</span> \ | |
| --save_freq=5000 \ | |
| --use_policy_training_preset=<span class="hljs-literal">true</span> \ | |
| --env_eval_freq=0 \ | |
| --eval_steps=0 \ | |
| --log_freq=10 \ | |
| --output_dir=<span class="hljs-variable">$OUTPUT_DIR</span> \ | |
| --job_name=<span class="hljs-variable">$DATASET</span> \ | |
| --wandb.enable=<span class="hljs-literal">true</span> \ | |
| --wandb.disable_artifact=<span class="hljs-literal">true</span> | |
| <!----></pre></div><!----> <!--[1--><h2 class="relative group"><a id="performance-results" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#performance-results"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Performance Results</span></h2><!--]--><!----> <!--[2--><h3 class="relative group"><a id="libero-benchmark-results" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#libero-benchmark-results"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>LIBERO Benchmark Results</span></h3><!--]--><!----> <blockquote class="note"><p>Follow the <a href="./libero">LIBERO</a> setup instructions before running <code>lerobot-eval</code>.</p></blockquote> <p>GR00T N1.7 has demonstrated strong performance on the LIBERO benchmark suite. To reproduce LeRobot results, follow the instructions in the <a href="./libero">LIBERO</a> section.</p> <!--[2--><h3 class="relative group"><a id="train-on-libero" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#train-on-libero"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Train on LIBERO</span></h3><!--]--><!----> <p>Example training command for a LIBERO suite (here <code>libero_spatial</code>):</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!---->IMAGE_TRANSFORMS=<span class="hljs-string">'{ | |
| "brightness": {"weight": 1.0, "type": "ColorJitter", "kwargs": {"brightness": [0.7, 1.3]}}, | |
| "contrast": {"weight": 1.0, "type": "ColorJitter", "kwargs": {"contrast": [0.6, 1.4]}}, | |
| "saturation": {"weight": 1.0, "type": "ColorJitter", "kwargs": {"saturation": [0.5, 1.5]}}, | |
| "hue": {"weight": 1.0, "type": "ColorJitter", "kwargs": {"hue": [-0.08, 0.08]}} | |
| }'</span> | |
| lerobot-train \ | |
| --dataset.repo_id=IPEC-COMMUNITY/libero_spatial_no_noops_1.0.0_lerobot \ | |
| --dataset.root=/datasets/libero_spatial \ | |
| --dataset.revision=main \ | |
| --dataset.video_backend=pyav \ | |
| --dataset.image_transforms.enable=<span class="hljs-literal">true</span> \ | |
| --dataset.image_transforms.max_num_transforms=4 \ | |
| --dataset.image_transforms.tfs=<span class="hljs-string">"<span class="hljs-variable">$IMAGE_TRANSFORMS</span>"</span> \ | |
| --policy.type=groot \ | |
| --policy.base_model_path=nvidia/GR00T-N1.7-3B \ | |
| --policy.embodiment_tag=libero_sim \ | |
| --policy.push_to_hub=<span class="hljs-literal">false</span> \ | |
| --policy.use_relative_actions=<span class="hljs-literal">false</span> \ | |
| --policy.max_steps=20000 \ | |
| --batch_size=320 \ | |
| --steps=20000 \ | |
| --save_freq=2000 \ | |
| --env_eval_freq=0 \ | |
| --eval_steps=0 \ | |
| --log_freq=10 \ | |
| --wandb.enable=<span class="hljs-literal">true</span> \ | |
| --wandb.project=lerobot \ | |
| --wandb.mode=online \ | |
| --wandb.disable_artifact=<span class="hljs-literal">true</span> \ | |
| --num_workers=4 \ | |
| --prefetch_factor=2 \ | |
| --persistent_workers=<span class="hljs-literal">true</span> \ | |
| --output_dir=<span class="hljs-variable">$OUTPUT_DIR</span> \ | |
| --job_name=<span class="hljs-variable">$JOB_NAME</span><!----></pre></div><!----> <p>This will follow the recipe found <a href="https://github.com/NVIDIA/Isaac-GR00T/blob/main/examples/LIBERO/README.md" rel="nofollow">here</a>.</p> <!--[2--><h3 class="relative group"><a id="gr00t-n17-libero-results" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#gr00t-n17-libero-results"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>GR00T N1.7 LIBERO Results</span></h3><!--]--><!----> <p>Preliminary LeRobot integration results (GR00T-LeRobot, <code>eval.n_episodes >= 50</code> per suite):</p> <table><thead><tr><th>Suite</th><th align="right">Success rate</th><th>Checkpoint</th></tr></thead><tbody><tr><td>LIBERO Spatial</td><td align="right">95%</td><td><a href="https://huggingface.co/nvidia/gr00t17-lerobot-libero_spatial-640" rel="nofollow">nvidia/gr00t17-lerobot-libero_spatial-640</a></td></tr><tr><td>LIBERO Object</td><td align="right">100%</td><td><a href="https://huggingface.co/nvidia/gr00t17-lerobot-libero_object-640" rel="nofollow">nvidia/gr00t17-lerobot-libero_object-640</a></td></tr><tr><td>LIBERO Goal</td><td align="right">98%</td><td><a href="https://huggingface.co/nvidia/gr00t17-lerobot-libero_goal-640" rel="nofollow">nvidia/gr00t17-lerobot-libero_goal-640</a></td></tr><tr><td>LIBERO 10 (Long)</td><td align="right">93%</td><td><a href="https://huggingface.co/nvidia/gr00t17-lerobot-libero_10-640" rel="nofollow">nvidia/gr00t17-lerobot-libero_10-640</a></td></tr><tr><td><strong>Average</strong></td><td align="right"><strong>96.5%</strong></td><td></td></tr></tbody></table> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!----><span class="hljs-built_in">export</span> MODEL_ID=your_trained_model_on_huggingface | |
| lerobot-eval \ | |
| --policy.type=groot \ | |
| --policy.base_model_path=<span class="hljs-variable">$MODEL_ID</span> \ | |
| --policy.embodiment_tag=libero_sim \ | |
| --env.type=libero \ | |
| --env.task=libero_spatial \ | |
| --eval.n_episodes=50<!----></pre></div><!----> <p>Use <code>eval.n_episodes >= 50</code> per suite when reporting success rates.</p> <!--[2--><h3 class="relative group"><a id="evaluate-in-your-hardware-setup" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#evaluate-in-your-hardware-setup"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>Evaluate in your hardware setup</span></h3><!--]--><!----> <p>Once you have trained your model using your parameters you can run inference in your downstream task. Follow the instructions in <a href="./inference">Policy Deployment (lerobot-rollout)</a>. For example:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> Copied</div><!----></button><!----></div> <pre class="language-bash "><!----><span class="hljs-comment"># install extra deps for roullout and real hardware</span> | |
| pip install <span class="hljs-string">"lerobot[feetech,viz]"</span> | |
| <span class="hljs-built_in">export</span> MODEL_ID=your_trained_model_on_huggingface | |
| <span class="hljs-comment"># make sure that camera index matches your setup!</span> | |
| <span class="hljs-comment"># find index using `uv run lerobot-find-cameras opencv`</span> | |
| WRIST_CAM=<span class="hljs-string">'wrist: {type: opencv, index_or_path: 2, width: 640, height: 480, fps: 30, fourcc: "MJPG"}'</span> | |
| FRONT_CAM=<span class="hljs-string">'front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30, fourcc: "MJPG"}'</span> | |
| <span class="hljs-built_in">export</span> ROBOT_CAMERAS=<span class="hljs-string">"{ <span class="hljs-variable">$WRIST_CAM</span>, <span class="hljs-variable">$FRONT_CAM</span> }"</span> | |
| <span class="hljs-built_in">export</span> ROBOT_ID=follower_robot | |
| <span class="hljs-built_in">export</span> ROBOT_PORT=/dev/ttyACM0 | |
| uv run lerobot-rollout \ | |
| --strategy.type=base \ | |
| --policy.path=<span class="hljs-variable">$MODEL_ID</span> \ | |
| --policy.base_model_path=nvidia/GR00T-N1.7-3B \ | |
| --policy.n_action_steps=8 \ | |
| --robot.type=so101_follower \ | |
| --robot.port=<span class="hljs-variable">$ROBOT_PORT</span> \ | |
| --robot.id=<span class="hljs-variable">$ROBOT_ID</span> \ | |
| --robot.cameras=<span class="hljs-string">"<span class="hljs-variable">$ROBOT_CAMERAS</span>"</span> \ | |
| --task=<span class="hljs-string">"place the vial in the rack"</span> \ | |
| --duration=60 \ | |
| --device=cuda \ | |
| --display_data=<span class="hljs-literal">true</span> \ | |
| --inference.type=rtc \ | |
| --inference.rtc.enabled=True \ <span class="hljs-comment"># set to False if it causes inference instability</span> | |
| --inference.rtc.execution_horizon=8 \ | |
| --inference.queue_threshold=0<!----></pre></div><!----> <blockquote class="note"><p>Value of <code>inference.queue_threshold</code> should not exceed 5 to ensure stable inference.</p></blockquote> <!--[1--><h2 class="relative group"><a id="license" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#license"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span>License</span></h2><!--]--><!----> <p>GR00T N1.7 is released under the <a href="https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-open-model-license/" rel="nofollow">NVIDIA Open Model License Agreement</a>.</p> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/lerobot/blob/main/docs/source/groot.mdx" target="_blank"><svg class="mr-1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M31,16l-7,7l-1.41-1.41L28.17,16l-5.58-5.59L24,9l7,7z"></path><path d="M1,16l7-7l1.41,1.41L3.83,16l5.58,5.59L8,23l-7-7z"></path><path d="M12.419,25.484L17.639,6.552l1.932,0.518L14.351,26.002z"></path></svg><!----> <span><span class="underline">Update</span> on GitHub</span></a><!----> <p></p><!--]--><!----><!--]--><!--]--><!--]--> <!--[-1--><!--]--><!--]--> | |
| <script> | |
| { | |
| __sveltekit_1ndbhru = { | |
| base: "/docs/lerobot/main/en", | |
| assets: "/docs/lerobot/main/en" | |
| }; | |
| const element = document.currentScript.parentElement; | |
| Promise.all([ | |
| import("/docs/lerobot/main/en/_app/immutable/entry/start.BigjVlyv.js"), | |
| import("/docs/lerobot/main/en/_app/immutable/entry/app.wSiz0M_s.js") | |
| ]).then(([kit, app]) => { | |
| kit.start(app, element, { | |
| node_ids: [0, 23], | |
| data: [null,null], | |
| form: null, | |
| error: null | |
| }); | |
| }); | |
| } | |
| </script> | |
Xet Storage Details
- Size:
- 40.9 kB
- Xet hash:
- 02a781e04cac6eb2230111d16610f56a3eb3990790c2473c8f7a7437bc4f4d78
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.