Buckets:

download
raw
6.86 kB
import{s as ue,n as he,o as ge}from"../chunks/scheduler.f3b1e791.js";import{S as ce,i as de,e as s,s as l,c as x,h as $e,a as i,d as n,b as a,f as pe,g as y,j as f,k as me,l as ke,m as r,n as H,t as P,o as C,p as A}from"../chunks/index.023a9934.js";import{C as be}from"../chunks/CopyLLMTxtMenu.260ef33c.js";import{H as j,E as _e}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.07a4ec62.js";function we(ee){let o,R,z,q,p,S,m,F,u,te="This page shows how different projects use <code>kernels</code>.",I,h,O,g,ne=`<a href="https://github.com/karpathy/autoresearch" rel="nofollow">karpathy/autoresearch</a> <a href="https://github.com/karpathy/autoresearch/blob/c2450add72cc80317be1fe8111974b892da10944/train.py#L23" rel="nofollow">uses</a> <code>kernels</code> to
integrate Flash-Attention 3 through the <a href="/docs/kernels/pr_653/en/api/kernels#kernels.get_kernel">get_kernel()</a> method.`,U,c,B,d,re=`<a href="https://github.com/inclusionAI/AReaL" rel="nofollow">inclusionAI/AReaL</a> uses <code>kernels</code> in an opt-in manner to integrate
optimized attention mechanisms.`,G,$,V,k,le=`<a href="https://github.com/huggingface/transformers/" rel="nofollow">huggingface/transformers</a> primarily
depends on <code>kernels</code> for all optimizations related to optimized kernels, including
optimized attention implementations, MoE blocks, and quantization. Besides
<a href="/docs/kernels/pr_653/en/api/kernels#kernels.get_kernel">get_kernel()</a>, it also uses <a href="./layers">kernel layers</a> to optimize the forward passes
of common layers involved in the modeling blocks. Some references are available
<a href="https://github.com/search?q=repo%3Ahuggingface%2Ftransformers%20get_kernel(&amp;type=code" rel="nofollow">here</a>
and <a href="https://github.com/search?q=repo%3Ahuggingface%2Ftransformers+use_kernel_forward_from_hub&amp;type=code" rel="nofollow">here</a>.`,Y,b,ae="Refer to the following posts to know more:",D,_,se='<li><a href="https://huggingface.co/blog/faster-transformers" rel="nofollow">Tricks from OpenAI gpt-oss YOU 🫵 can use with transformers</a></li> <li><a href="https://huggingface.co/blog/moe-transformers" rel="nofollow">Mixture of Experts (MoEs) in Transformers</a></li>',J,w,K,v,ie=`Similar to <code>transformers</code>, <a href="https://github.com/huggingface/diffusers/" rel="nofollow">huggingface/diffusers</a> uses
<code>kernels</code> for integrating optimized kernels to <a href="https://github.com/huggingface/diffusers/blob/e5aa719241f9b74d6700be3320a777799bfab70a/src/diffusers/models/attention_dispatch.py" rel="nofollow">compute attention</a>.`,N,T,oe=`Besides leveraging pre-built compute kernels, different projects
rely on <code>kernels</code> to also package, build, and distribute their
kernels on the Hugging Face Hub platform. This is made possible by the
<a href="./builder/writing-kernels">“builder” component of <code>kernels</code></a>.
Visit <a href="https://huggingface.co/kernels" rel="nofollow">huggingface.co/kernels</a> to browse
the pre-built compute kernels available on the Hub.`,Q,L,fe=`Feel free to open a PR enlisting your project to show how <code>kernels</code>
is leveraged there.`,W,M,X,E,Z;return p=new be({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),m=new j({props:{title:"Integrating kernels",local:"integrating-kernels",headingTag:"h1"}}),h=new j({props:{title:"autoresearch",local:"autoresearch",headingTag:"h2"}}),c=new j({props:{title:"AReaL",local:"areal",headingTag:"h2"}}),$=new j({props:{title:"transformers",local:"transformers",headingTag:"h2"}}),w=new j({props:{title:"diffusers",local:"diffusers",headingTag:"h2"}}),M=new _e({props:{source:"https://github.com/huggingface/kernels/blob/main/docs/source/integrating-kernels.md"}}),{c(){o=s("meta"),R=l(),z=s("p"),q=l(),x(p.$$.fragment),S=l(),x(m.$$.fragment),F=l(),u=s("p"),u.innerHTML=te,I=l(),x(h.$$.fragment),O=l(),g=s("p"),g.innerHTML=ne,U=l(),x(c.$$.fragment),B=l(),d=s("p"),d.innerHTML=re,G=l(),x($.$$.fragment),V=l(),k=s("p"),k.innerHTML=le,Y=l(),b=s("p"),b.textContent=ae,D=l(),_=s("ul"),_.innerHTML=se,J=l(),x(w.$$.fragment),K=l(),v=s("p"),v.innerHTML=ie,N=l(),T=s("p"),T.innerHTML=oe,Q=l(),L=s("p"),L.innerHTML=fe,W=l(),x(M.$$.fragment),X=l(),E=s("p"),this.h()},l(e){const t=$e("svelte-u9bgzb",document.head);o=i(t,"META",{name:!0,content:!0}),t.forEach(n),R=a(e),z=i(e,"P",{}),pe(z).forEach(n),q=a(e),y(p.$$.fragment,e),S=a(e),y(m.$$.fragment,e),F=a(e),u=i(e,"P",{"data-svelte-h":!0}),f(u)!=="svelte-vnl8ty"&&(u.innerHTML=te),I=a(e),y(h.$$.fragment,e),O=a(e),g=i(e,"P",{"data-svelte-h":!0}),f(g)!=="svelte-16q1cv7"&&(g.innerHTML=ne),U=a(e),y(c.$$.fragment,e),B=a(e),d=i(e,"P",{"data-svelte-h":!0}),f(d)!=="svelte-14i6hd3"&&(d.innerHTML=re),G=a(e),y($.$$.fragment,e),V=a(e),k=i(e,"P",{"data-svelte-h":!0}),f(k)!=="svelte-de4w6w"&&(k.innerHTML=le),Y=a(e),b=i(e,"P",{"data-svelte-h":!0}),f(b)!=="svelte-58vqvj"&&(b.textContent=ae),D=a(e),_=i(e,"UL",{"data-svelte-h":!0}),f(_)!=="svelte-ixjige"&&(_.innerHTML=se),J=a(e),y(w.$$.fragment,e),K=a(e),v=i(e,"P",{"data-svelte-h":!0}),f(v)!=="svelte-4wljk1"&&(v.innerHTML=ie),N=a(e),T=i(e,"P",{"data-svelte-h":!0}),f(T)!=="svelte-164sdup"&&(T.innerHTML=oe),Q=a(e),L=i(e,"P",{"data-svelte-h":!0}),f(L)!=="svelte-1ragv6p"&&(L.innerHTML=fe),W=a(e),y(M.$$.fragment,e),X=a(e),E=i(e,"P",{}),pe(E).forEach(n),this.h()},h(){me(o,"name","hf:doc:metadata"),me(o,"content",ve)},m(e,t){ke(document.head,o),r(e,R,t),r(e,z,t),r(e,q,t),H(p,e,t),r(e,S,t),H(m,e,t),r(e,F,t),r(e,u,t),r(e,I,t),H(h,e,t),r(e,O,t),r(e,g,t),r(e,U,t),H(c,e,t),r(e,B,t),r(e,d,t),r(e,G,t),H($,e,t),r(e,V,t),r(e,k,t),r(e,Y,t),r(e,b,t),r(e,D,t),r(e,_,t),r(e,J,t),H(w,e,t),r(e,K,t),r(e,v,t),r(e,N,t),r(e,T,t),r(e,Q,t),r(e,L,t),r(e,W,t),H(M,e,t),r(e,X,t),r(e,E,t),Z=!0},p:he,i(e){Z||(P(p.$$.fragment,e),P(m.$$.fragment,e),P(h.$$.fragment,e),P(c.$$.fragment,e),P($.$$.fragment,e),P(w.$$.fragment,e),P(M.$$.fragment,e),Z=!0)},o(e){C(p.$$.fragment,e),C(m.$$.fragment,e),C(h.$$.fragment,e),C(c.$$.fragment,e),C($.$$.fragment,e),C(w.$$.fragment,e),C(M.$$.fragment,e),Z=!1},d(e){e&&(n(R),n(z),n(q),n(S),n(F),n(u),n(I),n(O),n(g),n(U),n(B),n(d),n(G),n(V),n(k),n(Y),n(b),n(D),n(_),n(J),n(K),n(v),n(N),n(T),n(Q),n(L),n(W),n(X),n(E)),n(o),A(p,e),A(m,e),A(h,e),A(c,e),A($,e),A(w,e),A(M,e)}}}const ve='{"title":"Integrating kernels","local":"integrating-kernels","sections":[{"title":"autoresearch","local":"autoresearch","sections":[],"depth":2},{"title":"AReaL","local":"areal","sections":[],"depth":2},{"title":"transformers","local":"transformers","sections":[],"depth":2},{"title":"diffusers","local":"diffusers","sections":[],"depth":2}],"depth":1}';function Te(ee){return ge(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class He extends ce{constructor(o){super(),de(this,o,Te,we,ue,{})}}export{He as component};

Xet Storage Details

Size:
6.86 kB
·
Xet hash:
9fbc30e2501c58a019dc32f7d4efd3715808f79a6cf655bdeee7ddff1a15e1ec

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