import{s as Y,f as X,n as Z,o as ee}from"../chunks/scheduler.37c15a92.js";import{S as te,i as ie,g as l,s as a,r as k,A as ne,h as u,f as i,c as r,j as N,u as C,x as O,k as w,y as oe,a as n,v as R,d as S,t as U,w as z}from"../chunks/index.7cb9c9b8.js";import{H as D,E as ae}from"../chunks/EditOnGithub.858acfec.js";function re(V){let s,y,_,L,m,T,c,W,q,p,B="Welcome to this bonus unit, where you will <strong>train a robot agent to complete a mini-game level using imitation learning.</strong>",x,d,F="At the end of the unit, <strong>you will have a trained agent capable of solving the level as in the video</strong>:",M,o,J,E,g,H,h,K="<li>Learn how to use imitation learning with Godot RL Agents by training an agent to complete a mini-game environment using human-recorded expert demonstrations.</li>",P,f,G,v,Q='<li>It is recommended that you complete the previous chapter (<a href="https://huggingface.co/learn/deep-rl-course/unitbonus3/godotrl" rel="nofollow">Godot RL Agents</a>) before starting this tutorial,</li> <li>Some familiarity with Godot is recommended, although completing the tutorial does not require any gdscript coding knowledge,</li> <li>Godot with .NET support (tested to work with <a href="https://godotengine.org/article/dev-snapshot-godot-4-3-dev-5/" rel="nofollow">4.3.dev5 .NET</a>, may work with newer versions too),</li> <li>Godot RL Agents (you can use <code>pip install godot-rl</code> in the venv/conda env),</li> <li><a href="https://huggingface.co/learn/deep-rl-course/unitbonus5/train-our-robot" rel="nofollow">Imitation library</a>,</li> <li>Time: ~1-2 hours to complete the project and training. It can be outside of this range depending on the hardware used.</li>',I,$,j,b,A;return m=new D({props:{title:"Introduction:",local:"introduction",headingTag:"h1"}}),g=new D({props:{title:"Objectives:",local:"objectives",headingTag:"h2"}}),f=new D({props:{title:"Prerequisites and requirements:",local:"prerequisites-and-requirements",headingTag:"h2"}}),$=new ae({props:{source:"https://github.com/huggingface/deep-rl-class/blob/main/units/en/unitbonus5/introduction.mdx"}}),{c(){s=l("meta"),y=a(),_=l("p"),L=a(),k(m.$$.fragment),T=a(),c=l("img"),q=a(),p=l("p"),p.innerHTML=B,x=a(),d=l("p"),d.innerHTML=F,M=a(),o=l("video"),E=a(),k(g.$$.fragment),H=a(),h=l("ul"),h.innerHTML=K,P=a(),k(f.$$.fragment),G=a(),v=l("ul"),v.innerHTML=Q,I=a(),k($.$$.fragment),j=a(),b=l("p"),this.h()},l(e){const t=ne("svelte-u9bgzb",document.head);s=u(t,"META",{name:!0,content:!0}),t.forEach(i),y=r(e),_=u(e,"P",{}),N(_).forEach(i),L=r(e),C(m.$$.fragment,e),T=r(e),c=u(e,"IMG",{src:!0,alt:!0}),q=r(e),p=u(e,"P",{"data-svelte-h":!0}),O(p)!=="svelte-t17ioe"&&(p.innerHTML=B),x=r(e),d=u(e,"P",{"data-svelte-h":!0}),O(d)!=="svelte-iwu5wz"&&(d.innerHTML=F),M=r(e),o=u(e,"VIDEO",{src:!0,type:!0,mute:!0}),N(o).forEach(i),E=r(e),C(g.$$.fragment,e),H=r(e),h=u(e,"UL",{"data-svelte-h":!0}),O(h)!=="svelte-cmuz8r"&&(h.innerHTML=K),P=r(e),C(f.$$.fragment,e),G=r(e),v=u(e,"UL",{"data-svelte-h":!0}),O(v)!=="svelte-1hiekvo"&&(v.innerHTML=Q),I=r(e),C($.$$.fragment,e),j=r(e),b=u(e,"P",{}),N(b).forEach(i),this.h()},h(){w(s,"name","hf:doc:metadata"),w(s,"content",se),X(c.src,W="https://huggingface.co/datasets/huggingface-deep-rl-course/course-images/resolve/main/en/unit13/thumbnail.png")||w(c,"src",W),w(c,"alt","Unit bonus 4 thumbnail"),X(o.src,J="https://huggingface.co/datasets/huggingface-deep-rl-course/course-images/resolve/main/en/unit13/onnx_inference_test.mp4")||w(o,"src",J),w(o,"type","video/mp4"),o.controls=!0,o.autoplay=!0,o.loop=!0,w(o,"mute","")},m(e,t){oe(document.head,s),n(e,y,t),n(e,_,t),n(e,L,t),R(m,e,t),n(e,T,t),n(e,c,t),n(e,q,t),n(e,p,t),n(e,x,t),n(e,d,t),n(e,M,t),n(e,o,t),n(e,E,t),R(g,e,t),n(e,H,t),n(e,h,t),n(e,P,t),R(f,e,t),n(e,G,t),n(e,v,t),n(e,I,t),R($,e,t),n(e,j,t),n(e,b,t),A=!0},p:Z,i(e){A||(S(m.$$.fragment,e),S(g.$$.fragment,e),S(f.$$.fragment,e),S($.$$.fragment,e),A=!0)},o(e){U(m.$$.fragment,e),U(g.$$.fragment,e),U(f.$$.fragment,e),U($.$$.fragment,e),A=!1},d(e){e&&(i(y),i(_),i(L),i(T),i(c),i(q),i(p),i(x),i(d),i(M),i(o),i(E),i(H),i(h),i(P),i(G),i(v),i(I),i(j),i(b)),i(s),z(m,e),z(g,e),z(f,e),z($,e)}}}const se='{"title":"Introduction:","local":"introduction","sections":[{"title":"Objectives:","local":"objectives","sections":[],"depth":2},{"title":"Prerequisites and requirements:","local":"prerequisites-and-requirements","sections":[],"depth":2}],"depth":1}';function le(V){return ee(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class pe extends te{constructor(s){super(),ie(this,s,le,re,Y,{})}}export{pe as component};
