import{s as Ze,n as De,o as Ne}from"../chunks/scheduler.eb244325.js";import{S as Fe,i as Oe,e as s,s as l,c as r,h as qe,a as o,d as i,b as a,f as Le,g as p,j as d,k as Ye,l as D,m as n,n as m,t as f,o as g,p as c}from"../chunks/index.3fe63ad3.js";import{C as Qe}from"../chunks/CopyLLMTxtMenu.08242e11.js";import{C as je}from"../chunks/CodeBlock.91baa5b4.js";import{H as u,E as Ke}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.234c3f85.js";function et(ke){let h,O,N,q,w,Q,T,K,b,Ae='π₀ is a <strong>Vision-Language-Action model for general robot control</strong>, from Physical Intelligence. The LeRobot implementation is adapted from their open source <a href="https://github.com/Physical-Intelligence/openpi" rel="nofollow">OpenPI</a> repository.',ee,y,te,v,Re='π₀ represents a breakthrough in robotics as the first general-purpose robot foundation model developed by <a href="https://www.physicalintelligence.company/blog/pi0" rel="nofollow">Physical Intelligence</a>. Unlike traditional robot programs that are narrow specialists programmed for repetitive motions, π₀ is designed to be a generalist policy that can understand visual inputs, interpret natural language instructions, and control a variety of different robots across diverse tasks.',ie,J,ne,M,Ue="As described by Physical Intelligence, while AI has achieved remarkable success in digital domains, from chess-playing to drug discovery, human intelligence still dramatically outpaces AI in the physical world. To paraphrase Moravec’s paradox, winning a game of chess represents an “easy” problem for AI, but folding a shirt or cleaning up a table requires solving some of the most difficult engineering problems ever conceived. π₀ represents a first step toward developing artificial physical intelligence that enables users to simply ask robots to perform any task they want, just like they can with large language models.",le,I,ae,_,Pe="π₀ combines several key innovations:",se,L,Be="<li><strong>Flow Matching</strong>: Uses a novel method to augment pre-trained VLMs with continuous action outputs via flow matching (a variant of diffusion models)</li> <li><strong>Cross-Embodiment Training</strong>: Trained on data from 8 distinct robot platforms including UR5e, Bimanual UR5e, Franka, Bimanual Trossen, Bimanual ARX, Mobile Trossen, and Mobile Fibocom</li> <li><strong>Internet-Scale Pre-training</strong>: Inherits semantic knowledge from a pre-trained 3B parameter Vision-Language Model</li> <li><strong>High-Frequency Control</strong>: Outputs motor commands at up to 50 Hz for real-time dexterous manipulation</li>",oe,C,re,$,Y,He='<p>Install LeRobot by following our <a href="./installation">Installation Guide</a>.</p>',Ce,x,Z,Ee="Install Pi0 dependencies by running:",xe,j,pe,k,me,A,Ge="π₀ is trained on the largest robot interaction dataset to date, combining three key data sources:",fe,R,Ve="<li><strong>Internet-Scale Pre-training</strong>: Vision-language data from the web for semantic understanding</li> <li><strong>Open X-Embodiment Dataset</strong>: Open-source robot manipulation datasets</li> <li><strong>Physical Intelligence Dataset</strong>: Large and diverse dataset of dexterous tasks across 8 distinct robots</li>",ge,U,ce,P,Xe="To use π₀ in LeRobot, specify the policy type as:",de,B,ue,H,he,E,Se="For training π₀, you can use the standard LeRobot training script with the appropriate configuration:",$e,G,we,V,Te,X,ze=`<li><strong><code>--policy.compile_model=true</code></strong>: Enables model compilation for faster training</li> <li><strong><code>--policy.gradient_checkpointing=true</code></strong>: Reduces memory usage significantly during training</li> <li><strong><code>--policy.dtype=bfloat16</code></strong>: Use mixed precision training for efficiency</li> <li><strong><code>--batch_size=32</code></strong>: Batch size for training, adapt this based on your GPU memory</li> <li><strong><code>--policy.pretrained_path=lerobot/pi0_base</code></strong>: The base π₀ model you want to finetune, options are:
<ul><li><a href="https://huggingface.co/lerobot/pi0_base" rel="nofollow">lerobot/pi0_base</a></li> <li><a href="https://huggingface.co/lerobot/pi0_libero" rel="nofollow">lerobot/pi0_libero</a> (specifically trained on the Libero dataset)</li></ul></li>`,be,S,ye,z,We='This model follows the <strong>Apache 2.0 License</strong>, consistent with the original <a href="https://github.com/Physical-Intelligence/openpi" rel="nofollow">OpenPI repository</a>.',ve,W,Je,F,Me;return w=new Qe({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),T=new u({props:{title:"π₀ (Pi0)",local:"π₀-pi0",headingTag:"h1"}}),y=new u({props:{title:"Model Overview",local:"model-overview",headingTag:"h2"}}),J=new u({props:{title:"The Vision for Physical Intelligence",local:"the-vision-for-physical-intelligence",headingTag:"h3"}}),I=new u({props:{title:"Architecture and Approach",local:"architecture-and-approach",headingTag:"h3"}}),C=new u({props:{title:"Installation Requirements",local:"installation-requirements",headingTag:"h2"}}),j=new je({props:{code:"cGlwJTIwaW5zdGFsbCUyMC1lJTIwJTIyLiU1QnBpJTVEJTIy",highlighted:'pip install -e <span class="hljs-string">&quot;.[pi]&quot;</span>',wrap:!1}}),k=new u({props:{title:"Training Data and Capabilities",local:"training-data-and-capabilities",headingTag:"h2"}}),U=new u({props:{title:"Usage",local:"usage",headingTag:"h2"}}),B=new je({props:{code:"cG9saWN5LnR5cGUlM0RwaTA=",highlighted:'policy.<span class="hljs-built_in">type</span>=pi0',wrap:!1}}),H=new u({props:{title:"Training",local:"training",headingTag:"h2"}}),G=new je({props:{code:"cHl0aG9uJTIwc3JjJTJGbGVyb2JvdCUyRnNjcmlwdHMlMkZsZXJvYm90X3RyYWluLnB5JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0LnJlcG9faWQlM0R5b3VyX2RhdGFzZXQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBvbGljeS50eXBlJTNEcGkwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTNELiUyRm91dHB1dHMlMkZwaTBfdHJhaW5pbmclMjAlNUMlMEElMjAlMjAlMjAlMjAtLWpvYl9uYW1lJTNEcGkwX3RyYWluaW5nJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wb2xpY3kucHJldHJhaW5lZF9wYXRoJTNEbGVyb2JvdCUyRnBpMF9iYXNlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wb2xpY3kucmVwb19pZCUzRHlvdXJfcmVwb19pZCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcG9saWN5LmNvbXBpbGVfbW9kZWwlM0R0cnVlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wb2xpY3kuZ3JhZGllbnRfY2hlY2twb2ludGluZyUzRHRydWUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBvbGljeS5kdHlwZSUzRGJmbG9hdDE2JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1zdGVwcyUzRDMwMDAlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBvbGljeS5kZXZpY2UlM0RjdWRhJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1iYXRjaF9zaXplJTNEMzI=",highlighted:`python src/lerobot/scripts/lerobot_train.py \\
    --dataset.repo_id=your_dataset \\
    --policy.type=pi0 \\
    --output_dir=./outputs/pi0_training \\
    --job_name=pi0_training \\
    --policy.pretrained_path=lerobot/pi0_base \\
    --policy.repo_id=your_repo_id \\
    --policy.compile_model=<span class="hljs-literal">true</span> \\
    --policy.gradient_checkpointing=<span class="hljs-literal">true</span> \\
    --policy.dtype=bfloat16 \\
    --steps=3000 \\
    --policy.device=cuda \\
    --batch_size=32`,wrap:!1}}),V=new u({props:{title:"Key Training Parameters",local:"key-training-parameters",headingTag:"h3"}}),S=new u({props:{title:"License",local:"license",headingTag:"h2"}}),W=new Ke({props:{source:"https://github.com/huggingface/lerobot/blob/main/docs/source/pi0.mdx"}}),{c(){h=s("meta"),O=l(),N=s("p"),q=l(),r(w.$$.fragment),Q=l(),r(T.$$.fragment),K=l(),b=s("p"),b.innerHTML=Ae,ee=l(),r(y.$$.fragment),te=l(),v=s("p"),v.innerHTML=Re,ie=l(),r(J.$$.fragment),ne=l(),M=s("p"),M.textContent=Ue,le=l(),r(I.$$.fragment),ae=l(),_=s("p"),_.textContent=Pe,se=l(),L=s("ul"),L.innerHTML=Be,oe=l(),r(C.$$.fragment),re=l(),$=s("ol"),Y=s("li"),Y.innerHTML=He,Ce=l(),x=s("li"),Z=s("p"),Z.textContent=Ee,xe=l(),r(j.$$.fragment),pe=l(),r(k.$$.fragment),me=l(),A=s("p"),A.textContent=Ge,fe=l(),R=s("ol"),R.innerHTML=Ve,ge=l(),r(U.$$.fragment),ce=l(),P=s("p"),P.textContent=Xe,de=l(),r(B.$$.fragment),ue=l(),r(H.$$.fragment),he=l(),E=s("p"),E.textContent=Se,$e=l(),r(G.$$.fragment),we=l(),r(V.$$.fragment),Te=l(),X=s("ul"),X.innerHTML=ze,be=l(),r(S.$$.fragment),ye=l(),z=s("p"),z.innerHTML=We,ve=l(),r(W.$$.fragment),Je=l(),F=s("p"),this.h()},l(e){const t=qe("svelte-u9bgzb",document.head);h=o(t,"META",{name:!0,content:!0}),t.forEach(i),O=a(e),N=o(e,"P",{}),Le(N).forEach(i),q=a(e),p(w.$$.fragment,e),Q=a(e),p(T.$$.fragment,e),K=a(e),b=o(e,"P",{"data-svelte-h":!0}),d(b)!=="svelte-99h03s"&&(b.innerHTML=Ae),ee=a(e),p(y.$$.fragment,e),te=a(e),v=o(e,"P",{"data-svelte-h":!0}),d(v)!=="svelte-k3gmsj"&&(v.innerHTML=Re),ie=a(e),p(J.$$.fragment,e),ne=a(e),M=o(e,"P",{"data-svelte-h":!0}),d(M)!=="svelte-1db52yk"&&(M.textContent=Ue),le=a(e),p(I.$$.fragment,e),ae=a(e),_=o(e,"P",{"data-svelte-h":!0}),d(_)!=="svelte-ovjk2v"&&(_.textContent=Pe),se=a(e),L=o(e,"UL",{"data-svelte-h":!0}),d(L)!=="svelte-jiesd4"&&(L.innerHTML=Be),oe=a(e),p(C.$$.fragment,e),re=a(e),$=o(e,"OL",{});var Ie=Le($);Y=o(Ie,"LI",{"data-svelte-h":!0}),d(Y)!=="svelte-19fosg9"&&(Y.innerHTML=He),Ce=a(Ie),x=o(Ie,"LI",{});var _e=Le(x);Z=o(_e,"P",{"data-svelte-h":!0}),d(Z)!=="svelte-xfhj0t"&&(Z.textContent=Ee),xe=a(_e),p(j.$$.fragment,_e),_e.forEach(i),Ie.forEach(i),pe=a(e),p(k.$$.fragment,e),me=a(e),A=o(e,"P",{"data-svelte-h":!0}),d(A)!=="svelte-ryh1sd"&&(A.textContent=Ge),fe=a(e),R=o(e,"OL",{"data-svelte-h":!0}),d(R)!=="svelte-1i19fvs"&&(R.innerHTML=Ve),ge=a(e),p(U.$$.fragment,e),ce=a(e),P=o(e,"P",{"data-svelte-h":!0}),d(P)!=="svelte-4bbizg"&&(P.textContent=Xe),de=a(e),p(B.$$.fragment,e),ue=a(e),p(H.$$.fragment,e),he=a(e),E=o(e,"P",{"data-svelte-h":!0}),d(E)!=="svelte-1ja7unj"&&(E.textContent=Se),$e=a(e),p(G.$$.fragment,e),we=a(e),p(V.$$.fragment,e),Te=a(e),X=o(e,"UL",{"data-svelte-h":!0}),d(X)!=="svelte-1sirz4"&&(X.innerHTML=ze),be=a(e),p(S.$$.fragment,e),ye=a(e),z=o(e,"P",{"data-svelte-h":!0}),d(z)!=="svelte-xy3pkj"&&(z.innerHTML=We),ve=a(e),p(W.$$.fragment,e),Je=a(e),F=o(e,"P",{}),Le(F).forEach(i),this.h()},h(){Ye(h,"name","hf:doc:metadata"),Ye(h,"content",tt)},m(e,t){D(document.head,h),n(e,O,t),n(e,N,t),n(e,q,t),m(w,e,t),n(e,Q,t),m(T,e,t),n(e,K,t),n(e,b,t),n(e,ee,t),m(y,e,t),n(e,te,t),n(e,v,t),n(e,ie,t),m(J,e,t),n(e,ne,t),n(e,M,t),n(e,le,t),m(I,e,t),n(e,ae,t),n(e,_,t),n(e,se,t),n(e,L,t),n(e,oe,t),m(C,e,t),n(e,re,t),n(e,$,t),D($,Y),D($,Ce),D($,x),D(x,Z),D(x,xe),m(j,x,null),n(e,pe,t),m(k,e,t),n(e,me,t),n(e,A,t),n(e,fe,t),n(e,R,t),n(e,ge,t),m(U,e,t),n(e,ce,t),n(e,P,t),n(e,de,t),m(B,e,t),n(e,ue,t),m(H,e,t),n(e,he,t),n(e,E,t),n(e,$e,t),m(G,e,t),n(e,we,t),m(V,e,t),n(e,Te,t),n(e,X,t),n(e,be,t),m(S,e,t),n(e,ye,t),n(e,z,t),n(e,ve,t),m(W,e,t),n(e,Je,t),n(e,F,t),Me=!0},p:De,i(e){Me||(f(w.$$.fragment,e),f(T.$$.fragment,e),f(y.$$.fragment,e),f(J.$$.fragment,e),f(I.$$.fragment,e),f(C.$$.fragment,e),f(j.$$.fragment,e),f(k.$$.fragment,e),f(U.$$.fragment,e),f(B.$$.fragment,e),f(H.$$.fragment,e),f(G.$$.fragment,e),f(V.$$.fragment,e),f(S.$$.fragment,e),f(W.$$.fragment,e),Me=!0)},o(e){g(w.$$.fragment,e),g(T.$$.fragment,e),g(y.$$.fragment,e),g(J.$$.fragment,e),g(I.$$.fragment,e),g(C.$$.fragment,e),g(j.$$.fragment,e),g(k.$$.fragment,e),g(U.$$.fragment,e),g(B.$$.fragment,e),g(H.$$.fragment,e),g(G.$$.fragment,e),g(V.$$.fragment,e),g(S.$$.fragment,e),g(W.$$.fragment,e),Me=!1},d(e){e&&(i(O),i(N),i(q),i(Q),i(K),i(b),i(ee),i(te),i(v),i(ie),i(ne),i(M),i(le),i(ae),i(_),i(se),i(L),i(oe),i(re),i($),i(pe),i(me),i(A),i(fe),i(R),i(ge),i(ce),i(P),i(de),i(ue),i(he),i(E),i($e),i(we),i(Te),i(X),i(be),i(ye),i(z),i(ve),i(Je),i(F)),i(h),c(w,e),c(T,e),c(y,e),c(J,e),c(I,e),c(C,e),c(j),c(k,e),c(U,e),c(B,e),c(H,e),c(G,e),c(V,e),c(S,e),c(W,e)}}}const tt='{"title":"π₀ (Pi0)","local":"π₀-pi0","sections":[{"title":"Model Overview","local":"model-overview","sections":[{"title":"The Vision for Physical Intelligence","local":"the-vision-for-physical-intelligence","sections":[],"depth":3},{"title":"Architecture and Approach","local":"architecture-and-approach","sections":[],"depth":3}],"depth":2},{"title":"Installation Requirements","local":"installation-requirements","sections":[],"depth":2},{"title":"Training Data and Capabilities","local":"training-data-and-capabilities","sections":[],"depth":2},{"title":"Usage","local":"usage","sections":[],"depth":2},{"title":"Training","local":"training","sections":[{"title":"Key Training Parameters","local":"key-training-parameters","sections":[],"depth":3}],"depth":2},{"title":"License","local":"license","sections":[],"depth":2}],"depth":1}';function it(ke){return Ne(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class rt extends Fe{constructor(h){super(),Oe(this,h,it,et,Ze,{})}}export{rt as component};
