Buckets:

HuggingFaceDocBuilder's picture
download
raw
8.31 kB
import{s as Ce,n as Ve,o as _e}from"../chunks/scheduler.f3b1e791.js";import{S as je,i as Le,e as f,s as n,c as a,h as Je,a as c,d as l,b as s,f as Te,g as r,j as u,k as Ue,l as Se,m as i,n as m,t as o,o as p,p as d}from"../chunks/index.023a9934.js";import{C as Ge}from"../chunks/CopyLLMTxtMenu.ce8762d9.js";import{C as W}from"../chunks/CodeBlock.0b6fc0b3.js";import{H as E,E as Xe}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.85d5d61e.js";function ze(ue){let $,Q,H,Z,y,B,g,Y,w,ye="Use <code>kernels init</code> to initialize a new kernel project.",R,k,A,b,D,h,ge="This creates a new directory in the current working directory with the (normalized) repo name.",F,x,O,M,we=`<li>Downloads a project template and replaces placeholders in file names, paths, and file contents</li> <li>Optionally restricts enabled backends (updates <code>build.toml</code> and removes unused backend folders)</li> <li>Initializes a Git repo and stages the files (<code>git init</code>, <code>git add .</code>)</li> <li>Initializes a templated system card for the kernel which is meant for the
kernel developer to further modify</li>`,q,v,K,T,ke="Initialize a new kernel project (defaults to <code>metal</code> on macOS, <code>cuda</code> on Linux/Windows):",ee,U,te,C,be="Enable multiple backends:",le,V,ie,_,he="Enable all supported backends:",ne,j,se,L,xe="Overwrite an existing directory if it exists:",ae,J,re,S,me,G,Me="<code>kernels init</code> prints suggested next steps after creating the project. A typical flow looks like:",oe,X,pe,z,de,I,ve="<li>The <code>&lt;repo&gt;</code> part is normalized to lowercase with dashes preferred. For example, <code>my-user/My_Kernel</code> becomes a directory named <code>my-kernel</code> and a repo id <code>my-user/my-kernel</code>.</li> <li>Python package names use underscores (e.g., <code>my_kernel</code>) since dashes are not valid in Python identifiers.</li> <li><code>--backends</code> can be one of: <code>cpu</code>, <code>cuda</code>, <code>metal</code>, <code>rocm</code>, <code>xpu</code>, <code>npu</code>, or <code>all</code>.</li> <li>If the target directory already exists and is not empty, <code>kernels init</code> exits with an error unless <code>--overwrite</code> is set.</li> <li>The project is initialized as a Git repo (via <code>git init</code>) because Nix flakes require it.</li>",fe,P,ce,N,$e;return y=new Ge({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),g=new E({props:{title:"kernels init",local:"kernels-init",headingTag:"h1"}}),k=new E({props:{title:"Usage",local:"usage",headingTag:"h2"}}),b=new W({props:{code:"a2VybmVscyUyMGluaXQlMjAlM0Nvd25lciUzRSUyRiUzQ3JlcG8lM0UlMjAlNUItLWJhY2tlbmRzJTIwJTNDYmFja2VuZC4uLiUzRSU1RCUyMCU1Qi0tb3ZlcndyaXRlJTVE",highlighted:"kernels init &lt;owner&gt;/&lt;repo&gt; [--backends &lt;backend...&gt;] [--overwrite]",wrap:!1}}),x=new E({props:{title:"What It Does",local:"what-it-does",headingTag:"h2"}}),v=new E({props:{title:"Examples",local:"examples",headingTag:"h2"}}),U=new W({props:{code:"a2VybmVscyUyMGluaXQlMjBteS11c2VyJTJGbXkta2VybmVs",highlighted:"kernels init my-user/my-kernel",wrap:!1}}),V=new W({props:{code:"a2VybmVscyUyMGluaXQlMjBteS11c2VyJTJGbXkta2VybmVsJTIwLS1iYWNrZW5kcyUyMGN1ZGElMjBjcHU=",highlighted:"kernels init my-user/my-kernel --backends cuda cpu",wrap:!1}}),j=new W({props:{code:"a2VybmVscyUyMGluaXQlMjBteS11c2VyJTJGbXkta2VybmVsJTIwLS1iYWNrZW5kcyUyMGFsbA==",highlighted:"kernels init my-user/my-kernel --backends all",wrap:!1}}),J=new W({props:{code:"a2VybmVscyUyMGluaXQlMjBteS11c2VyJTJGbXkta2VybmVsJTIwLS1vdmVyd3JpdGU=",highlighted:"kernels init my-user/my-kernel --overwrite",wrap:!1}}),S=new E({props:{title:"Next Steps",local:"next-steps",headingTag:"h2"}}),X=new W({props:{code:"Y2QlMjBteS1rZXJuZWwlMEFjYWNoaXglMjB1c2UlMjBodWdnaW5nZmFjZSUwQW5peCUyMHJ1biUyMC1MJTIwLS1tYXgtam9icyUyMDElMjAtLWNvcmVzJTIwOCUyMC4lMjNidWlsZC1hbmQtY29weSUwQXV2JTIwcnVuJTIwZXhhbXBsZS5weQ==",highlighted:`<span class="hljs-built_in">cd</span> my-kernel
cachix use huggingface
nix run -L --max-jobs 1 --cores 8 .<span class="hljs-comment">#build-and-copy</span>
uv run example.py`,wrap:!1}}),z=new E({props:{title:"Notes",local:"notes",headingTag:"h2"}}),P=new Xe({props:{source:"https://github.com/huggingface/kernels/blob/main/docs/source/cli-init.md"}}),{c(){$=f("meta"),Q=n(),H=f("p"),Z=n(),a(y.$$.fragment),B=n(),a(g.$$.fragment),Y=n(),w=f("p"),w.innerHTML=ye,R=n(),a(k.$$.fragment),A=n(),a(b.$$.fragment),D=n(),h=f("p"),h.textContent=ge,F=n(),a(x.$$.fragment),O=n(),M=f("ul"),M.innerHTML=we,q=n(),a(v.$$.fragment),K=n(),T=f("p"),T.innerHTML=ke,ee=n(),a(U.$$.fragment),te=n(),C=f("p"),C.textContent=be,le=n(),a(V.$$.fragment),ie=n(),_=f("p"),_.textContent=he,ne=n(),a(j.$$.fragment),se=n(),L=f("p"),L.textContent=xe,ae=n(),a(J.$$.fragment),re=n(),a(S.$$.fragment),me=n(),G=f("p"),G.innerHTML=Me,oe=n(),a(X.$$.fragment),pe=n(),a(z.$$.fragment),de=n(),I=f("ul"),I.innerHTML=ve,fe=n(),a(P.$$.fragment),ce=n(),N=f("p"),this.h()},l(e){const t=Je("svelte-u9bgzb",document.head);$=c(t,"META",{name:!0,content:!0}),t.forEach(l),Q=s(e),H=c(e,"P",{}),Te(H).forEach(l),Z=s(e),r(y.$$.fragment,e),B=s(e),r(g.$$.fragment,e),Y=s(e),w=c(e,"P",{"data-svelte-h":!0}),u(w)!=="svelte-vtcdek"&&(w.innerHTML=ye),R=s(e),r(k.$$.fragment,e),A=s(e),r(b.$$.fragment,e),D=s(e),h=c(e,"P",{"data-svelte-h":!0}),u(h)!=="svelte-1ii41f8"&&(h.textContent=ge),F=s(e),r(x.$$.fragment,e),O=s(e),M=c(e,"UL",{"data-svelte-h":!0}),u(M)!=="svelte-z7s36q"&&(M.innerHTML=we),q=s(e),r(v.$$.fragment,e),K=s(e),T=c(e,"P",{"data-svelte-h":!0}),u(T)!=="svelte-hffogo"&&(T.innerHTML=ke),ee=s(e),r(U.$$.fragment,e),te=s(e),C=c(e,"P",{"data-svelte-h":!0}),u(C)!=="svelte-1fcghx8"&&(C.textContent=be),le=s(e),r(V.$$.fragment,e),ie=s(e),_=c(e,"P",{"data-svelte-h":!0}),u(_)!=="svelte-1immcbl"&&(_.textContent=he),ne=s(e),r(j.$$.fragment,e),se=s(e),L=c(e,"P",{"data-svelte-h":!0}),u(L)!=="svelte-ht8v20"&&(L.textContent=xe),ae=s(e),r(J.$$.fragment,e),re=s(e),r(S.$$.fragment,e),me=s(e),G=c(e,"P",{"data-svelte-h":!0}),u(G)!=="svelte-7a87nv"&&(G.innerHTML=Me),oe=s(e),r(X.$$.fragment,e),pe=s(e),r(z.$$.fragment,e),de=s(e),I=c(e,"UL",{"data-svelte-h":!0}),u(I)!=="svelte-4k307j"&&(I.innerHTML=ve),fe=s(e),r(P.$$.fragment,e),ce=s(e),N=c(e,"P",{}),Te(N).forEach(l),this.h()},h(){Ue($,"name","hf:doc:metadata"),Ue($,"content",Ie)},m(e,t){Se(document.head,$),i(e,Q,t),i(e,H,t),i(e,Z,t),m(y,e,t),i(e,B,t),m(g,e,t),i(e,Y,t),i(e,w,t),i(e,R,t),m(k,e,t),i(e,A,t),m(b,e,t),i(e,D,t),i(e,h,t),i(e,F,t),m(x,e,t),i(e,O,t),i(e,M,t),i(e,q,t),m(v,e,t),i(e,K,t),i(e,T,t),i(e,ee,t),m(U,e,t),i(e,te,t),i(e,C,t),i(e,le,t),m(V,e,t),i(e,ie,t),i(e,_,t),i(e,ne,t),m(j,e,t),i(e,se,t),i(e,L,t),i(e,ae,t),m(J,e,t),i(e,re,t),m(S,e,t),i(e,me,t),i(e,G,t),i(e,oe,t),m(X,e,t),i(e,pe,t),m(z,e,t),i(e,de,t),i(e,I,t),i(e,fe,t),m(P,e,t),i(e,ce,t),i(e,N,t),$e=!0},p:Ve,i(e){$e||(o(y.$$.fragment,e),o(g.$$.fragment,e),o(k.$$.fragment,e),o(b.$$.fragment,e),o(x.$$.fragment,e),o(v.$$.fragment,e),o(U.$$.fragment,e),o(V.$$.fragment,e),o(j.$$.fragment,e),o(J.$$.fragment,e),o(S.$$.fragment,e),o(X.$$.fragment,e),o(z.$$.fragment,e),o(P.$$.fragment,e),$e=!0)},o(e){p(y.$$.fragment,e),p(g.$$.fragment,e),p(k.$$.fragment,e),p(b.$$.fragment,e),p(x.$$.fragment,e),p(v.$$.fragment,e),p(U.$$.fragment,e),p(V.$$.fragment,e),p(j.$$.fragment,e),p(J.$$.fragment,e),p(S.$$.fragment,e),p(X.$$.fragment,e),p(z.$$.fragment,e),p(P.$$.fragment,e),$e=!1},d(e){e&&(l(Q),l(H),l(Z),l(B),l(Y),l(w),l(R),l(A),l(D),l(h),l(F),l(O),l(M),l(q),l(K),l(T),l(ee),l(te),l(C),l(le),l(ie),l(_),l(ne),l(se),l(L),l(ae),l(re),l(me),l(G),l(oe),l(pe),l(de),l(I),l(fe),l(ce),l(N)),l($),d(y,e),d(g,e),d(k,e),d(b,e),d(x,e),d(v,e),d(U,e),d(V,e),d(j,e),d(J,e),d(S,e),d(X,e),d(z,e),d(P,e)}}}const Ie='{"title":"kernels init","local":"kernels-init","sections":[{"title":"Usage","local":"usage","sections":[],"depth":2},{"title":"What It Does","local":"what-it-does","sections":[],"depth":2},{"title":"Examples","local":"examples","sections":[],"depth":2},{"title":"Next Steps","local":"next-steps","sections":[],"depth":2},{"title":"Notes","local":"notes","sections":[],"depth":2}],"depth":1}';function Pe(ue){return _e(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Ze extends je{constructor($){super(),Le(this,$,Pe,ze,Ce,{})}}export{Ze as component};

Xet Storage Details

Size:
8.31 kB
·
Xet hash:
4565ccc0621be9b8678262eaf20a69bad940c7f00ceb5d65260319f379726d9a

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.