import{s as O,n as Q,o as W}from"../chunks/scheduler.44d8fc67.js";import{S as D,i as J,e as d,s,c as T,h as K,a as b,d as a,b as o,f as B,g as M,j as P,k as G,l as N,m as n,n as k,t as E,o as H,p as S}from"../chunks/index.9e7b1f0b.js";import{H as I,E as V}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.c7c91191.js";function X(j){let i,$,h,y,l,w,r,A="bitsandbytes enables accessible large language models via k-bit quantization for PyTorch. bitsandbytes provides three main features for dramatically reducing memory consumption for inference and training:",_,m,F="<li>8-bit optimizers uses block-wise quantization to maintain 32-bit performance at a small fraction of the memory cost.</li> <li>LLM.int8() or 8-bit quantization enables large language model inference with only half the required memory and without any performance degradation. This method is based on vector-wise quantization to quantize most features to 8-bits and separately treating outliers with 16-bit matrix multiplication.</li> <li>QLoRA or 4-bit quantization enables large language model training with several memory-saving techniques that don’t compromise performance. This method quantizes a model to 4-bits and inserts a small set of trainable low-rank adaptation (LoRA) weights to allow training.</li>",v,u,z,f,R="bitsandbytes is MIT licensed.",x,c,U='We thank Fabio Cannizzo for his work on <a href="https://github.com/fabiocannizzo/FastBinarySearch" rel="nofollow">FastBinarySearch</a> which we use for CPU quantization.',q,p,C,g,L;return l=new I({props:{title:"bitsandbytes",local:"bitsandbytes",headingTag:"h1"}}),u=new I({props:{title:"License",local:"license",headingTag:"h1"}}),p=new V({props:{source:"https://github.com/bitsandbytes-foundation/bitsandbytes/blob/main/docs/source/index.mdx"}}),{c(){i=d("meta"),$=s(),h=d("p"),y=s(),T(l.$$.fragment),w=s(),r=d("p"),r.textContent=A,_=s(),m=d("ul"),m.innerHTML=F,v=s(),T(u.$$.fragment),z=s(),f=d("p"),f.textContent=R,x=s(),c=d("p"),c.innerHTML=U,q=s(),T(p.$$.fragment),C=s(),g=d("p"),this.h()},l(t){const e=K("svelte-u9bgzb",document.head);i=b(e,"META",{name:!0,content:!0}),e.forEach(a),$=o(t),h=b(t,"P",{}),B(h).forEach(a),y=o(t),M(l.$$.fragment,t),w=o(t),r=b(t,"P",{"data-svelte-h":!0}),P(r)!=="svelte-18pq57t"&&(r.textContent=A),_=o(t),m=b(t,"UL",{"data-svelte-h":!0}),P(m)!=="svelte-2c8gj9"&&(m.innerHTML=F),v=o(t),M(u.$$.fragment,t),z=o(t),f=b(t,"P",{"data-svelte-h":!0}),P(f)!=="svelte-zzmy3r"&&(f.textContent=R),x=o(t),c=b(t,"P",{"data-svelte-h":!0}),P(c)!=="svelte-18bjayv"&&(c.innerHTML=U),q=o(t),M(p.$$.fragment,t),C=o(t),g=b(t,"P",{}),B(g).forEach(a),this.h()},h(){G(i,"name","hf:doc:metadata"),G(i,"content",Y)},m(t,e){N(document.head,i),n(t,$,e),n(t,h,e),n(t,y,e),k(l,t,e),n(t,w,e),n(t,r,e),n(t,_,e),n(t,m,e),n(t,v,e),k(u,t,e),n(t,z,e),n(t,f,e),n(t,x,e),n(t,c,e),n(t,q,e),k(p,t,e),n(t,C,e),n(t,g,e),L=!0},p:Q,i(t){L||(E(l.$$.fragment,t),E(u.$$.fragment,t),E(p.$$.fragment,t),L=!0)},o(t){H(l.$$.fragment,t),H(u.$$.fragment,t),H(p.$$.fragment,t),L=!1},d(t){t&&(a($),a(h),a(y),a(w),a(r),a(_),a(m),a(v),a(z),a(f),a(x),a(c),a(q),a(C),a(g)),a(i),S(l,t),S(u,t),S(p,t)}}}const Y='{"title":"bitsandbytes","local":"bitsandbytes","sections":[],"depth":1}';function Z(j){return W(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class nt extends D{constructor(i){super(),J(this,i,Z,X,O,{})}}export{nt as component};
