import{s as G,n as N,o as R}from"../chunks/scheduler.f3b1e791.js";import{S as V,i as W,e as o,s,c as E,h as J,a as m,d as n,b as a,f as F,g as q,j as v,k as A,l as Q,m as l,n as S,t as U,o as z,p as I}from"../chunks/index.023a9934.js";import{C as X}from"../chunks/CopyLLMTxtMenu.ee636735.js";import{H as Z,E as ee}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.9b009efe.js";function te(K){let i,_,$,k,f,y,u,H,r,D='<img src="https://github.com/user-attachments/assets/64a652f3-0cd3-4829-b3c1-df13f7933569" width="450" height="450" alt="kernel-builder logo"/>',T,p,O=`The Kernel Hub allows Python libraries and applications to load compute
kernels directly from the <a href="https://hf.co/" rel="nofollow">Hub</a>. To support this kind
of dynamic loading, Hub kernels differ from traditional Python kernel
packages in that they are made to be:`,P,c,Y=`<li><strong>Portable</strong>: a kernel can be loaded from paths outside <code>PYTHONPATH</code>.</li> <li><strong>Unique</strong>: multiple versions of the same kernel can be loaded in the
same Python process.</li> <li><strong>Compatible</strong>: kernels must support all recent versions of Python and
the different PyTorch build configurations (various CUDA versions
and C++ ABIs). Furthermore, older C library versions must be supported.</li>`,x,h,j=`You can <a href="https://huggingface.co/models?other=kernels" rel="nofollow">search for kernels</a> on
the Hub.`,L,d,B=`If you’re looking for a more involved “Why kernels?” answer, refer to
<a href="./why_kernels">this page</a>.`,M,g,w,b,C;return f=new X({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),u=new Z({props:{title:"Kernels",local:"kernels",headingTag:"h1"}}),g=new ee({props:{source:"https://github.com/huggingface/kernels/blob/main/docs/source/index.md"}}),{c(){i=o("meta"),_=s(),$=o("p"),k=s(),E(f.$$.fragment),y=s(),E(u.$$.fragment),H=s(),r=o("div"),r.innerHTML=D,T=s(),p=o("p"),p.innerHTML=O,P=s(),c=o("ul"),c.innerHTML=Y,x=s(),h=o("p"),h.innerHTML=j,L=s(),d=o("p"),d.innerHTML=B,M=s(),E(g.$$.fragment),w=s(),b=o("p"),this.h()},l(e){const t=J("svelte-u9bgzb",document.head);i=m(t,"META",{name:!0,content:!0}),t.forEach(n),_=a(e),$=m(e,"P",{}),F($).forEach(n),k=a(e),q(f.$$.fragment,e),y=a(e),q(u.$$.fragment,e),H=a(e),r=m(e,"DIV",{align:!0,"data-svelte-h":!0}),v(r)!=="svelte-1u93tqe"&&(r.innerHTML=D),T=a(e),p=m(e,"P",{"data-svelte-h":!0}),v(p)!=="svelte-1i1c9ni"&&(p.innerHTML=O),P=a(e),c=m(e,"UL",{"data-svelte-h":!0}),v(c)!=="svelte-7c4qm4"&&(c.innerHTML=Y),x=a(e),h=m(e,"P",{"data-svelte-h":!0}),v(h)!=="svelte-31adk2"&&(h.innerHTML=j),L=a(e),d=m(e,"P",{"data-svelte-h":!0}),v(d)!=="svelte-msuz7s"&&(d.innerHTML=B),M=a(e),q(g.$$.fragment,e),w=a(e),b=m(e,"P",{}),F(b).forEach(n),this.h()},h(){A(i,"name","hf:doc:metadata"),A(i,"content",ne),A(r,"align","center")},m(e,t){Q(document.head,i),l(e,_,t),l(e,$,t),l(e,k,t),S(f,e,t),l(e,y,t),S(u,e,t),l(e,H,t),l(e,r,t),l(e,T,t),l(e,p,t),l(e,P,t),l(e,c,t),l(e,x,t),l(e,h,t),l(e,L,t),l(e,d,t),l(e,M,t),S(g,e,t),l(e,w,t),l(e,b,t),C=!0},p:N,i(e){C||(U(f.$$.fragment,e),U(u.$$.fragment,e),U(g.$$.fragment,e),C=!0)},o(e){z(f.$$.fragment,e),z(u.$$.fragment,e),z(g.$$.fragment,e),C=!1},d(e){e&&(n(_),n($),n(k),n(y),n(H),n(r),n(T),n(p),n(P),n(c),n(x),n(h),n(L),n(d),n(M),n(w),n(b)),n(i),I(f,e),I(u,e),I(g,e)}}}const ne='{"title":"Kernels","local":"kernels","sections":[],"depth":1}';function le(K){return R(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class oe extends V{constructor(i){super(),W(this,i,le,te,G,{})}}export{oe as component};
