import{S as AE,i as xE,s as jE,e as s,k as f,w as c,t as o,M as TE,c as r,d as t,m as d,a as n,x as u,h as l,b as p,G as a,g as h,y as m,q as v,o as g,B as w,v as PE}from"../chunks/vendor-hf-doc-builder.js";import{T as NE}from"../chunks/Tip-hf-doc-builder.js";import{Y as Jh}from"../chunks/Youtube-hf-doc-builder.js";import{I as b}from"../chunks/IconCopyLink-hf-doc-builder.js";import{C as x}from"../chunks/CodeBlock-hf-doc-builder.js";function SE(Rh){let E,ct;return{c(){E=s("p"),ct=o(`Each model\u2019s labels may be different, so be sure to always check the documentation of each model for more information
about their specific labels!`)},l(j){E=r(j,"P",{});var S=n(E);ct=l(S,`Each model\u2019s labels may be different, so be sure to always check the documentation of each model for more information
about their specific labels!`),S.forEach(t)},m(j,S){h(j,E,S),a(E,ct)},d(j){j&&t(E)}}}function qE(Rh){let E,ct,j,S,So,Ra,Nu,qo,Su,Xh,Cr,qu,Oh,Q,ut,Mo,Xa,Mu,Co,Cu,Lh,Y,mt,zo,Oa,zu,Io,Iu,Qh,zr,Vu,Yh,La,Kh,Ir,Fu,ep,Vr,Hu,tp,Qa,ap,Fr,Zu,sp,Ya,rp,Hr,Du,np,Zr,Uu,op,Ka,lp,Dr,Bu,ip,es,hp,M,Wu,Ur,Gu,Ju,Vo,Ru,Xu,Fo,Ou,Lu,pp,ts,fp,K,vt,Ho,as,Qu,Zo,Yu,dp,ee,Ku,Br,em,tm,Wr,am,cp,te,gt,Do,ss,sm,Uo,rm,up,ae,nm,Gr,om,lm,Jr,im,mp,se,wt,Bo,rs,hm,Wo,pm,vp,re,bt,Go,ns,fm,Jo,dm,gp,T,cm,Rr,um,mm,Xr,vm,gm,Ro,wm,bm,Or,$m,_m,wp,ne,$t,Xo,os,km,Oo,ym,bp,oe,_t,Lo,ls,Em,Qo,Am,$p,Lr,xm,_p,le,kt,Yo,is,jm,Ko,Tm,kp,k,Pm,el,Nm,Sm,tl,qm,Mm,al,Cm,zm,sl,Im,Vm,rl,Fm,Hm,nl,Zm,Dm,yp,ie,yt,ol,hs,Um,ll,Bm,Ep,Qr,Wm,Ap,he,Et,il,ps,Gm,hl,Jm,xp,Yr,Rm,jp,pe,At,pl,fs,Xm,fl,Om,Tp,fe,xt,dl,ds,Lm,cl,Qm,Pp,Kr,Ym,Np,C,Km,ul,ev,tv,ml,av,sv,vl,rv,nv,Sp,en,ov,qp,de,jt,gl,cs,lv,wl,iv,Mp,tn,hv,Cp,us,zp,ce,Tt,bl,ms,pv,$l,fv,Ip,an,dv,Vp,ue,Pt,_l,vs,cv,kl,uv,Fp,me,Nt,yl,gs,mv,El,vv,Hp,St,gv,sn,wv,bv,Zp,ws,Dp,ve,qt,Al,bs,$v,xl,_v,Up,ge,Mt,jl,$s,kv,Tl,yv,Bp,rn,Ev,Wp,we,Ct,Pl,_s,Av,Nl,xv,Gp,zt,jv,Sl,Tv,Pv,Jp,$,Nv,ql,Sv,qv,Ml,Mv,Cv,ks,zv,Iv,Cl,Vv,Fv,zl,Hv,Zv,Il,Dv,Uv,Vl,Bv,Wv,Fl,Gv,Jv,Rp,z,Rv,nn,Xv,Ov,Hl,Lv,Qv,Zl,Yv,Kv,Xp,be,It,Dl,ys,e1,Ul,t1,Op,Vt,a1,on,s1,r1,Lp,Ft,n1,Es,o1,l1,Qp,$e,Ht,Bl,As,i1,Wl,h1,Yp,_e,Zt,Gl,xs,p1,Jl,f1,Kp,ln,d1,ef,V,Dt,hn,c1,u1,pn,m1,v1,g1,F,fn,w1,b1,Rl,$1,_1,dn,k1,y1,E1,H,cn,A1,x1,un,j1,T1,mn,P1,N1,tf,ke,Ut,Xl,js,S1,Ol,q1,af,ye,Bt,Ll,Ts,M1,Ql,C1,sf,Wt,z1,Yl,I1,V1,rf,Ee,Gt,Kl,Ps,F1,ei,H1,nf,Jt,Z1,Ns,D1,U1,of,Ae,Rt,ti,Ss,B1,ai,W1,lf,vn,G1,hf,qs,pf,Xt,J1,Ms,R1,X1,ff,Cs,df,gn,O1,cf,zs,uf,wn,L1,mf,Is,vf,Ot,Q1,Vs,Y1,K1,gf,Fs,wf,Lt,eg,si,tg,ag,bf,Hs,$f,bn,sg,_f,$n,rg,kf,Zs,yf,_n,ng,Ef,Ds,Af,Qt,og,kn,lg,ig,xf,xe,Yt,ri,Us,hg,ni,pg,jf,je,Kt,oi,Bs,fg,li,dg,Tf,yn,cg,Pf,En,ug,Nf,_,Te,mg,An,vg,gg,ii,wg,bg,$g,Pe,_g,xn,kg,yg,hi,Eg,Ag,xg,Ne,jg,jn,Tg,Pg,pi,Ng,Sg,qg,q,Mg,Tn,Cg,zg,Pn,Ig,Vg,fi,Fg,Hg,di,Zg,Dg,Ug,Se,Bg,Nn,Wg,Gg,ci,Jg,Rg,Xg,qe,Og,Sn,Lg,Qg,ui,Yg,Kg,ew,I,tw,qn,aw,sw,mi,rw,nw,vi,ow,lw,iw,Me,hw,Mn,pw,fw,gi,dw,cw,Sf,ea,qf,ta,uw,Cn,mw,vw,Mf,Ce,aa,wi,Ws,gw,bi,ww,Cf,zn,bw,zf,ze,sa,$i,Gs,$w,_i,_w,If,Ie,ra,ki,Js,kw,yi,yw,Vf,In,Ew,Ff,Ve,na,Ei,Rs,Aw,Ai,xw,Hf,Vn,jw,Zf,Fe,oa,xi,Xs,Tw,ji,Pw,Df,He,la,Ti,Os,Nw,Pi,Sw,Uf,ia,qw,Ls,Mw,Cw,Bf,Ze,ha,Ni,Qs,zw,Si,Iw,Wf,Fn,Vw,Gf,De,pa,qi,Ys,Fw,Mi,Hw,Jf,Hn,Zw,Rf,Ue,fa,Ci,Ks,Dw,zi,Uw,Xf,Be,da,Ii,er,Bw,Vi,Ww,Of,Zn,Gw,Lf,ca,Jw,tr,Rw,Xw,Qf,We,ua,Fi,ar,Ow,Hi,Lw,Yf,P,Qw,Zi,Yw,Kw,Di,eb,tb,Ui,ab,sb,Bi,rb,nb,Kf,Ge,ma,Wi,sr,ob,Gi,lb,ed,Dn,ib,td,Je,va,Ji,rr,hb,Ri,pb,ad,ga,fb,Xi,db,cb,sd,wa,ub,Oi,mb,vb,rd,ba,gb,Li,wb,bb,nd,Re,$a,Qi,nr,$b,Yi,_b,od,_a,kb,or,yb,Eb,ld,Xe,ka,Ki,lr,Ab,eh,xb,id,Z,jb,Un,Tb,Pb,Bn,Nb,Sb,hd,Wn,qb,pd,Oe,ya,th,ir,Mb,ah,Cb,fd,Le,Ea,sh,hr,zb,rh,Ib,dd,Gn,Vb,cd,Qe,Aa,nh,pr,Fb,oh,Hb,ud,Jn,Zb,md,Ye,xa,lh,fr,Db,ih,Ub,vd,Ke,ja,hh,dr,Bb,ph,Wb,gd,Rn,Gb,wd,et,Ta,fh,cr,Jb,dh,Rb,bd,Xn,Xb,$d,tt,Pa,ch,ur,Ob,uh,Lb,_d,D,Qb,On,Yb,Kb,Ln,e$,t$,kd,Na,a$,Qn,s$,r$,yd,at,Sa,mh,mr,n$,vh,o$,Ed,U,l$,Yn,i$,h$,Kn,p$,f$,Ad,eo,d$,xd,st,qa,gh,vr,c$,wh,u$,jd,B,m$,to,v$,g$,ao,w$,b$,Td,rt,Ma,bh,gr,$$,$h,_$,Pd,W,k$,so,y$,E$,ro,A$,x$,Nd,nt,Ca,_h,wr,j$,kh,T$,Sd,no,P$,qd,ot,za,yh,br,N$,Eh,S$,Md,lt,Ia,Ah,$r,q$,xh,M$,Cd,oo,C$,zd,it,Va,jh,_r,z$,Th,I$,Id,lo,V$,Vd,kr,Fd,G,F$,Ph,H$,Z$,Nh,D$,U$,Hd,yr,Zd,Fa,B$,Sh,W$,G$,Dd,Er,Ud,io,J$,Bd,Ar,Wd,ho,R$,Gd,po,X$,Jd,xr,Rd,J,O$,qh,L$,Q$,Mh,Y$,K$,Xd,R,e2,fo,t2,a2,Ch,s2,r2,Od,ht,Ha,zh,jr,n2,Ih,o2,Ld,co,l2,Qd,pt,Za,Vh,Tr,i2,Fh,h2,Yd,uo,p2,Kd,ft,Da,Hh,Pr,f2,Zh,d2,ec,dt,Ua,Dh,Nr,c2,Uh,u2,tc,mo,m2,ac;return Ra=new b({}),Xa=new b({}),Oa=new b({}),La=new Jh({props:{id:"M6adb1j2jPI"}}),Qa=new x({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJlcnRUb2tlbml6ZXIlMEElMEF0b2tlbml6ZXIlMjAlM0QlMjBCZXJ0VG9rZW5pemVyLmZyb21fcHJldHJhaW5lZCglMjJiZXJ0LWJhc2UtY2FzZWQlMjIpJTBBJTBBc2VxdWVuY2VfYSUyMCUzRCUyMCUyMlRoaXMlMjBpcyUyMGElMjBzaG9ydCUyMHNlcXVlbmNlLiUyMiUwQXNlcXVlbmNlX2IlMjAlM0QlMjAlMjJUaGlzJTIwaXMlMjBhJTIwcmF0aGVyJTIwbG9uZyUyMHNlcXVlbmNlLiUyMEl0JTIwaXMlMjBhdCUyMGxlYXN0JTIwbG9uZ2VyJTIwdGhhbiUyMHRoZSUyMHNlcXVlbmNlJTIwQS4lMjIlMEElMEFlbmNvZGVkX3NlcXVlbmNlX2ElMjAlM0QlMjB0b2tlbml6ZXIoc2VxdWVuY2VfYSklNUIlMjJpbnB1dF9pZHMlMjIlNUQlMEFlbmNvZGVkX3NlcXVlbmNlX2IlMjAlM0QlMjB0b2tlbml6ZXIoc2VxdWVuY2VfYiklNUIlMjJpbnB1dF9pZHMlMjIlNUQ=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BertTokenizer

<span class="hljs-meta">&gt;&gt;&gt; </span>tokenizer = BertTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span>sequence_a = <span class="hljs-string">&quot;This is a short sequence.&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>sequence_b = <span class="hljs-string">&quot;This is a rather long sequence. It is at least longer than the sequence A.&quot;</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>encoded_sequence_a = tokenizer(sequence_a)[<span class="hljs-string">&quot;input_ids&quot;</span>]
<span class="hljs-meta">&gt;&gt;&gt; </span>encoded_sequence_b = tokenizer(sequence_b)[<span class="hljs-string">&quot;input_ids&quot;</span>]`}}),Ya=new x({props:{code:"bGVuKGVuY29kZWRfc2VxdWVuY2VfYSklMkMlMjBsZW4oZW5jb2RlZF9zZXF1ZW5jZV9iKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">len</span>(encoded_sequence_a), <span class="hljs-built_in">len</span>(encoded_sequence_b)
(<span class="hljs-number">8</span>, <span class="hljs-number">19</span>)`}}),Ka=new x({props:{code:"cGFkZGVkX3NlcXVlbmNlcyUyMCUzRCUyMHRva2VuaXplciglNUJzZXF1ZW5jZV9hJTJDJTIwc2VxdWVuY2VfYiU1RCUyQyUyMHBhZGRpbmclM0RUcnVlKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>padded_sequences = tokenizer([sequence_a, sequence_b], padding=<span class="hljs-literal">True</span>)'}}),es=new x({props:{code:"cGFkZGVkX3NlcXVlbmNlcyU1QiUyMmlucHV0X2lkcyUyMiU1RA==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>padded_sequences[<span class="hljs-string">&quot;input_ids&quot;</span>]
[[<span class="hljs-number">101</span>, <span class="hljs-number">1188</span>, <span class="hljs-number">1110</span>, <span class="hljs-number">170</span>, <span class="hljs-number">1603</span>, <span class="hljs-number">4954</span>, <span class="hljs-number">119</span>, <span class="hljs-number">102</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>], [<span class="hljs-number">101</span>, <span class="hljs-number">1188</span>, <span class="hljs-number">1110</span>, <span class="hljs-number">170</span>, <span class="hljs-number">1897</span>, <span class="hljs-number">1263</span>, <span class="hljs-number">4954</span>, <span class="hljs-number">119</span>, <span class="hljs-number">1135</span>, <span class="hljs-number">1110</span>, <span class="hljs-number">1120</span>, <span class="hljs-number">1655</span>, <span class="hljs-number">2039</span>, <span class="hljs-number">1190</span>, <span class="hljs-number">1103</span>, <span class="hljs-number">4954</span>, <span class="hljs-number">138</span>, <span class="hljs-number">119</span>, <span class="hljs-number">102</span>]]`}}),ts=new x({props:{code:"cGFkZGVkX3NlcXVlbmNlcyU1QiUyMmF0dGVudGlvbl9tYXNrJTIyJTVE",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>padded_sequences[<span class="hljs-string">&quot;attention_mask&quot;</span>]
[[<span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>], [<span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>]]`}}),as=new b({}),ss=new b({}),rs=new b({}),ns=new b({}),os=new b({}),ls=new b({}),is=new b({}),hs=new b({}),ps=new b({}),fs=new b({}),ds=new b({}),cs=new b({}),us=new Jh({props:{id:"d_ixlCubqQw"}}),ms=new b({}),vs=new b({}),gs=new b({}),ws=new Jh({props:{id:"H39Z_720T5s"}}),bs=new b({}),$s=new b({}),_s=new b({}),ys=new b({}),As=new b({}),xs=new b({}),js=new b({}),Ts=new b({}),Ps=new b({}),Ss=new b({}),qs=new Jh({props:{id:"VFp38yj8h3A"}}),Cs=new x({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJlcnRUb2tlbml6ZXIlMEElMEF0b2tlbml6ZXIlMjAlM0QlMjBCZXJ0VG9rZW5pemVyLmZyb21fcHJldHJhaW5lZCglMjJiZXJ0LWJhc2UtY2FzZWQlMjIpJTBBJTBBc2VxdWVuY2UlMjAlM0QlMjAlMjJBJTIwVGl0YW4lMjBSVFglMjBoYXMlMjAyNEdCJTIwb2YlMjBWUkFNJTIy",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BertTokenizer

<span class="hljs-meta">&gt;&gt;&gt; </span>tokenizer = BertTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span>sequence = <span class="hljs-string">&quot;A Titan RTX has 24GB of VRAM&quot;</span>`}}),zs=new x({props:{code:"dG9rZW5pemVkX3NlcXVlbmNlJTIwJTNEJTIwdG9rZW5pemVyLnRva2VuaXplKHNlcXVlbmNlKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>tokenized_sequence = tokenizer.tokenize(sequence)'}}),Is=new x({props:{code:"cHJpbnQodG9rZW5pemVkX3NlcXVlbmNlKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(tokenized_sequence)
[<span class="hljs-string">&#x27;A&#x27;</span>, <span class="hljs-string">&#x27;Titan&#x27;</span>, <span class="hljs-string">&#x27;R&#x27;</span>, <span class="hljs-string">&#x27;##T&#x27;</span>, <span class="hljs-string">&#x27;##X&#x27;</span>, <span class="hljs-string">&#x27;has&#x27;</span>, <span class="hljs-string">&#x27;24&#x27;</span>, <span class="hljs-string">&#x27;##GB&#x27;</span>, <span class="hljs-string">&#x27;of&#x27;</span>, <span class="hljs-string">&#x27;V&#x27;</span>, <span class="hljs-string">&#x27;##RA&#x27;</span>, <span class="hljs-string">&#x27;##M&#x27;</span>]`}}),Fs=new x({props:{code:"aW5wdXRzJTIwJTNEJTIwdG9rZW5pemVyKHNlcXVlbmNlKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = tokenizer(sequence)'}}),Hs=new x({props:{code:"ZW5jb2RlZF9zZXF1ZW5jZSUyMCUzRCUyMGlucHV0cyU1QiUyMmlucHV0X2lkcyUyMiU1RCUwQXByaW50KGVuY29kZWRfc2VxdWVuY2Up",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>encoded_sequence = inputs[<span class="hljs-string">&quot;input_ids&quot;</span>]
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(encoded_sequence)
[<span class="hljs-number">101</span>, <span class="hljs-number">138</span>, <span class="hljs-number">18696</span>, <span class="hljs-number">155</span>, <span class="hljs-number">1942</span>, <span class="hljs-number">3190</span>, <span class="hljs-number">1144</span>, <span class="hljs-number">1572</span>, <span class="hljs-number">13745</span>, <span class="hljs-number">1104</span>, <span class="hljs-number">159</span>, <span class="hljs-number">9664</span>, <span class="hljs-number">2107</span>, <span class="hljs-number">102</span>]`}}),Zs=new x({props:{code:"ZGVjb2RlZF9zZXF1ZW5jZSUyMCUzRCUyMHRva2VuaXplci5kZWNvZGUoZW5jb2RlZF9zZXF1ZW5jZSk=",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>decoded_sequence = tokenizer.decode(encoded_sequence)'}}),Ds=new x({props:{code:"cHJpbnQoZGVjb2RlZF9zZXF1ZW5jZSk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(decoded_sequence)
[CLS] A Titan RTX has 24GB of VRAM [SEP]`}}),Us=new b({}),Bs=new b({}),ea=new NE({props:{$$slots:{default:[SE]},$$scope:{ctx:Rh}}}),Ws=new b({}),Gs=new b({}),Js=new b({}),Rs=new b({}),Xs=new b({}),Os=new b({}),Qs=new b({}),Ys=new b({}),Ks=new b({}),er=new b({}),ar=new b({}),sr=new b({}),rr=new b({}),nr=new b({}),lr=new b({}),ir=new b({}),hr=new b({}),pr=new b({}),fr=new b({}),dr=new b({}),cr=new b({}),ur=new b({}),mr=new b({}),vr=new b({}),gr=new b({}),wr=new b({}),br=new b({}),$r=new b({}),_r=new b({}),kr=new Jh({props:{id:"0u3ioSwev3s"}}),yr=new x({props:{code:"JTIzJTIwJTVCQ0xTJTVEJTIwU0VRVUVOQ0VfQSUyMCU1QlNFUCU1RCUyMFNFUVVFTkNFX0IlMjAlNUJTRVAlNUQ=",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># [CLS] SEQUENCE_A [SEP] SEQUENCE_B [SEP]</span>'}}),Er=new x({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJlcnRUb2tlbml6ZXIlMEElMEF0b2tlbml6ZXIlMjAlM0QlMjBCZXJ0VG9rZW5pemVyLmZyb21fcHJldHJhaW5lZCglMjJiZXJ0LWJhc2UtY2FzZWQlMjIpJTBBc2VxdWVuY2VfYSUyMCUzRCUyMCUyMkh1Z2dpbmdGYWNlJTIwaXMlMjBiYXNlZCUyMGluJTIwTllDJTIyJTBBc2VxdWVuY2VfYiUyMCUzRCUyMCUyMldoZXJlJTIwaXMlMjBIdWdnaW5nRmFjZSUyMGJhc2VkJTNGJTIyJTBBJTBBZW5jb2RlZF9kaWN0JTIwJTNEJTIwdG9rZW5pemVyKHNlcXVlbmNlX2ElMkMlMjBzZXF1ZW5jZV9iKSUwQWRlY29kZWQlMjAlM0QlMjB0b2tlbml6ZXIuZGVjb2RlKGVuY29kZWRfZGljdCU1QiUyMmlucHV0X2lkcyUyMiU1RCk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BertTokenizer

<span class="hljs-meta">&gt;&gt;&gt; </span>tokenizer = BertTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>sequence_a = <span class="hljs-string">&quot;HuggingFace is based in NYC&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>sequence_b = <span class="hljs-string">&quot;Where is HuggingFace based?&quot;</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>encoded_dict = tokenizer(sequence_a, sequence_b)
<span class="hljs-meta">&gt;&gt;&gt; </span>decoded = tokenizer.decode(encoded_dict[<span class="hljs-string">&quot;input_ids&quot;</span>])`}}),Ar=new x({props:{code:"cHJpbnQoZGVjb2RlZCk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(decoded)
[CLS] HuggingFace <span class="hljs-keyword">is</span> based <span class="hljs-keyword">in</span> NYC [SEP] Where <span class="hljs-keyword">is</span> HuggingFace based? [SEP]`}}),xr=new x({props:{code:"ZW5jb2RlZF9kaWN0JTVCJTIydG9rZW5fdHlwZV9pZHMlMjIlNUQ=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>encoded_dict[<span class="hljs-string">&quot;token_type_ids&quot;</span>]
[<span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">0</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>, <span class="hljs-number">1</span>]`}}),jr=new b({}),Tr=new b({}),Pr=new b({}),Nr=new b({}),{c(){E=s("meta"),ct=f(),j=s("h1"),S=s("a"),So=s("span"),c(Ra.$$.fragment),Nu=f(),qo=s("span"),Su=o("Glossary"),Xh=f(),Cr=s("p"),qu=o(`This glossary defines general machine learning and \u{1F917} Transformers terms to help you better understand the
documentation.`),Oh=f(),Q=s("h2"),ut=s("a"),Mo=s("span"),c(Xa.$$.fragment),Mu=f(),Co=s("span"),Cu=o("A"),Lh=f(),Y=s("h3"),mt=s("a"),zo=s("span"),c(Oa.$$.fragment),zu=f(),Io=s("span"),Iu=o("attention mask"),Qh=f(),zr=s("p"),Vu=o("The attention mask is an optional argument used when batching sequences together."),Yh=f(),c(La.$$.fragment),Kh=f(),Ir=s("p"),Fu=o("This argument indicates to the model which tokens should be attended to, and which should not."),ep=f(),Vr=s("p"),Hu=o("For example, consider these two sequences:"),tp=f(),c(Qa.$$.fragment),ap=f(),Fr=s("p"),Zu=o("The encoded versions have different lengths:"),sp=f(),c(Ya.$$.fragment),rp=f(),Hr=s("p"),Du=o(`Therefore, we can\u2019t put them together in the same tensor as-is. The first sequence needs to be padded up to the length
of the second one, or the second one needs to be truncated down to the length of the first one.`),np=f(),Zr=s("p"),Uu=o(`In the first case, the list of IDs will be extended by the padding indices. We can pass a list to the tokenizer and ask
it to pad like this:`),op=f(),c(Ka.$$.fragment),lp=f(),Dr=s("p"),Bu=o("We can see that 0s have been added on the right of the first sentence to make it the same length as the second one:"),ip=f(),c(es.$$.fragment),hp=f(),M=s("p"),Wu=o(`This can then be converted into a tensor in PyTorch or TensorFlow. The attention mask is a binary tensor indicating the
position of the padded indices so that the model does not attend to them. For the `),Ur=s("a"),Gu=o("BertTokenizer"),Ju=o(", "),Vo=s("code"),Ru=o("1"),Xu=o(` indicates a
value that should be attended to, while `),Fo=s("code"),Ou=o("0"),Lu=o(` indicates a padded value. This attention mask is in the dictionary returned
by the tokenizer under the key \u201Cattention_mask\u201D:`),pp=f(),c(ts.$$.fragment),fp=f(),K=s("h3"),vt=s("a"),Ho=s("span"),c(as.$$.fragment),Qu=f(),Zo=s("span"),Yu=o("autoencoding models"),dp=f(),ee=s("p"),Ku=o("See "),Br=s("a"),em=o("encoder models"),tm=o(" and "),Wr=s("a"),am=o("masked language modeling"),cp=f(),te=s("h3"),gt=s("a"),Do=s("span"),c(ss.$$.fragment),sm=f(),Uo=s("span"),rm=o("autoregressive models"),up=f(),ae=s("p"),nm=o("See "),Gr=s("a"),om=o("causal language modeling"),lm=o(" and "),Jr=s("a"),im=o("decoder models"),mp=f(),se=s("h2"),wt=s("a"),Bo=s("span"),c(rs.$$.fragment),hm=f(),Wo=s("span"),pm=o("B"),vp=f(),re=s("h3"),bt=s("a"),Go=s("span"),c(ns.$$.fragment),fm=f(),Jo=s("span"),dm=o("backbone"),gp=f(),T=s("p"),cm=o("The backbone is the network (embeddings and layers) that outputs the raw hidden states or features. It is usually connected to a "),Rr=s("a"),um=o("head"),mm=o(" which accepts the features as its input to make a prediction. For example, "),Xr=s("a"),vm=o("ViTModel"),gm=o(" is a backbone without a specific head on top. Other models can also use "),Ro=s("code"),wm=o("VitModel"),bm=o(" as a backbone such as "),Or=s("a"),$m=o("DPT"),_m=o("."),wp=f(),ne=s("h2"),$t=s("a"),Xo=s("span"),c(os.$$.fragment),km=f(),Oo=s("span"),ym=o("C"),bp=f(),oe=s("h3"),_t=s("a"),Lo=s("span"),c(ls.$$.fragment),Em=f(),Qo=s("span"),Am=o("causal language modeling"),$p=f(),Lr=s("p"),xm=o(`A pretraining task where the model reads the texts in order and has to predict the next word. It\u2019s usually done by
reading the whole sentence but using a mask inside the model to hide the future tokens at a certain timestep.`),_p=f(),le=s("h3"),kt=s("a"),Yo=s("span"),c(is.$$.fragment),jm=f(),Ko=s("span"),Tm=o("channel"),kp=f(),k=s("p"),Pm=o("Color images are made up of some combination of values in three channels - red, green, and blue (RGB) - and grayscale images only have one channel. In \u{1F917} Transformers, the channel can be the first or last dimension of an image\u2019s tensor: ["),el=s("code"),Nm=o("n_channels"),Sm=o(", "),tl=s("code"),qm=o("height"),Mm=o(", "),al=s("code"),Cm=o("width"),zm=o("] or ["),sl=s("code"),Im=o("height"),Vm=o(", "),rl=s("code"),Fm=o("width"),Hm=o(", "),nl=s("code"),Zm=o("n_channels"),Dm=o("]."),yp=f(),ie=s("h3"),yt=s("a"),ol=s("span"),c(hs.$$.fragment),Um=f(),ll=s("span"),Bm=o("connectionist temporal classification (CTC)"),Ep=f(),Qr=s("p"),Wm=o("An algorithm which allows a model to learn without knowing exactly how the input and output are aligned; CTC calculates the distribution of all possible outputs for a given input and chooses the most likely output from it. CTC is commonly used in speech recognition tasks because speech doesn\u2019t always cleanly align with the transcript for a variety of reasons such as a speaker\u2019s different speech rates."),Ap=f(),he=s("h3"),Et=s("a"),il=s("span"),c(ps.$$.fragment),Gm=f(),hl=s("span"),Jm=o("convolution"),xp=f(),Yr=s("p"),Rm=o("A type of layer in a neural network where the input matrix is multiplied element-wise by a smaller matrix (kernel or filter) and the values are summed up in a new matrix. This is known as a convolutional operation which is repeated over the entire input matrix. Each operation is applied to a different segment of the input matrix. Convolutional neural networks (CNNs) are commonly used in computer vision."),jp=f(),pe=s("h2"),At=s("a"),pl=s("span"),c(fs.$$.fragment),Xm=f(),fl=s("span"),Om=o("D"),Tp=f(),fe=s("h3"),xt=s("a"),dl=s("span"),c(ds.$$.fragment),Lm=f(),cl=s("span"),Qm=o("decoder input IDs"),Pp=f(),Kr=s("p"),Ym=o(`This input is specific to encoder-decoder models, and contains the input IDs that will be fed to the decoder. These
inputs should be used for sequence to sequence tasks, such as translation or summarization, and are usually built in a
way specific to each model.`),Np=f(),C=s("p"),Km=o("Most encoder-decoder models (BART, T5) create their "),ul=s("code"),ev=o("decoder_input_ids"),tv=o(" on their own from the "),ml=s("code"),av=o("labels"),sv=o(`. In such models,
passing the `),vl=s("code"),rv=o("labels"),nv=o(" is the preferred way to handle training."),Sp=f(),en=s("p"),ov=o("Please check each model\u2019s docs to see how they handle these input IDs for sequence to sequence training."),qp=f(),de=s("h3"),jt=s("a"),gl=s("span"),c(cs.$$.fragment),lv=f(),wl=s("span"),iv=o("decoder models"),Mp=f(),tn=s("p"),hv=o(`Also referred to as autoregressive models, decoder models involve a pretraining task (called causal language modeling) where the model reads the texts in order and has to predict the next word. It\u2019s usually done by
reading the whole sentence with a mask to hide future tokens at a certain timestep.`),Cp=f(),c(us.$$.fragment),zp=f(),ce=s("h3"),Tt=s("a"),bl=s("span"),c(ms.$$.fragment),pv=f(),$l=s("span"),fv=o("deep learning (DL)"),Ip=f(),an=s("p"),dv=o("Machine learning algorithms which uses neural networks with several layers."),Vp=f(),ue=s("h2"),Pt=s("a"),_l=s("span"),c(vs.$$.fragment),cv=f(),kl=s("span"),uv=o("E"),Fp=f(),me=s("h3"),Nt=s("a"),yl=s("span"),c(gs.$$.fragment),mv=f(),El=s("span"),vv=o("encoder models"),Hp=f(),St=s("p"),gv=o("Also known as autoencoding models, encoder models take an input (such as text or images) and transform them into a condensed numerical representation called an embedding. Oftentimes, encoder models are pretrained using techniques like "),sn=s("a"),wv=o("masked language modeling"),bv=o(", which masks parts of the input sequence and forces the model to create more meaningful representations."),Zp=f(),c(ws.$$.fragment),Dp=f(),ve=s("h2"),qt=s("a"),Al=s("span"),c(bs.$$.fragment),$v=f(),xl=s("span"),_v=o("F"),Up=f(),ge=s("h3"),Mt=s("a"),jl=s("span"),c($s.$$.fragment),kv=f(),Tl=s("span"),yv=o("feature extraction"),Bp=f(),rn=s("p"),Ev=o("The process of selecting and transforming raw data into a set of features that are more informative and useful for machine learning algorithms. Some examples of feature extraction include transforming raw text into word embeddings and extracting important features such as edges or shapes from image/video data."),Wp=f(),we=s("h3"),Ct=s("a"),Pl=s("span"),c(_s.$$.fragment),Av=f(),Nl=s("span"),xv=o("feed forward chunking"),Gp=f(),zt=s("p"),jv=o(`In each residual attention block in transformers the self-attention layer is usually followed by 2 feed forward layers.
The intermediate embedding size of the feed forward layers is often bigger than the hidden size of the model (e.g., for
`),Sl=s("code"),Tv=o("bert-base-uncased"),Pv=o(")."),Jp=f(),$=s("p"),Nv=o("For an input of size "),ql=s("code"),Sv=o("[batch_size, sequence_length]"),qv=o(`, the memory required to store the intermediate feed forward
embeddings `),Ml=s("code"),Mv=o("[batch_size, sequence_length, config.intermediate_size]"),Cv=o(` can account for a large fraction of the memory
use. The authors of `),ks=s("a"),zv=o("Reformer: The Efficient Transformer"),Iv=o(` noticed that since the
computation is independent of the `),Cl=s("code"),Vv=o("sequence_length"),Fv=o(` dimension, it is mathematically equivalent to compute the output
embeddings of both feed forward layers `),zl=s("code"),Hv=o("[batch_size, config.hidden_size]_0, ..., [batch_size, config.hidden_size]_n"),Zv=o(`
individually and concat them afterward to `),Il=s("code"),Dv=o("[batch_size, sequence_length, config.hidden_size]"),Uv=o(" with "),Vl=s("code"),Bv=o("n = sequence_length"),Wv=o(`, which trades increased computation time against reduced memory use, but yields a mathematically
`),Fl=s("strong"),Gv=o("equivalent"),Jv=o(" result."),Rp=f(),z=s("p"),Rv=o("For models employing the function "),nn=s("a"),Xv=o("apply_chunking_to_forward()"),Ov=o(", the "),Hl=s("code"),Lv=o("chunk_size"),Qv=o(` defines the number of output
embeddings that are computed in parallel and thus defines the trade-off between memory and time complexity. If
`),Zl=s("code"),Yv=o("chunk_size"),Kv=o(" is set to 0, no feed forward chunking is done."),Xp=f(),be=s("h3"),It=s("a"),Dl=s("span"),c(ys.$$.fragment),e1=f(),Ul=s("span"),t1=o("finetuned models"),Op=f(),Vt=s("p"),a1=o("Finetuning is a form of transfer learning which involves taking a pretrained model, freezing its weights, and replacing the output layer with a newly added "),on=s("a"),s1=o("model head"),r1=o(". The model head is trained on your target dataset."),Lp=f(),Ft=s("p"),n1=o("See the "),Es=s("a"),o1=o("Fine-tune a pretrained model"),l1=o(" tutorial for more details, and learn how to fine-tune models with \u{1F917} Transformers."),Qp=f(),$e=s("h2"),Ht=s("a"),Bl=s("span"),c(As.$$.fragment),i1=f(),Wl=s("span"),h1=o("H"),Yp=f(),_e=s("h3"),Zt=s("a"),Gl=s("span"),c(xs.$$.fragment),p1=f(),Jl=s("span"),f1=o("head"),Kp=f(),ln=s("p"),d1=o("The model head refers to the last layer of a neural network that accepts the raw hidden states and projects them onto a different dimension. There is a different model head for each task. For example:"),ef=f(),V=s("ul"),Dt=s("li"),hn=s("a"),c1=o("GPT2ForSequenceClassification"),u1=o(" is a sequence classification head - a linear layer - on top of the base "),pn=s("a"),m1=o("GPT2Model"),v1=o("."),g1=f(),F=s("li"),fn=s("a"),w1=o("ViTForImageClassification"),b1=o(" is an image classification head - a linear layer on top of the final hidden state of the "),Rl=s("code"),$1=o("CLS"),_1=o(" token - on top of the base "),dn=s("a"),k1=o("ViTModel"),y1=o("."),E1=f(),H=s("li"),cn=s("a"),A1=o("Wav2Vec2ForCTC"),x1=o(" ia a language modeling head with "),un=s("a"),j1=o("CTC"),T1=o(" on top of the base "),mn=s("a"),P1=o("Wav2Vec2Model"),N1=o("."),tf=f(),ke=s("h2"),Ut=s("a"),Xl=s("span"),c(js.$$.fragment),S1=f(),Ol=s("span"),q1=o("I"),af=f(),ye=s("h3"),Bt=s("a"),Ll=s("span"),c(Ts.$$.fragment),M1=f(),Ql=s("span"),C1=o("image patch"),sf=f(),Wt=s("p"),z1=o("Vision-based Transformers models split an image into smaller patches which are linearly embedded, and then passed as a sequence to the model. You can find the "),Yl=s("code"),I1=o("patch_size"),V1=o(" - or resolution - of the model in it\u2019s configuration."),rf=f(),Ee=s("h3"),Gt=s("a"),Kl=s("span"),c(Ps.$$.fragment),F1=f(),ei=s("span"),H1=o("inference"),nf=f(),Jt=s("p"),Z1=o("Inference is the process of evaluating a model on new data after training is complete. See the "),Ns=s("a"),D1=o("Pipeline for inference"),U1=o(" tutorial to learn how to perform inference with \u{1F917} Transformers."),of=f(),Ae=s("h3"),Rt=s("a"),ti=s("span"),c(Ss.$$.fragment),B1=f(),ai=s("span"),W1=o("input IDs"),lf=f(),vn=s("p"),G1=o(`The input ids are often the only required parameters to be passed to the model as input. They are token indices,
numerical representations of tokens building the sequences that will be used as input by the model.`),hf=f(),c(qs.$$.fragment),pf=f(),Xt=s("p"),J1=o(`Each tokenizer works differently but the underlying mechanism remains the same. Here\u2019s an example using the BERT
tokenizer, which is a `),Ms=s("a"),R1=o("WordPiece"),X1=o(" tokenizer:"),ff=f(),c(Cs.$$.fragment),df=f(),gn=s("p"),O1=o("The tokenizer takes care of splitting the sequence into tokens available in the tokenizer vocabulary."),cf=f(),c(zs.$$.fragment),uf=f(),wn=s("p"),L1=o(`The tokens are either words or subwords. Here for instance, \u201CVRAM\u201D wasn\u2019t in the model vocabulary, so it\u2019s been split
in \u201CV\u201D, \u201CRA\u201D and \u201CM\u201D. To indicate those tokens are not separate words but parts of the same word, a double-hash prefix
is added for \u201CRA\u201D and \u201CM\u201D:`),mf=f(),c(Is.$$.fragment),vf=f(),Ot=s("p"),Q1=o(`These tokens can then be converted into IDs which are understandable by the model. This can be done by directly feeding
the sentence to the tokenizer, which leverages the Rust implementation of `),Vs=s("a"),Y1=o(`\u{1F917}
Tokenizers`),K1=o(" for peak performance."),gf=f(),c(Fs.$$.fragment),wf=f(),Lt=s("p"),eg=o(`The tokenizer returns a dictionary with all the arguments necessary for its corresponding model to work properly. The
token indices are under the key `),si=s("code"),tg=o("input_ids"),ag=o(":"),bf=f(),c(Hs.$$.fragment),$f=f(),bn=s("p"),sg=o(`Note that the tokenizer automatically adds \u201Cspecial tokens\u201D (if the associated model relies on them) which are special
IDs the model sometimes uses.`),_f=f(),$n=s("p"),rg=o("If we decode the previous sequence of ids,"),kf=f(),c(Zs.$$.fragment),yf=f(),_n=s("p"),ng=o("we will see"),Ef=f(),c(Ds.$$.fragment),Af=f(),Qt=s("p"),og=o("because this is the way a "),kn=s("a"),lg=o("BertModel"),ig=o(" is going to expect its inputs."),xf=f(),xe=s("h2"),Yt=s("a"),ri=s("span"),c(Us.$$.fragment),hg=f(),ni=s("span"),pg=o("L"),jf=f(),je=s("h3"),Kt=s("a"),oi=s("span"),c(Bs.$$.fragment),fg=f(),li=s("span"),dg=o("labels"),Tf=f(),yn=s("p"),cg=o(`The labels are an optional argument which can be passed in order for the model to compute the loss itself. These labels
should be the expected prediction of the model: it will use the standard loss in order to compute the loss between its
predictions and the expected value (the label).`),Pf=f(),En=s("p"),ug=o("These labels are different according to the model head, for example:"),Nf=f(),_=s("ul"),Te=s("li"),mg=o("For sequence classification models, ("),An=s("a"),vg=o("BertForSequenceClassification"),gg=o(`), the model expects a tensor of dimension
`),ii=s("code"),wg=o("(batch_size)"),bg=o(" with each value of the batch corresponding to the expected label of the entire sequence."),$g=f(),Pe=s("li"),_g=o("For token classification models, ("),xn=s("a"),kg=o("BertForTokenClassification"),yg=o(`), the model expects a tensor of dimension
`),hi=s("code"),Eg=o("(batch_size, seq_length)"),Ag=o(" with each value corresponding to the expected label of each individual token."),xg=f(),Ne=s("li"),jg=o("For masked language modeling, ("),jn=s("a"),Tg=o("BertForMaskedLM"),Pg=o("), the model expects a tensor of dimension "),pi=s("code"),Ng=o("(batch_size, seq_length)"),Sg=o(` with each value corresponding to the expected label of each individual token: the labels being the token
ID for the masked token, and values to be ignored for the rest (usually -100).`),qg=f(),q=s("li"),Mg=o("For sequence to sequence tasks, ("),Tn=s("a"),Cg=o("BartForConditionalGeneration"),zg=o(", "),Pn=s("a"),Ig=o("MBartForConditionalGeneration"),Vg=o(`), the model
expects a tensor of dimension `),fi=s("code"),Fg=o("(batch_size, tgt_seq_length)"),Hg=o(` with each value corresponding to the target sequences
associated with each input sequence. During training, both BART and T5 will make the appropriate
`),di=s("code"),Zg=o("decoder_input_ids"),Dg=o(` and decoder attention masks internally. They usually do not need to be supplied. This does not
apply to models leveraging the Encoder-Decoder framework.`),Ug=f(),Se=s("li"),Bg=o("For image classification models, ("),Nn=s("a"),Wg=o("ViTForImageClassification"),Gg=o(`), the model expects a tensor of dimension
`),ci=s("code"),Jg=o("(batch_size)"),Rg=o(" with each value of the batch corresponding to the expected label of each individual image."),Xg=f(),qe=s("li"),Og=o("For semantic segmentation models, ("),Sn=s("a"),Lg=o("SegformerForSemanticSegmentation"),Qg=o(`), the model expects a tensor of dimension
`),ui=s("code"),Yg=o("(batch_size, height, width)"),Kg=o(" with each value of the batch corresponding to the expected label of each individual pixel."),ew=f(),I=s("li"),tw=o("For object detection models, ("),qn=s("a"),aw=o("DetrForObjectDetection"),sw=o(`), the model expects a list of dictionaries with a
`),mi=s("code"),rw=o("class_labels"),nw=o(" and "),vi=s("code"),ow=o("boxes"),lw=o(" key where each value of the batch corresponds to the expected label and number of bounding boxes of each individual image."),iw=f(),Me=s("li"),hw=o("For automatic speech recognition models, ("),Mn=s("a"),pw=o("Wav2Vec2ForCTC"),fw=o("), the model expects a tensor of dimension "),gi=s("code"),dw=o("(batch_size, target_length)"),cw=o(" with each value corresponding to the expected label of each individual token."),Sf=f(),c(ea.$$.fragment),qf=f(),ta=s("p"),uw=o("The base models ("),Cn=s("a"),mw=o("BertModel"),vw=o(`) do not accept labels, as these are the base transformer models, simply outputting
features.`),Mf=f(),Ce=s("h3"),aa=s("a"),wi=s("span"),c(Ws.$$.fragment),gw=f(),bi=s("span"),ww=o("large language models (LLM)"),Cf=f(),zn=s("p"),bw=o("A generic term that refers to transformer language models (GPT-3, BLOOM, OPT) that were trained on a large quantity of data. These models also tend to have a large number of learnable parameters (e.g. 175 billion for GPT-3)."),zf=f(),ze=s("h2"),sa=s("a"),$i=s("span"),c(Gs.$$.fragment),$w=f(),_i=s("span"),_w=o("M"),If=f(),Ie=s("h3"),ra=s("a"),ki=s("span"),c(Js.$$.fragment),kw=f(),yi=s("span"),yw=o("masked language modeling (MLM)"),Vf=f(),In=s("p"),Ew=o(`A pretraining task where the model sees a corrupted version of the texts, usually done by
masking some tokens randomly, and has to predict the original text.`),Ff=f(),Ve=s("h3"),na=s("a"),Ei=s("span"),c(Rs.$$.fragment),Aw=f(),Ai=s("span"),xw=o("multimodal"),Hf=f(),Vn=s("p"),jw=o("A task that combines texts with another kind of inputs (for instance images)."),Zf=f(),Fe=s("h2"),oa=s("a"),xi=s("span"),c(Xs.$$.fragment),Tw=f(),ji=s("span"),Pw=o("N"),Df=f(),He=s("h3"),la=s("a"),Ti=s("span"),c(Os.$$.fragment),Nw=f(),Pi=s("span"),Sw=o("Natural language generation (NLG)"),Uf=f(),ia=s("p"),qw=o("All tasks related to generating text (for instance, "),Ls=s("a"),Mw=o("Write With Transformers"),Cw=o(", translation)."),Bf=f(),Ze=s("h3"),ha=s("a"),Ni=s("span"),c(Qs.$$.fragment),zw=f(),Si=s("span"),Iw=o("Natural language processing (NLP)"),Wf=f(),Fn=s("p"),Vw=o("A generic way to say \u201Cdeal with texts\u201D."),Gf=f(),De=s("h3"),pa=s("a"),qi=s("span"),c(Ys.$$.fragment),Fw=f(),Mi=s("span"),Hw=o("Natural language understanding (NLU)"),Jf=f(),Hn=s("p"),Zw=o(`All tasks related to understanding what is in a text (for instance classifying the
whole text, individual words).`),Rf=f(),Ue=s("h2"),fa=s("a"),Ci=s("span"),c(Ks.$$.fragment),Dw=f(),zi=s("span"),Uw=o("P"),Xf=f(),Be=s("h3"),da=s("a"),Ii=s("span"),c(er.$$.fragment),Bw=f(),Vi=s("span"),Ww=o("pipeline"),Of=f(),Zn=s("p"),Gw=o("A pipeline in \u{1F917} Transformers is an abstraction referring to a series of steps that are executed in a specific order to preprocess and transform data and return a prediction from a model. Some example stages found in a pipeline might be data preprocessing, feature extraction, and normalization."),Lf=f(),ca=s("p"),Jw=o("For more details, see "),tr=s("a"),Rw=o("Pipelines for inference"),Xw=o("."),Qf=f(),We=s("h3"),ua=s("a"),Fi=s("span"),c(ar.$$.fragment),Ow=f(),Hi=s("span"),Lw=o("pixel values"),Yf=f(),P=s("p"),Qw=o("A tensor of the numerical representations of an image that is passed to a model. The pixel values have a shape of ["),Zi=s("code"),Yw=o("batch_size"),Kw=o(", "),Di=s("code"),eb=o("num_channels"),tb=o(", "),Ui=s("code"),ab=o("height"),sb=o(", "),Bi=s("code"),rb=o("width"),nb=o("], and are generated from an image processor."),Kf=f(),Ge=s("h3"),ma=s("a"),Wi=s("span"),c(sr.$$.fragment),ob=f(),Gi=s("span"),lb=o("pooling"),ed=f(),Dn=s("p"),ib=o("An operation that reduces a matrix into a smaller matrix, either by taking the maximum or average of the pooled dimension(s). Pooling layers are commonly found between convolutional layers to downsample the feature representation."),td=f(),Je=s("h3"),va=s("a"),Ji=s("span"),c(rr.$$.fragment),hb=f(),Ri=s("span"),pb=o("position IDs"),ad=f(),ga=s("p"),fb=o(`Contrary to RNNs that have the position of each token embedded within them, transformers are unaware of the position of
each token. Therefore, the position IDs (`),Xi=s("code"),db=o("position_ids"),cb=o(`) are used by the model to identify each token\u2019s position in the
list of tokens.`),sd=f(),wa=s("p"),ub=o("They are an optional parameter. If no "),Oi=s("code"),mb=o("position_ids"),vb=o(` are passed to the model, the IDs are automatically created as
absolute positional embeddings.`),rd=f(),ba=s("p"),gb=o("Absolute positional embeddings are selected in the range "),Li=s("code"),wb=o("[0, config.max_position_embeddings - 1]"),bb=o(`. Some models use
other types of positional embeddings, such as sinusoidal position embeddings or relative position embeddings.`),nd=f(),Re=s("h3"),$a=s("a"),Qi=s("span"),c(nr.$$.fragment),$b=f(),Yi=s("span"),_b=o("preprocessing"),od=f(),_a=s("p"),kb=o("The task of preparing raw data into a format that can be easily consumed by machine learning models. For example, text is typically preprocessed by tokenization. To gain a better idea of what preprocessing looks like for other input types, check out the "),or=s("a"),yb=o("Preprocess"),Eb=o(" tutorial."),ld=f(),Xe=s("h3"),ka=s("a"),Ki=s("span"),c(lr.$$.fragment),Ab=f(),eh=s("span"),xb=o("pretrained model"),id=f(),Z=s("p"),jb=o(`A model that has been pretrained on some data (for instance all of Wikipedia). Pretraining methods involve a
self-supervised objective, which can be reading the text and trying to predict the next word (see `),Un=s("a"),Tb=o(`causal language
modeling`),Pb=o(") or masking some words and trying to predict them (see "),Bn=s("a"),Nb=o(`masked language
modeling`),Sb=o(")."),hd=f(),Wn=s("p"),qb=o("Speech and vision models have their own pretraining objectives. For example, Wav2Vec2 is a speech model pretrained on a contrastive task which requires the model to identify the \u201Ctrue\u201D speech representation from a set of \u201Cfalse\u201D speech representations. On the other hand, BEiT is a vision model pretrained on a masked image modeling task which masks some of the image patches and requires the model to predict the masked patches (similar to the masked language modeling objective)."),pd=f(),Oe=s("h2"),ya=s("a"),th=s("span"),c(ir.$$.fragment),Mb=f(),ah=s("span"),Cb=o("R"),fd=f(),Le=s("h3"),Ea=s("a"),sh=s("span"),c(hr.$$.fragment),zb=f(),rh=s("span"),Ib=o("recurrent neural network (RNN)"),dd=f(),Gn=s("p"),Vb=o("A type of model that uses a loop over a layer to process texts."),cd=f(),Qe=s("h3"),Aa=s("a"),nh=s("span"),c(pr.$$.fragment),Fb=f(),oh=s("span"),Hb=o("representation learning"),ud=f(),Jn=s("p"),Zb=o("A subfield of machine learning which focuses on learning meaningful representations of raw data. Some examples of representation learning techniques include word embeddings, autoencoders, and Generative Adversarial Networks (GANs)."),md=f(),Ye=s("h2"),xa=s("a"),lh=s("span"),c(fr.$$.fragment),Db=f(),ih=s("span"),Ub=o("S"),vd=f(),Ke=s("h3"),ja=s("a"),hh=s("span"),c(dr.$$.fragment),Bb=f(),ph=s("span"),Wb=o("sampling rate"),gd=f(),Rn=s("p"),Gb=o("A measurement in hertz of the number of samples (the audio signal) taken per second. The sampling rate is a result of discretizing a continuous signal such as speech."),wd=f(),et=s("h3"),Ta=s("a"),fh=s("span"),c(cr.$$.fragment),Jb=f(),dh=s("span"),Rb=o("self-attention"),bd=f(),Xn=s("p"),Xb=o("Each element of the input finds out which other elements of the input they should attend to."),$d=f(),tt=s("h3"),Pa=s("a"),ch=s("span"),c(ur.$$.fragment),Ob=f(),uh=s("span"),Lb=o("self-supervised learning"),_d=f(),D=s("p"),Qb=o("A category of machine learning techniques in which a model creates its own learning objective from unlabeled data. It differs from "),On=s("a"),Yb=o("unsupervised learning"),Kb=o(" and "),Ln=s("a"),e$=o("supervised learning"),t$=o(" in that the learning process is supervised, but not explicitly from the user."),kd=f(),Na=s("p"),a$=o("One example of self-supervised learning is "),Qn=s("a"),s$=o("masked language modeling"),r$=o(", where a model is passed sentences with a proportion of its tokens removed and learns to predict the missing tokens."),yd=f(),at=s("h3"),Sa=s("a"),mh=s("span"),c(mr.$$.fragment),n$=f(),vh=s("span"),o$=o("semi-supervised learning"),Ed=f(),U=s("p"),l$=o("A broad category of machine learning training techniques that leverages a small amount of labeled data with a larger quantity of unlabeled data to improve the accuracy of a model, unlike "),Yn=s("a"),i$=o("supervised learning"),h$=o(" and "),Kn=s("a"),p$=o("unsupervised learning"),f$=o("."),Ad=f(),eo=s("p"),d$=o("An example of a semi-supervised learning approach is \u201Cself-training\u201D, in which a model is trained on labeled data, and then used to make predictions on the unlabeled data. The portion of the unlabeled data that the model predicts with the most confidence gets added to the labeled dataset and used to retrain the model."),xd=f(),st=s("h3"),qa=s("a"),gh=s("span"),c(vr.$$.fragment),c$=f(),wh=s("span"),u$=o("sequence-to-sequence (seq2seq)"),jd=f(),B=s("p"),m$=o(`Models that generate a new sequence from an input, like translation models, or summarization models (such as
`),to=s("a"),v$=o("Bart"),g$=o(" or "),ao=s("a"),w$=o("T5"),b$=o(")."),Td=f(),rt=s("h3"),Ma=s("a"),bh=s("span"),c(gr.$$.fragment),$$=f(),$h=s("span"),_$=o("stride"),Pd=f(),W=s("p"),k$=o("In "),so=s("a"),y$=o("convolution"),E$=o(" or "),ro=s("a"),A$=o("pooling"),x$=o(", the stride refers to the distance the kernel is moved over a matrix. A stride of 1 means the kernel is moved one pixel over at a time, and a stride of 2 means the kernel is moved two pixels over at a time."),Nd=f(),nt=s("h3"),Ca=s("a"),_h=s("span"),c(wr.$$.fragment),j$=f(),kh=s("span"),T$=o("supervised learning"),Sd=f(),no=s("p"),P$=o("A form of model training that directly uses labeled data to correct and instruct model performance. Data is fed into the model being trained, and its predictions are compared to the known labels. The model updates its weights based on how incorrect its predictions were, and the process is repeated to optimize model performance."),qd=f(),ot=s("h2"),za=s("a"),yh=s("span"),c(br.$$.fragment),N$=f(),Eh=s("span"),S$=o("T"),Md=f(),lt=s("h3"),Ia=s("a"),Ah=s("span"),c($r.$$.fragment),q$=f(),xh=s("span"),M$=o("token"),Cd=f(),oo=s("p"),C$=o(`A part of a sentence, usually a word, but can also be a subword (non-common words are often split in subwords) or a
punctuation symbol.`),zd=f(),it=s("h3"),Va=s("a"),jh=s("span"),c(_r.$$.fragment),z$=f(),Th=s("span"),I$=o("token Type IDs"),Id=f(),lo=s("p"),V$=o("Some models\u2019 purpose is to do classification on pairs of sentences or question answering."),Vd=f(),c(kr.$$.fragment),Fd=f(),G=s("p"),F$=o(`These require two different sequences to be joined in a single \u201Cinput_ids\u201D entry, which usually is performed with the
help of special tokens, such as the classifier (`),Ph=s("code"),H$=o("[CLS]"),Z$=o(") and separator ("),Nh=s("code"),D$=o("[SEP]"),U$=o(`) tokens. For example, the BERT model
builds its two sequence input as such:`),Hd=f(),c(yr.$$.fragment),Zd=f(),Fa=s("p"),B$=o("We can use our tokenizer to automatically generate such a sentence by passing the two sequences to "),Sh=s("code"),W$=o("tokenizer"),G$=o(` as two
arguments (and not a list, like before) like this:`),Dd=f(),c(Er.$$.fragment),Ud=f(),io=s("p"),J$=o("which will return:"),Bd=f(),c(Ar.$$.fragment),Wd=f(),ho=s("p"),R$=o(`This is enough for some models to understand where one sequence ends and where another begins. However, other models,
such as BERT, also deploy token type IDs (also called segment IDs). They are represented as a binary mask identifying
the two types of sequence in the model.`),Gd=f(),po=s("p"),X$=o("The tokenizer returns this mask as the \u201Ctoken_type_ids\u201D entry:"),Jd=f(),c(xr.$$.fragment),Rd=f(),J=s("p"),O$=o("The first sequence, the \u201Ccontext\u201D used for the question, has all its tokens represented by a "),qh=s("code"),L$=o("0"),Q$=o(`, whereas the second
sequence, corresponding to the \u201Cquestion\u201D, has all its tokens represented by a `),Mh=s("code"),Y$=o("1"),K$=o("."),Xd=f(),R=s("p"),e2=o("Some models, like "),fo=s("a"),t2=o("XLNetModel"),a2=o(" use an additional token represented by a "),Ch=s("code"),s2=o("2"),r2=o("."),Od=f(),ht=s("h3"),Ha=s("a"),zh=s("span"),c(jr.$$.fragment),n2=f(),Ih=s("span"),o2=o("transfer learning"),Ld=f(),co=s("p"),l2=o("A technique that involves taking a pretrained model and adapting it to a dataset specific to your task. Instead of training a model from scratch, you can leverage knowledge obtained from an existing model as a starting point. This speeds up the learning process and reduces the amount of training data needed."),Qd=f(),pt=s("h3"),Za=s("a"),Vh=s("span"),c(Tr.$$.fragment),i2=f(),Fh=s("span"),h2=o("transformer"),Yd=f(),uo=s("p"),p2=o("Self-attention based deep learning model architecture."),Kd=f(),ft=s("h2"),Da=s("a"),Hh=s("span"),c(Pr.$$.fragment),f2=f(),Zh=s("span"),d2=o("U"),ec=f(),dt=s("h3"),Ua=s("a"),Dh=s("span"),c(Nr.$$.fragment),c2=f(),Uh=s("span"),u2=o("unsupervised learning"),tc=f(),mo=s("p"),m2=o("A form of model training in which data provided to the model is not labeled. Unsupervised learning techniques leverage statistical information of the data distribution to find patterns useful for the task at hand."),this.h()},l(e){const i=TE('[data-svelte="svelte-1phssyn"]',document.head);E=r(i,"META",{name:!0,content:!0}),i.forEach(t),ct=d(e),j=r(e,"H1",{class:!0});var Sr=n(j);S=r(Sr,"A",{id:!0,class:!0,href:!0});var v2=n(S);So=r(v2,"SPAN",{});var g2=n(So);u(Ra.$$.fragment,g2),g2.forEach(t),v2.forEach(t),Nu=d(Sr),qo=r(Sr,"SPAN",{});var w2=n(qo);Su=l(w2,"Glossary"),w2.forEach(t),Sr.forEach(t),Xh=d(e),Cr=r(e,"P",{});var b2=n(Cr);qu=l(b2,`This glossary defines general machine learning and \u{1F917} Transformers terms to help you better understand the
documentation.`),b2.forEach(t),Oh=d(e),Q=r(e,"H2",{class:!0});var sc=n(Q);ut=r(sc,"A",{id:!0,class:!0,href:!0});var $2=n(ut);Mo=r($2,"SPAN",{});var _2=n(Mo);u(Xa.$$.fragment,_2),_2.forEach(t),$2.forEach(t),Mu=d(sc),Co=r(sc,"SPAN",{});var k2=n(Co);Cu=l(k2,"A"),k2.forEach(t),sc.forEach(t),Lh=d(e),Y=r(e,"H3",{class:!0});var rc=n(Y);mt=r(rc,"A",{id:!0,class:!0,href:!0});var y2=n(mt);zo=r(y2,"SPAN",{});var E2=n(zo);u(Oa.$$.fragment,E2),E2.forEach(t),y2.forEach(t),zu=d(rc),Io=r(rc,"SPAN",{});var A2=n(Io);Iu=l(A2,"attention mask"),A2.forEach(t),rc.forEach(t),Qh=d(e),zr=r(e,"P",{});var x2=n(zr);Vu=l(x2,"The attention mask is an optional argument used when batching sequences together."),x2.forEach(t),Yh=d(e),u(La.$$.fragment,e),Kh=d(e),Ir=r(e,"P",{});var j2=n(Ir);Fu=l(j2,"This argument indicates to the model which tokens should be attended to, and which should not."),j2.forEach(t),ep=d(e),Vr=r(e,"P",{});var T2=n(Vr);Hu=l(T2,"For example, consider these two sequences:"),T2.forEach(t),tp=d(e),u(Qa.$$.fragment,e),ap=d(e),Fr=r(e,"P",{});var P2=n(Fr);Zu=l(P2,"The encoded versions have different lengths:"),P2.forEach(t),sp=d(e),u(Ya.$$.fragment,e),rp=d(e),Hr=r(e,"P",{});var N2=n(Hr);Du=l(N2,`Therefore, we can\u2019t put them together in the same tensor as-is. The first sequence needs to be padded up to the length
of the second one, or the second one needs to be truncated down to the length of the first one.`),N2.forEach(t),np=d(e),Zr=r(e,"P",{});var S2=n(Zr);Uu=l(S2,`In the first case, the list of IDs will be extended by the padding indices. We can pass a list to the tokenizer and ask
it to pad like this:`),S2.forEach(t),op=d(e),u(Ka.$$.fragment,e),lp=d(e),Dr=r(e,"P",{});var q2=n(Dr);Bu=l(q2,"We can see that 0s have been added on the right of the first sentence to make it the same length as the second one:"),q2.forEach(t),ip=d(e),u(es.$$.fragment,e),hp=d(e),M=r(e,"P",{});var Ba=n(M);Wu=l(Ba,`This can then be converted into a tensor in PyTorch or TensorFlow. The attention mask is a binary tensor indicating the
position of the padded indices so that the model does not attend to them. For the `),Ur=r(Ba,"A",{href:!0});var M2=n(Ur);Gu=l(M2,"BertTokenizer"),M2.forEach(t),Ju=l(Ba,", "),Vo=r(Ba,"CODE",{});var C2=n(Vo);Ru=l(C2,"1"),C2.forEach(t),Xu=l(Ba,` indicates a
value that should be attended to, while `),Fo=r(Ba,"CODE",{});var z2=n(Fo);Ou=l(z2,"0"),z2.forEach(t),Lu=l(Ba,` indicates a padded value. This attention mask is in the dictionary returned
by the tokenizer under the key \u201Cattention_mask\u201D:`),Ba.forEach(t),pp=d(e),u(ts.$$.fragment,e),fp=d(e),K=r(e,"H3",{class:!0});var nc=n(K);vt=r(nc,"A",{id:!0,class:!0,href:!0});var I2=n(vt);Ho=r(I2,"SPAN",{});var V2=n(Ho);u(as.$$.fragment,V2),V2.forEach(t),I2.forEach(t),Qu=d(nc),Zo=r(nc,"SPAN",{});var F2=n(Zo);Yu=l(F2,"autoencoding models"),F2.forEach(t),nc.forEach(t),dp=d(e),ee=r(e,"P",{});var Bh=n(ee);Ku=l(Bh,"See "),Br=r(Bh,"A",{href:!0});var H2=n(Br);em=l(H2,"encoder models"),H2.forEach(t),tm=l(Bh," and "),Wr=r(Bh,"A",{href:!0});var Z2=n(Wr);am=l(Z2,"masked language modeling"),Z2.forEach(t),Bh.forEach(t),cp=d(e),te=r(e,"H3",{class:!0});var oc=n(te);gt=r(oc,"A",{id:!0,class:!0,href:!0});var D2=n(gt);Do=r(D2,"SPAN",{});var U2=n(Do);u(ss.$$.fragment,U2),U2.forEach(t),D2.forEach(t),sm=d(oc),Uo=r(oc,"SPAN",{});var B2=n(Uo);rm=l(B2,"autoregressive models"),B2.forEach(t),oc.forEach(t),up=d(e),ae=r(e,"P",{});var Wh=n(ae);nm=l(Wh,"See "),Gr=r(Wh,"A",{href:!0});var W2=n(Gr);om=l(W2,"causal language modeling"),W2.forEach(t),lm=l(Wh," and "),Jr=r(Wh,"A",{href:!0});var G2=n(Jr);im=l(G2,"decoder models"),G2.forEach(t),Wh.forEach(t),mp=d(e),se=r(e,"H2",{class:!0});var lc=n(se);wt=r(lc,"A",{id:!0,class:!0,href:!0});var J2=n(wt);Bo=r(J2,"SPAN",{});var R2=n(Bo);u(rs.$$.fragment,R2),R2.forEach(t),J2.forEach(t),hm=d(lc),Wo=r(lc,"SPAN",{});var X2=n(Wo);pm=l(X2,"B"),X2.forEach(t),lc.forEach(t),vp=d(e),re=r(e,"H3",{class:!0});var ic=n(re);bt=r(ic,"A",{id:!0,class:!0,href:!0});var O2=n(bt);Go=r(O2,"SPAN",{});var L2=n(Go);u(ns.$$.fragment,L2),L2.forEach(t),O2.forEach(t),fm=d(ic),Jo=r(ic,"SPAN",{});var Q2=n(Jo);dm=l(Q2,"backbone"),Q2.forEach(t),ic.forEach(t),gp=d(e),T=r(e,"P",{});var X=n(T);cm=l(X,"The backbone is the network (embeddings and layers) that outputs the raw hidden states or features. It is usually connected to a "),Rr=r(X,"A",{href:!0});var Y2=n(Rr);um=l(Y2,"head"),Y2.forEach(t),mm=l(X," which accepts the features as its input to make a prediction. For example, "),Xr=r(X,"A",{href:!0});var K2=n(Xr);vm=l(K2,"ViTModel"),K2.forEach(t),gm=l(X," is a backbone without a specific head on top. Other models can also use "),Ro=r(X,"CODE",{});var e3=n(Ro);wm=l(e3,"VitModel"),e3.forEach(t),bm=l(X," as a backbone such as "),Or=r(X,"A",{href:!0});var t3=n(Or);$m=l(t3,"DPT"),t3.forEach(t),_m=l(X,"."),X.forEach(t),wp=d(e),ne=r(e,"H2",{class:!0});var hc=n(ne);$t=r(hc,"A",{id:!0,class:!0,href:!0});var a3=n($t);Xo=r(a3,"SPAN",{});var s3=n(Xo);u(os.$$.fragment,s3),s3.forEach(t),a3.forEach(t),km=d(hc),Oo=r(hc,"SPAN",{});var r3=n(Oo);ym=l(r3,"C"),r3.forEach(t),hc.forEach(t),bp=d(e),oe=r(e,"H3",{class:!0});var pc=n(oe);_t=r(pc,"A",{id:!0,class:!0,href:!0});var n3=n(_t);Lo=r(n3,"SPAN",{});var o3=n(Lo);u(ls.$$.fragment,o3),o3.forEach(t),n3.forEach(t),Em=d(pc),Qo=r(pc,"SPAN",{});var l3=n(Qo);Am=l(l3,"causal language modeling"),l3.forEach(t),pc.forEach(t),$p=d(e),Lr=r(e,"P",{});var i3=n(Lr);xm=l(i3,`A pretraining task where the model reads the texts in order and has to predict the next word. It\u2019s usually done by
reading the whole sentence but using a mask inside the model to hide the future tokens at a certain timestep.`),i3.forEach(t),_p=d(e),le=r(e,"H3",{class:!0});var fc=n(le);kt=r(fc,"A",{id:!0,class:!0,href:!0});var h3=n(kt);Yo=r(h3,"SPAN",{});var p3=n(Yo);u(is.$$.fragment,p3),p3.forEach(t),h3.forEach(t),jm=d(fc),Ko=r(fc,"SPAN",{});var f3=n(Ko);Tm=l(f3,"channel"),f3.forEach(t),fc.forEach(t),kp=d(e),k=r(e,"P",{});var N=n(k);Pm=l(N,"Color images are made up of some combination of values in three channels - red, green, and blue (RGB) - and grayscale images only have one channel. In \u{1F917} Transformers, the channel can be the first or last dimension of an image\u2019s tensor: ["),el=r(N,"CODE",{});var d3=n(el);Nm=l(d3,"n_channels"),d3.forEach(t),Sm=l(N,", "),tl=r(N,"CODE",{});var c3=n(tl);qm=l(c3,"height"),c3.forEach(t),Mm=l(N,", "),al=r(N,"CODE",{});var u3=n(al);Cm=l(u3,"width"),u3.forEach(t),zm=l(N,"] or ["),sl=r(N,"CODE",{});var m3=n(sl);Im=l(m3,"height"),m3.forEach(t),Vm=l(N,", "),rl=r(N,"CODE",{});var v3=n(rl);Fm=l(v3,"width"),v3.forEach(t),Hm=l(N,", "),nl=r(N,"CODE",{});var g3=n(nl);Zm=l(g3,"n_channels"),g3.forEach(t),Dm=l(N,"]."),N.forEach(t),yp=d(e),ie=r(e,"H3",{class:!0});var dc=n(ie);yt=r(dc,"A",{id:!0,class:!0,href:!0});var w3=n(yt);ol=r(w3,"SPAN",{});var b3=n(ol);u(hs.$$.fragment,b3),b3.forEach(t),w3.forEach(t),Um=d(dc),ll=r(dc,"SPAN",{});var $3=n(ll);Bm=l($3,"connectionist temporal classification (CTC)"),$3.forEach(t),dc.forEach(t),Ep=d(e),Qr=r(e,"P",{});var _3=n(Qr);Wm=l(_3,"An algorithm which allows a model to learn without knowing exactly how the input and output are aligned; CTC calculates the distribution of all possible outputs for a given input and chooses the most likely output from it. CTC is commonly used in speech recognition tasks because speech doesn\u2019t always cleanly align with the transcript for a variety of reasons such as a speaker\u2019s different speech rates."),_3.forEach(t),Ap=d(e),he=r(e,"H3",{class:!0});var cc=n(he);Et=r(cc,"A",{id:!0,class:!0,href:!0});var k3=n(Et);il=r(k3,"SPAN",{});var y3=n(il);u(ps.$$.fragment,y3),y3.forEach(t),k3.forEach(t),Gm=d(cc),hl=r(cc,"SPAN",{});var E3=n(hl);Jm=l(E3,"convolution"),E3.forEach(t),cc.forEach(t),xp=d(e),Yr=r(e,"P",{});var A3=n(Yr);Rm=l(A3,"A type of layer in a neural network where the input matrix is multiplied element-wise by a smaller matrix (kernel or filter) and the values are summed up in a new matrix. This is known as a convolutional operation which is repeated over the entire input matrix. Each operation is applied to a different segment of the input matrix. Convolutional neural networks (CNNs) are commonly used in computer vision."),A3.forEach(t),jp=d(e),pe=r(e,"H2",{class:!0});var uc=n(pe);At=r(uc,"A",{id:!0,class:!0,href:!0});var x3=n(At);pl=r(x3,"SPAN",{});var j3=n(pl);u(fs.$$.fragment,j3),j3.forEach(t),x3.forEach(t),Xm=d(uc),fl=r(uc,"SPAN",{});var T3=n(fl);Om=l(T3,"D"),T3.forEach(t),uc.forEach(t),Tp=d(e),fe=r(e,"H3",{class:!0});var mc=n(fe);xt=r(mc,"A",{id:!0,class:!0,href:!0});var P3=n(xt);dl=r(P3,"SPAN",{});var N3=n(dl);u(ds.$$.fragment,N3),N3.forEach(t),P3.forEach(t),Lm=d(mc),cl=r(mc,"SPAN",{});var S3=n(cl);Qm=l(S3,"decoder input IDs"),S3.forEach(t),mc.forEach(t),Pp=d(e),Kr=r(e,"P",{});var q3=n(Kr);Ym=l(q3,`This input is specific to encoder-decoder models, and contains the input IDs that will be fed to the decoder. These
inputs should be used for sequence to sequence tasks, such as translation or summarization, and are usually built in a
way specific to each model.`),q3.forEach(t),Np=d(e),C=r(e,"P",{});var Wa=n(C);Km=l(Wa,"Most encoder-decoder models (BART, T5) create their "),ul=r(Wa,"CODE",{});var M3=n(ul);ev=l(M3,"decoder_input_ids"),M3.forEach(t),tv=l(Wa," on their own from the "),ml=r(Wa,"CODE",{});var C3=n(ml);av=l(C3,"labels"),C3.forEach(t),sv=l(Wa,`. In such models,
passing the `),vl=r(Wa,"CODE",{});var z3=n(vl);rv=l(z3,"labels"),z3.forEach(t),nv=l(Wa," is the preferred way to handle training."),Wa.forEach(t),Sp=d(e),en=r(e,"P",{});var I3=n(en);ov=l(I3,"Please check each model\u2019s docs to see how they handle these input IDs for sequence to sequence training."),I3.forEach(t),qp=d(e),de=r(e,"H3",{class:!0});var vc=n(de);jt=r(vc,"A",{id:!0,class:!0,href:!0});var V3=n(jt);gl=r(V3,"SPAN",{});var F3=n(gl);u(cs.$$.fragment,F3),F3.forEach(t),V3.forEach(t),lv=d(vc),wl=r(vc,"SPAN",{});var H3=n(wl);iv=l(H3,"decoder models"),H3.forEach(t),vc.forEach(t),Mp=d(e),tn=r(e,"P",{});var Z3=n(tn);hv=l(Z3,`Also referred to as autoregressive models, decoder models involve a pretraining task (called causal language modeling) where the model reads the texts in order and has to predict the next word. It\u2019s usually done by
reading the whole sentence with a mask to hide future tokens at a certain timestep.`),Z3.forEach(t),Cp=d(e),u(us.$$.fragment,e),zp=d(e),ce=r(e,"H3",{class:!0});var gc=n(ce);Tt=r(gc,"A",{id:!0,class:!0,href:!0});var D3=n(Tt);bl=r(D3,"SPAN",{});var U3=n(bl);u(ms.$$.fragment,U3),U3.forEach(t),D3.forEach(t),pv=d(gc),$l=r(gc,"SPAN",{});var B3=n($l);fv=l(B3,"deep learning (DL)"),B3.forEach(t),gc.forEach(t),Ip=d(e),an=r(e,"P",{});var W3=n(an);dv=l(W3,"Machine learning algorithms which uses neural networks with several layers."),W3.forEach(t),Vp=d(e),ue=r(e,"H2",{class:!0});var wc=n(ue);Pt=r(wc,"A",{id:!0,class:!0,href:!0});var G3=n(Pt);_l=r(G3,"SPAN",{});var J3=n(_l);u(vs.$$.fragment,J3),J3.forEach(t),G3.forEach(t),cv=d(wc),kl=r(wc,"SPAN",{});var R3=n(kl);uv=l(R3,"E"),R3.forEach(t),wc.forEach(t),Fp=d(e),me=r(e,"H3",{class:!0});var bc=n(me);Nt=r(bc,"A",{id:!0,class:!0,href:!0});var X3=n(Nt);yl=r(X3,"SPAN",{});var O3=n(yl);u(gs.$$.fragment,O3),O3.forEach(t),X3.forEach(t),mv=d(bc),El=r(bc,"SPAN",{});var L3=n(El);vv=l(L3,"encoder models"),L3.forEach(t),bc.forEach(t),Hp=d(e),St=r(e,"P",{});var $c=n(St);gv=l($c,"Also known as autoencoding models, encoder models take an input (such as text or images) and transform them into a condensed numerical representation called an embedding. Oftentimes, encoder models are pretrained using techniques like "),sn=r($c,"A",{href:!0});var Q3=n(sn);wv=l(Q3,"masked language modeling"),Q3.forEach(t),bv=l($c,", which masks parts of the input sequence and forces the model to create more meaningful representations."),$c.forEach(t),Zp=d(e),u(ws.$$.fragment,e),Dp=d(e),ve=r(e,"H2",{class:!0});var _c=n(ve);qt=r(_c,"A",{id:!0,class:!0,href:!0});var Y3=n(qt);Al=r(Y3,"SPAN",{});var K3=n(Al);u(bs.$$.fragment,K3),K3.forEach(t),Y3.forEach(t),$v=d(_c),xl=r(_c,"SPAN",{});var e_=n(xl);_v=l(e_,"F"),e_.forEach(t),_c.forEach(t),Up=d(e),ge=r(e,"H3",{class:!0});var kc=n(ge);Mt=r(kc,"A",{id:!0,class:!0,href:!0});var t_=n(Mt);jl=r(t_,"SPAN",{});var a_=n(jl);u($s.$$.fragment,a_),a_.forEach(t),t_.forEach(t),kv=d(kc),Tl=r(kc,"SPAN",{});var s_=n(Tl);yv=l(s_,"feature extraction"),s_.forEach(t),kc.forEach(t),Bp=d(e),rn=r(e,"P",{});var r_=n(rn);Ev=l(r_,"The process of selecting and transforming raw data into a set of features that are more informative and useful for machine learning algorithms. Some examples of feature extraction include transforming raw text into word embeddings and extracting important features such as edges or shapes from image/video data."),r_.forEach(t),Wp=d(e),we=r(e,"H3",{class:!0});var yc=n(we);Ct=r(yc,"A",{id:!0,class:!0,href:!0});var n_=n(Ct);Pl=r(n_,"SPAN",{});var o_=n(Pl);u(_s.$$.fragment,o_),o_.forEach(t),n_.forEach(t),Av=d(yc),Nl=r(yc,"SPAN",{});var l_=n(Nl);xv=l(l_,"feed forward chunking"),l_.forEach(t),yc.forEach(t),Gp=d(e),zt=r(e,"P",{});var Ec=n(zt);jv=l(Ec,`In each residual attention block in transformers the self-attention layer is usually followed by 2 feed forward layers.
The intermediate embedding size of the feed forward layers is often bigger than the hidden size of the model (e.g., for
`),Sl=r(Ec,"CODE",{});var i_=n(Sl);Tv=l(i_,"bert-base-uncased"),i_.forEach(t),Pv=l(Ec,")."),Ec.forEach(t),Jp=d(e),$=r(e,"P",{});var y=n($);Nv=l(y,"For an input of size "),ql=r(y,"CODE",{});var h_=n(ql);Sv=l(h_,"[batch_size, sequence_length]"),h_.forEach(t),qv=l(y,`, the memory required to store the intermediate feed forward
embeddings `),Ml=r(y,"CODE",{});var p_=n(Ml);Mv=l(p_,"[batch_size, sequence_length, config.intermediate_size]"),p_.forEach(t),Cv=l(y,` can account for a large fraction of the memory
use. The authors of `),ks=r(y,"A",{href:!0,rel:!0});var f_=n(ks);zv=l(f_,"Reformer: The Efficient Transformer"),f_.forEach(t),Iv=l(y,` noticed that since the
computation is independent of the `),Cl=r(y,"CODE",{});var d_=n(Cl);Vv=l(d_,"sequence_length"),d_.forEach(t),Fv=l(y,` dimension, it is mathematically equivalent to compute the output
embeddings of both feed forward layers `),zl=r(y,"CODE",{});var c_=n(zl);Hv=l(c_,"[batch_size, config.hidden_size]_0, ..., [batch_size, config.hidden_size]_n"),c_.forEach(t),Zv=l(y,`
individually and concat them afterward to `),Il=r(y,"CODE",{});var u_=n(Il);Dv=l(u_,"[batch_size, sequence_length, config.hidden_size]"),u_.forEach(t),Uv=l(y," with "),Vl=r(y,"CODE",{});var m_=n(Vl);Bv=l(m_,"n = sequence_length"),m_.forEach(t),Wv=l(y,`, which trades increased computation time against reduced memory use, but yields a mathematically
`),Fl=r(y,"STRONG",{});var v_=n(Fl);Gv=l(v_,"equivalent"),v_.forEach(t),Jv=l(y," result."),y.forEach(t),Rp=d(e),z=r(e,"P",{});var Ga=n(z);Rv=l(Ga,"For models employing the function "),nn=r(Ga,"A",{href:!0});var g_=n(nn);Xv=l(g_,"apply_chunking_to_forward()"),g_.forEach(t),Ov=l(Ga,", the "),Hl=r(Ga,"CODE",{});var w_=n(Hl);Lv=l(w_,"chunk_size"),w_.forEach(t),Qv=l(Ga,` defines the number of output
embeddings that are computed in parallel and thus defines the trade-off between memory and time complexity. If
`),Zl=r(Ga,"CODE",{});var b_=n(Zl);Yv=l(b_,"chunk_size"),b_.forEach(t),Kv=l(Ga," is set to 0, no feed forward chunking is done."),Ga.forEach(t),Xp=d(e),be=r(e,"H3",{class:!0});var Ac=n(be);It=r(Ac,"A",{id:!0,class:!0,href:!0});var $_=n(It);Dl=r($_,"SPAN",{});var __=n(Dl);u(ys.$$.fragment,__),__.forEach(t),$_.forEach(t),e1=d(Ac),Ul=r(Ac,"SPAN",{});var k_=n(Ul);t1=l(k_,"finetuned models"),k_.forEach(t),Ac.forEach(t),Op=d(e),Vt=r(e,"P",{});var xc=n(Vt);a1=l(xc,"Finetuning is a form of transfer learning which involves taking a pretrained model, freezing its weights, and replacing the output layer with a newly added "),on=r(xc,"A",{href:!0});var y_=n(on);s1=l(y_,"model head"),y_.forEach(t),r1=l(xc,". The model head is trained on your target dataset."),xc.forEach(t),Lp=d(e),Ft=r(e,"P",{});var jc=n(Ft);n1=l(jc,"See the "),Es=r(jc,"A",{href:!0,rel:!0});var E_=n(Es);o1=l(E_,"Fine-tune a pretrained model"),E_.forEach(t),l1=l(jc," tutorial for more details, and learn how to fine-tune models with \u{1F917} Transformers."),jc.forEach(t),Qp=d(e),$e=r(e,"H2",{class:!0});var Tc=n($e);Ht=r(Tc,"A",{id:!0,class:!0,href:!0});var A_=n(Ht);Bl=r(A_,"SPAN",{});var x_=n(Bl);u(As.$$.fragment,x_),x_.forEach(t),A_.forEach(t),i1=d(Tc),Wl=r(Tc,"SPAN",{});var j_=n(Wl);h1=l(j_,"H"),j_.forEach(t),Tc.forEach(t),Yp=d(e),_e=r(e,"H3",{class:!0});var Pc=n(_e);Zt=r(Pc,"A",{id:!0,class:!0,href:!0});var T_=n(Zt);Gl=r(T_,"SPAN",{});var P_=n(Gl);u(xs.$$.fragment,P_),P_.forEach(t),T_.forEach(t),p1=d(Pc),Jl=r(Pc,"SPAN",{});var N_=n(Jl);f1=l(N_,"head"),N_.forEach(t),Pc.forEach(t),Kp=d(e),ln=r(e,"P",{});var S_=n(ln);d1=l(S_,"The model head refers to the last layer of a neural network that accepts the raw hidden states and projects them onto a different dimension. There is a different model head for each task. For example:"),S_.forEach(t),ef=d(e),V=r(e,"UL",{});var vo=n(V);Dt=r(vo,"LI",{});var Gh=n(Dt);hn=r(Gh,"A",{href:!0});var q_=n(hn);c1=l(q_,"GPT2ForSequenceClassification"),q_.forEach(t),u1=l(Gh," is a sequence classification head - a linear layer - on top of the base "),pn=r(Gh,"A",{href:!0});var M_=n(pn);m1=l(M_,"GPT2Model"),M_.forEach(t),v1=l(Gh,"."),Gh.forEach(t),g1=d(vo),F=r(vo,"LI",{});var qr=n(F);fn=r(qr,"A",{href:!0});var C_=n(fn);w1=l(C_,"ViTForImageClassification"),C_.forEach(t),b1=l(qr," is an image classification head - a linear layer on top of the final hidden state of the "),Rl=r(qr,"CODE",{});var z_=n(Rl);$1=l(z_,"CLS"),z_.forEach(t),_1=l(qr," token - on top of the base "),dn=r(qr,"A",{href:!0});var I_=n(dn);k1=l(I_,"ViTModel"),I_.forEach(t),y1=l(qr,"."),qr.forEach(t),E1=d(vo),H=r(vo,"LI",{});var Mr=n(H);cn=r(Mr,"A",{href:!0});var V_=n(cn);A1=l(V_,"Wav2Vec2ForCTC"),V_.forEach(t),x1=l(Mr," ia a language modeling head with "),un=r(Mr,"A",{href:!0});var F_=n(un);j1=l(F_,"CTC"),F_.forEach(t),T1=l(Mr," on top of the base "),mn=r(Mr,"A",{href:!0});var H_=n(mn);P1=l(H_,"Wav2Vec2Model"),H_.forEach(t),N1=l(Mr,"."),Mr.forEach(t),vo.forEach(t),tf=d(e),ke=r(e,"H2",{class:!0});var Nc=n(ke);Ut=r(Nc,"A",{id:!0,class:!0,href:!0});var Z_=n(Ut);Xl=r(Z_,"SPAN",{});var D_=n(Xl);u(js.$$.fragment,D_),D_.forEach(t),Z_.forEach(t),S1=d(Nc),Ol=r(Nc,"SPAN",{});var U_=n(Ol);q1=l(U_,"I"),U_.forEach(t),Nc.forEach(t),af=d(e),ye=r(e,"H3",{class:!0});var Sc=n(ye);Bt=r(Sc,"A",{id:!0,class:!0,href:!0});var B_=n(Bt);Ll=r(B_,"SPAN",{});var W_=n(Ll);u(Ts.$$.fragment,W_),W_.forEach(t),B_.forEach(t),M1=d(Sc),Ql=r(Sc,"SPAN",{});var G_=n(Ql);C1=l(G_,"image patch"),G_.forEach(t),Sc.forEach(t),sf=d(e),Wt=r(e,"P",{});var qc=n(Wt);z1=l(qc,"Vision-based Transformers models split an image into smaller patches which are linearly embedded, and then passed as a sequence to the model. You can find the "),Yl=r(qc,"CODE",{});var J_=n(Yl);I1=l(J_,"patch_size"),J_.forEach(t),V1=l(qc," - or resolution - of the model in it\u2019s configuration."),qc.forEach(t),rf=d(e),Ee=r(e,"H3",{class:!0});var Mc=n(Ee);Gt=r(Mc,"A",{id:!0,class:!0,href:!0});var R_=n(Gt);Kl=r(R_,"SPAN",{});var X_=n(Kl);u(Ps.$$.fragment,X_),X_.forEach(t),R_.forEach(t),F1=d(Mc),ei=r(Mc,"SPAN",{});var O_=n(ei);H1=l(O_,"inference"),O_.forEach(t),Mc.forEach(t),nf=d(e),Jt=r(e,"P",{});var Cc=n(Jt);Z1=l(Cc,"Inference is the process of evaluating a model on new data after training is complete. See the "),Ns=r(Cc,"A",{href:!0,rel:!0});var L_=n(Ns);D1=l(L_,"Pipeline for inference"),L_.forEach(t),U1=l(Cc," tutorial to learn how to perform inference with \u{1F917} Transformers."),Cc.forEach(t),of=d(e),Ae=r(e,"H3",{class:!0});var zc=n(Ae);Rt=r(zc,"A",{id:!0,class:!0,href:!0});var Q_=n(Rt);ti=r(Q_,"SPAN",{});var Y_=n(ti);u(Ss.$$.fragment,Y_),Y_.forEach(t),Q_.forEach(t),B1=d(zc),ai=r(zc,"SPAN",{});var K_=n(ai);W1=l(K_,"input IDs"),K_.forEach(t),zc.forEach(t),lf=d(e),vn=r(e,"P",{});var ek=n(vn);G1=l(ek,`The input ids are often the only required parameters to be passed to the model as input. They are token indices,
numerical representations of tokens building the sequences that will be used as input by the model.`),ek.forEach(t),hf=d(e),u(qs.$$.fragment,e),pf=d(e),Xt=r(e,"P",{});var Ic=n(Xt);J1=l(Ic,`Each tokenizer works differently but the underlying mechanism remains the same. Here\u2019s an example using the BERT
tokenizer, which is a `),Ms=r(Ic,"A",{href:!0,rel:!0});var tk=n(Ms);R1=l(tk,"WordPiece"),tk.forEach(t),X1=l(Ic," tokenizer:"),Ic.forEach(t),ff=d(e),u(Cs.$$.fragment,e),df=d(e),gn=r(e,"P",{});var ak=n(gn);O1=l(ak,"The tokenizer takes care of splitting the sequence into tokens available in the tokenizer vocabulary."),ak.forEach(t),cf=d(e),u(zs.$$.fragment,e),uf=d(e),wn=r(e,"P",{});var sk=n(wn);L1=l(sk,`The tokens are either words or subwords. Here for instance, \u201CVRAM\u201D wasn\u2019t in the model vocabulary, so it\u2019s been split
in \u201CV\u201D, \u201CRA\u201D and \u201CM\u201D. To indicate those tokens are not separate words but parts of the same word, a double-hash prefix
is added for \u201CRA\u201D and \u201CM\u201D:`),sk.forEach(t),mf=d(e),u(Is.$$.fragment,e),vf=d(e),Ot=r(e,"P",{});var Vc=n(Ot);Q1=l(Vc,`These tokens can then be converted into IDs which are understandable by the model. This can be done by directly feeding
the sentence to the tokenizer, which leverages the Rust implementation of `),Vs=r(Vc,"A",{href:!0,rel:!0});var rk=n(Vs);Y1=l(rk,`\u{1F917}
Tokenizers`),rk.forEach(t),K1=l(Vc," for peak performance."),Vc.forEach(t),gf=d(e),u(Fs.$$.fragment,e),wf=d(e),Lt=r(e,"P",{});var Fc=n(Lt);eg=l(Fc,`The tokenizer returns a dictionary with all the arguments necessary for its corresponding model to work properly. The
token indices are under the key `),si=r(Fc,"CODE",{});var nk=n(si);tg=l(nk,"input_ids"),nk.forEach(t),ag=l(Fc,":"),Fc.forEach(t),bf=d(e),u(Hs.$$.fragment,e),$f=d(e),bn=r(e,"P",{});var ok=n(bn);sg=l(ok,`Note that the tokenizer automatically adds \u201Cspecial tokens\u201D (if the associated model relies on them) which are special
IDs the model sometimes uses.`),ok.forEach(t),_f=d(e),$n=r(e,"P",{});var lk=n($n);rg=l(lk,"If we decode the previous sequence of ids,"),lk.forEach(t),kf=d(e),u(Zs.$$.fragment,e),yf=d(e),_n=r(e,"P",{});var ik=n(_n);ng=l(ik,"we will see"),ik.forEach(t),Ef=d(e),u(Ds.$$.fragment,e),Af=d(e),Qt=r(e,"P",{});var Hc=n(Qt);og=l(Hc,"because this is the way a "),kn=r(Hc,"A",{href:!0});var hk=n(kn);lg=l(hk,"BertModel"),hk.forEach(t),ig=l(Hc," is going to expect its inputs."),Hc.forEach(t),xf=d(e),xe=r(e,"H2",{class:!0});var Zc=n(xe);Yt=r(Zc,"A",{id:!0,class:!0,href:!0});var pk=n(Yt);ri=r(pk,"SPAN",{});var fk=n(ri);u(Us.$$.fragment,fk),fk.forEach(t),pk.forEach(t),hg=d(Zc),ni=r(Zc,"SPAN",{});var dk=n(ni);pg=l(dk,"L"),dk.forEach(t),Zc.forEach(t),jf=d(e),je=r(e,"H3",{class:!0});var Dc=n(je);Kt=r(Dc,"A",{id:!0,class:!0,href:!0});var ck=n(Kt);oi=r(ck,"SPAN",{});var uk=n(oi);u(Bs.$$.fragment,uk),uk.forEach(t),ck.forEach(t),fg=d(Dc),li=r(Dc,"SPAN",{});var mk=n(li);dg=l(mk,"labels"),mk.forEach(t),Dc.forEach(t),Tf=d(e),yn=r(e,"P",{});var vk=n(yn);cg=l(vk,`The labels are an optional argument which can be passed in order for the model to compute the loss itself. These labels
should be the expected prediction of the model: it will use the standard loss in order to compute the loss between its
predictions and the expected value (the label).`),vk.forEach(t),Pf=d(e),En=r(e,"P",{});var gk=n(En);ug=l(gk,"These labels are different according to the model head, for example:"),gk.forEach(t),Nf=d(e),_=r(e,"UL",{});var A=n(_);Te=r(A,"LI",{});var go=n(Te);mg=l(go,"For sequence classification models, ("),An=r(go,"A",{href:!0});var wk=n(An);vg=l(wk,"BertForSequenceClassification"),wk.forEach(t),gg=l(go,`), the model expects a tensor of dimension
`),ii=r(go,"CODE",{});var bk=n(ii);wg=l(bk,"(batch_size)"),bk.forEach(t),bg=l(go," with each value of the batch corresponding to the expected label of the entire sequence."),go.forEach(t),$g=d(A),Pe=r(A,"LI",{});var wo=n(Pe);_g=l(wo,"For token classification models, ("),xn=r(wo,"A",{href:!0});var $k=n(xn);kg=l($k,"BertForTokenClassification"),$k.forEach(t),yg=l(wo,`), the model expects a tensor of dimension
`),hi=r(wo,"CODE",{});var _k=n(hi);Eg=l(_k,"(batch_size, seq_length)"),_k.forEach(t),Ag=l(wo," with each value corresponding to the expected label of each individual token."),wo.forEach(t),xg=d(A),Ne=r(A,"LI",{});var bo=n(Ne);jg=l(bo,"For masked language modeling, ("),jn=r(bo,"A",{href:!0});var kk=n(jn);Tg=l(kk,"BertForMaskedLM"),kk.forEach(t),Pg=l(bo,"), the model expects a tensor of dimension "),pi=r(bo,"CODE",{});var yk=n(pi);Ng=l(yk,"(batch_size, seq_length)"),yk.forEach(t),Sg=l(bo,` with each value corresponding to the expected label of each individual token: the labels being the token
ID for the masked token, and values to be ignored for the rest (usually -100).`),bo.forEach(t),qg=d(A),q=r(A,"LI",{});var O=n(q);Mg=l(O,"For sequence to sequence tasks, ("),Tn=r(O,"A",{href:!0});var Ek=n(Tn);Cg=l(Ek,"BartForConditionalGeneration"),Ek.forEach(t),zg=l(O,", "),Pn=r(O,"A",{href:!0});var Ak=n(Pn);Ig=l(Ak,"MBartForConditionalGeneration"),Ak.forEach(t),Vg=l(O,`), the model
expects a tensor of dimension `),fi=r(O,"CODE",{});var xk=n(fi);Fg=l(xk,"(batch_size, tgt_seq_length)"),xk.forEach(t),Hg=l(O,` with each value corresponding to the target sequences
associated with each input sequence. During training, both BART and T5 will make the appropriate
`),di=r(O,"CODE",{});var jk=n(di);Zg=l(jk,"decoder_input_ids"),jk.forEach(t),Dg=l(O,` and decoder attention masks internally. They usually do not need to be supplied. This does not
apply to models leveraging the Encoder-Decoder framework.`),O.forEach(t),Ug=d(A),Se=r(A,"LI",{});var $o=n(Se);Bg=l($o,"For image classification models, ("),Nn=r($o,"A",{href:!0});var Tk=n(Nn);Wg=l(Tk,"ViTForImageClassification"),Tk.forEach(t),Gg=l($o,`), the model expects a tensor of dimension
`),ci=r($o,"CODE",{});var Pk=n(ci);Jg=l(Pk,"(batch_size)"),Pk.forEach(t),Rg=l($o," with each value of the batch corresponding to the expected label of each individual image."),$o.forEach(t),Xg=d(A),qe=r(A,"LI",{});var _o=n(qe);Og=l(_o,"For semantic segmentation models, ("),Sn=r(_o,"A",{href:!0});var Nk=n(Sn);Lg=l(Nk,"SegformerForSemanticSegmentation"),Nk.forEach(t),Qg=l(_o,`), the model expects a tensor of dimension
`),ui=r(_o,"CODE",{});var Sk=n(ui);Yg=l(Sk,"(batch_size, height, width)"),Sk.forEach(t),Kg=l(_o," with each value of the batch corresponding to the expected label of each individual pixel."),_o.forEach(t),ew=d(A),I=r(A,"LI",{});var Ja=n(I);tw=l(Ja,"For object detection models, ("),qn=r(Ja,"A",{href:!0});var qk=n(qn);aw=l(qk,"DetrForObjectDetection"),qk.forEach(t),sw=l(Ja,`), the model expects a list of dictionaries with a
`),mi=r(Ja,"CODE",{});var Mk=n(mi);rw=l(Mk,"class_labels"),Mk.forEach(t),nw=l(Ja," and "),vi=r(Ja,"CODE",{});var Ck=n(vi);ow=l(Ck,"boxes"),Ck.forEach(t),lw=l(Ja," key where each value of the batch corresponds to the expected label and number of bounding boxes of each individual image."),Ja.forEach(t),iw=d(A),Me=r(A,"LI",{});var ko=n(Me);hw=l(ko,"For automatic speech recognition models, ("),Mn=r(ko,"A",{href:!0});var zk=n(Mn);pw=l(zk,"Wav2Vec2ForCTC"),zk.forEach(t),fw=l(ko,"), the model expects a tensor of dimension "),gi=r(ko,"CODE",{});var Ik=n(gi);dw=l(Ik,"(batch_size, target_length)"),Ik.forEach(t),cw=l(ko," with each value corresponding to the expected label of each individual token."),ko.forEach(t),A.forEach(t),Sf=d(e),u(ea.$$.fragment,e),qf=d(e),ta=r(e,"P",{});var Uc=n(ta);uw=l(Uc,"The base models ("),Cn=r(Uc,"A",{href:!0});var Vk=n(Cn);mw=l(Vk,"BertModel"),Vk.forEach(t),vw=l(Uc,`) do not accept labels, as these are the base transformer models, simply outputting
features.`),Uc.forEach(t),Mf=d(e),Ce=r(e,"H3",{class:!0});var Bc=n(Ce);aa=r(Bc,"A",{id:!0,class:!0,href:!0});var Fk=n(aa);wi=r(Fk,"SPAN",{});var Hk=n(wi);u(Ws.$$.fragment,Hk),Hk.forEach(t),Fk.forEach(t),gw=d(Bc),bi=r(Bc,"SPAN",{});var Zk=n(bi);ww=l(Zk,"large language models (LLM)"),Zk.forEach(t),Bc.forEach(t),Cf=d(e),zn=r(e,"P",{});var Dk=n(zn);bw=l(Dk,"A generic term that refers to transformer language models (GPT-3, BLOOM, OPT) that were trained on a large quantity of data. These models also tend to have a large number of learnable parameters (e.g. 175 billion for GPT-3)."),Dk.forEach(t),zf=d(e),ze=r(e,"H2",{class:!0});var Wc=n(ze);sa=r(Wc,"A",{id:!0,class:!0,href:!0});var Uk=n(sa);$i=r(Uk,"SPAN",{});var Bk=n($i);u(Gs.$$.fragment,Bk),Bk.forEach(t),Uk.forEach(t),$w=d(Wc),_i=r(Wc,"SPAN",{});var Wk=n(_i);_w=l(Wk,"M"),Wk.forEach(t),Wc.forEach(t),If=d(e),Ie=r(e,"H3",{class:!0});var Gc=n(Ie);ra=r(Gc,"A",{id:!0,class:!0,href:!0});var Gk=n(ra);ki=r(Gk,"SPAN",{});var Jk=n(ki);u(Js.$$.fragment,Jk),Jk.forEach(t),Gk.forEach(t),kw=d(Gc),yi=r(Gc,"SPAN",{});var Rk=n(yi);yw=l(Rk,"masked language modeling (MLM)"),Rk.forEach(t),Gc.forEach(t),Vf=d(e),In=r(e,"P",{});var Xk=n(In);Ew=l(Xk,`A pretraining task where the model sees a corrupted version of the texts, usually done by
masking some tokens randomly, and has to predict the original text.`),Xk.forEach(t),Ff=d(e),Ve=r(e,"H3",{class:!0});var Jc=n(Ve);na=r(Jc,"A",{id:!0,class:!0,href:!0});var Ok=n(na);Ei=r(Ok,"SPAN",{});var Lk=n(Ei);u(Rs.$$.fragment,Lk),Lk.forEach(t),Ok.forEach(t),Aw=d(Jc),Ai=r(Jc,"SPAN",{});var Qk=n(Ai);xw=l(Qk,"multimodal"),Qk.forEach(t),Jc.forEach(t),Hf=d(e),Vn=r(e,"P",{});var Yk=n(Vn);jw=l(Yk,"A task that combines texts with another kind of inputs (for instance images)."),Yk.forEach(t),Zf=d(e),Fe=r(e,"H2",{class:!0});var Rc=n(Fe);oa=r(Rc,"A",{id:!0,class:!0,href:!0});var Kk=n(oa);xi=r(Kk,"SPAN",{});var e0=n(xi);u(Xs.$$.fragment,e0),e0.forEach(t),Kk.forEach(t),Tw=d(Rc),ji=r(Rc,"SPAN",{});var t0=n(ji);Pw=l(t0,"N"),t0.forEach(t),Rc.forEach(t),Df=d(e),He=r(e,"H3",{class:!0});var Xc=n(He);la=r(Xc,"A",{id:!0,class:!0,href:!0});var a0=n(la);Ti=r(a0,"SPAN",{});var s0=n(Ti);u(Os.$$.fragment,s0),s0.forEach(t),a0.forEach(t),Nw=d(Xc),Pi=r(Xc,"SPAN",{});var r0=n(Pi);Sw=l(r0,"Natural language generation (NLG)"),r0.forEach(t),Xc.forEach(t),Uf=d(e),ia=r(e,"P",{});var Oc=n(ia);qw=l(Oc,"All tasks related to generating text (for instance, "),Ls=r(Oc,"A",{href:!0,rel:!0});var n0=n(Ls);Mw=l(n0,"Write With Transformers"),n0.forEach(t),Cw=l(Oc,", translation)."),Oc.forEach(t),Bf=d(e),Ze=r(e,"H3",{class:!0});var Lc=n(Ze);ha=r(Lc,"A",{id:!0,class:!0,href:!0});var o0=n(ha);Ni=r(o0,"SPAN",{});var l0=n(Ni);u(Qs.$$.fragment,l0),l0.forEach(t),o0.forEach(t),zw=d(Lc),Si=r(Lc,"SPAN",{});var i0=n(Si);Iw=l(i0,"Natural language processing (NLP)"),i0.forEach(t),Lc.forEach(t),Wf=d(e),Fn=r(e,"P",{});var h0=n(Fn);Vw=l(h0,"A generic way to say \u201Cdeal with texts\u201D."),h0.forEach(t),Gf=d(e),De=r(e,"H3",{class:!0});var Qc=n(De);pa=r(Qc,"A",{id:!0,class:!0,href:!0});var p0=n(pa);qi=r(p0,"SPAN",{});var f0=n(qi);u(Ys.$$.fragment,f0),f0.forEach(t),p0.forEach(t),Fw=d(Qc),Mi=r(Qc,"SPAN",{});var d0=n(Mi);Hw=l(d0,"Natural language understanding (NLU)"),d0.forEach(t),Qc.forEach(t),Jf=d(e),Hn=r(e,"P",{});var c0=n(Hn);Zw=l(c0,`All tasks related to understanding what is in a text (for instance classifying the
whole text, individual words).`),c0.forEach(t),Rf=d(e),Ue=r(e,"H2",{class:!0});var Yc=n(Ue);fa=r(Yc,"A",{id:!0,class:!0,href:!0});var u0=n(fa);Ci=r(u0,"SPAN",{});var m0=n(Ci);u(Ks.$$.fragment,m0),m0.forEach(t),u0.forEach(t),Dw=d(Yc),zi=r(Yc,"SPAN",{});var v0=n(zi);Uw=l(v0,"P"),v0.forEach(t),Yc.forEach(t),Xf=d(e),Be=r(e,"H3",{class:!0});var Kc=n(Be);da=r(Kc,"A",{id:!0,class:!0,href:!0});var g0=n(da);Ii=r(g0,"SPAN",{});var w0=n(Ii);u(er.$$.fragment,w0),w0.forEach(t),g0.forEach(t),Bw=d(Kc),Vi=r(Kc,"SPAN",{});var b0=n(Vi);Ww=l(b0,"pipeline"),b0.forEach(t),Kc.forEach(t),Of=d(e),Zn=r(e,"P",{});var $0=n(Zn);Gw=l($0,"A pipeline in \u{1F917} Transformers is an abstraction referring to a series of steps that are executed in a specific order to preprocess and transform data and return a prediction from a model. Some example stages found in a pipeline might be data preprocessing, feature extraction, and normalization."),$0.forEach(t),Lf=d(e),ca=r(e,"P",{});var eu=n(ca);Jw=l(eu,"For more details, see "),tr=r(eu,"A",{href:!0,rel:!0});var _0=n(tr);Rw=l(_0,"Pipelines for inference"),_0.forEach(t),Xw=l(eu,"."),eu.forEach(t),Qf=d(e),We=r(e,"H3",{class:!0});var tu=n(We);ua=r(tu,"A",{id:!0,class:!0,href:!0});var k0=n(ua);Fi=r(k0,"SPAN",{});var y0=n(Fi);u(ar.$$.fragment,y0),y0.forEach(t),k0.forEach(t),Ow=d(tu),Hi=r(tu,"SPAN",{});var E0=n(Hi);Lw=l(E0,"pixel values"),E0.forEach(t),tu.forEach(t),Yf=d(e),P=r(e,"P",{});var L=n(P);Qw=l(L,"A tensor of the numerical representations of an image that is passed to a model. The pixel values have a shape of ["),Zi=r(L,"CODE",{});var A0=n(Zi);Yw=l(A0,"batch_size"),A0.forEach(t),Kw=l(L,", "),Di=r(L,"CODE",{});var x0=n(Di);eb=l(x0,"num_channels"),x0.forEach(t),tb=l(L,", "),Ui=r(L,"CODE",{});var j0=n(Ui);ab=l(j0,"height"),j0.forEach(t),sb=l(L,", "),Bi=r(L,"CODE",{});var T0=n(Bi);rb=l(T0,"width"),T0.forEach(t),nb=l(L,"], and are generated from an image processor."),L.forEach(t),Kf=d(e),Ge=r(e,"H3",{class:!0});var au=n(Ge);ma=r(au,"A",{id:!0,class:!0,href:!0});var P0=n(ma);Wi=r(P0,"SPAN",{});var N0=n(Wi);u(sr.$$.fragment,N0),N0.forEach(t),P0.forEach(t),ob=d(au),Gi=r(au,"SPAN",{});var S0=n(Gi);lb=l(S0,"pooling"),S0.forEach(t),au.forEach(t),ed=d(e),Dn=r(e,"P",{});var q0=n(Dn);ib=l(q0,"An operation that reduces a matrix into a smaller matrix, either by taking the maximum or average of the pooled dimension(s). Pooling layers are commonly found between convolutional layers to downsample the feature representation."),q0.forEach(t),td=d(e),Je=r(e,"H3",{class:!0});var su=n(Je);va=r(su,"A",{id:!0,class:!0,href:!0});var M0=n(va);Ji=r(M0,"SPAN",{});var C0=n(Ji);u(rr.$$.fragment,C0),C0.forEach(t),M0.forEach(t),hb=d(su),Ri=r(su,"SPAN",{});var z0=n(Ri);pb=l(z0,"position IDs"),z0.forEach(t),su.forEach(t),ad=d(e),ga=r(e,"P",{});var ru=n(ga);fb=l(ru,`Contrary to RNNs that have the position of each token embedded within them, transformers are unaware of the position of
each token. Therefore, the position IDs (`),Xi=r(ru,"CODE",{});var I0=n(Xi);db=l(I0,"position_ids"),I0.forEach(t),cb=l(ru,`) are used by the model to identify each token\u2019s position in the
list of tokens.`),ru.forEach(t),sd=d(e),wa=r(e,"P",{});var nu=n(wa);ub=l(nu,"They are an optional parameter. If no "),Oi=r(nu,"CODE",{});var V0=n(Oi);mb=l(V0,"position_ids"),V0.forEach(t),vb=l(nu,` are passed to the model, the IDs are automatically created as
absolute positional embeddings.`),nu.forEach(t),rd=d(e),ba=r(e,"P",{});var ou=n(ba);gb=l(ou,"Absolute positional embeddings are selected in the range "),Li=r(ou,"CODE",{});var F0=n(Li);wb=l(F0,"[0, config.max_position_embeddings - 1]"),F0.forEach(t),bb=l(ou,`. Some models use
other types of positional embeddings, such as sinusoidal position embeddings or relative position embeddings.`),ou.forEach(t),nd=d(e),Re=r(e,"H3",{class:!0});var lu=n(Re);$a=r(lu,"A",{id:!0,class:!0,href:!0});var H0=n($a);Qi=r(H0,"SPAN",{});var Z0=n(Qi);u(nr.$$.fragment,Z0),Z0.forEach(t),H0.forEach(t),$b=d(lu),Yi=r(lu,"SPAN",{});var D0=n(Yi);_b=l(D0,"preprocessing"),D0.forEach(t),lu.forEach(t),od=d(e),_a=r(e,"P",{});var iu=n(_a);kb=l(iu,"The task of preparing raw data into a format that can be easily consumed by machine learning models. For example, text is typically preprocessed by tokenization. To gain a better idea of what preprocessing looks like for other input types, check out the "),or=r(iu,"A",{href:!0,rel:!0});var U0=n(or);yb=l(U0,"Preprocess"),U0.forEach(t),Eb=l(iu," tutorial."),iu.forEach(t),ld=d(e),Xe=r(e,"H3",{class:!0});var hu=n(Xe);ka=r(hu,"A",{id:!0,class:!0,href:!0});var B0=n(ka);Ki=r(B0,"SPAN",{});var W0=n(Ki);u(lr.$$.fragment,W0),W0.forEach(t),B0.forEach(t),Ab=d(hu),eh=r(hu,"SPAN",{});var G0=n(eh);xb=l(G0,"pretrained model"),G0.forEach(t),hu.forEach(t),id=d(e),Z=r(e,"P",{});var yo=n(Z);jb=l(yo,`A model that has been pretrained on some data (for instance all of Wikipedia). Pretraining methods involve a
self-supervised objective, which can be reading the text and trying to predict the next word (see `),Un=r(yo,"A",{href:!0});var J0=n(Un);Tb=l(J0,`causal language
modeling`),J0.forEach(t),Pb=l(yo,") or masking some words and trying to predict them (see "),Bn=r(yo,"A",{href:!0});var R0=n(Bn);Nb=l(R0,`masked language
modeling`),R0.forEach(t),Sb=l(yo,")."),yo.forEach(t),hd=d(e),Wn=r(e,"P",{});var X0=n(Wn);qb=l(X0,"Speech and vision models have their own pretraining objectives. For example, Wav2Vec2 is a speech model pretrained on a contrastive task which requires the model to identify the \u201Ctrue\u201D speech representation from a set of \u201Cfalse\u201D speech representations. On the other hand, BEiT is a vision model pretrained on a masked image modeling task which masks some of the image patches and requires the model to predict the masked patches (similar to the masked language modeling objective)."),X0.forEach(t),pd=d(e),Oe=r(e,"H2",{class:!0});var pu=n(Oe);ya=r(pu,"A",{id:!0,class:!0,href:!0});var O0=n(ya);th=r(O0,"SPAN",{});var L0=n(th);u(ir.$$.fragment,L0),L0.forEach(t),O0.forEach(t),Mb=d(pu),ah=r(pu,"SPAN",{});var Q0=n(ah);Cb=l(Q0,"R"),Q0.forEach(t),pu.forEach(t),fd=d(e),Le=r(e,"H3",{class:!0});var fu=n(Le);Ea=r(fu,"A",{id:!0,class:!0,href:!0});var Y0=n(Ea);sh=r(Y0,"SPAN",{});var K0=n(sh);u(hr.$$.fragment,K0),K0.forEach(t),Y0.forEach(t),zb=d(fu),rh=r(fu,"SPAN",{});var ey=n(rh);Ib=l(ey,"recurrent neural network (RNN)"),ey.forEach(t),fu.forEach(t),dd=d(e),Gn=r(e,"P",{});var ty=n(Gn);Vb=l(ty,"A type of model that uses a loop over a layer to process texts."),ty.forEach(t),cd=d(e),Qe=r(e,"H3",{class:!0});var du=n(Qe);Aa=r(du,"A",{id:!0,class:!0,href:!0});var ay=n(Aa);nh=r(ay,"SPAN",{});var sy=n(nh);u(pr.$$.fragment,sy),sy.forEach(t),ay.forEach(t),Fb=d(du),oh=r(du,"SPAN",{});var ry=n(oh);Hb=l(ry,"representation learning"),ry.forEach(t),du.forEach(t),ud=d(e),Jn=r(e,"P",{});var ny=n(Jn);Zb=l(ny,"A subfield of machine learning which focuses on learning meaningful representations of raw data. Some examples of representation learning techniques include word embeddings, autoencoders, and Generative Adversarial Networks (GANs)."),ny.forEach(t),md=d(e),Ye=r(e,"H2",{class:!0});var cu=n(Ye);xa=r(cu,"A",{id:!0,class:!0,href:!0});var oy=n(xa);lh=r(oy,"SPAN",{});var ly=n(lh);u(fr.$$.fragment,ly),ly.forEach(t),oy.forEach(t),Db=d(cu),ih=r(cu,"SPAN",{});var iy=n(ih);Ub=l(iy,"S"),iy.forEach(t),cu.forEach(t),vd=d(e),Ke=r(e,"H3",{class:!0});var uu=n(Ke);ja=r(uu,"A",{id:!0,class:!0,href:!0});var hy=n(ja);hh=r(hy,"SPAN",{});var py=n(hh);u(dr.$$.fragment,py),py.forEach(t),hy.forEach(t),Bb=d(uu),ph=r(uu,"SPAN",{});var fy=n(ph);Wb=l(fy,"sampling rate"),fy.forEach(t),uu.forEach(t),gd=d(e),Rn=r(e,"P",{});var dy=n(Rn);Gb=l(dy,"A measurement in hertz of the number of samples (the audio signal) taken per second. The sampling rate is a result of discretizing a continuous signal such as speech."),dy.forEach(t),wd=d(e),et=r(e,"H3",{class:!0});var mu=n(et);Ta=r(mu,"A",{id:!0,class:!0,href:!0});var cy=n(Ta);fh=r(cy,"SPAN",{});var uy=n(fh);u(cr.$$.fragment,uy),uy.forEach(t),cy.forEach(t),Jb=d(mu),dh=r(mu,"SPAN",{});var my=n(dh);Rb=l(my,"self-attention"),my.forEach(t),mu.forEach(t),bd=d(e),Xn=r(e,"P",{});var vy=n(Xn);Xb=l(vy,"Each element of the input finds out which other elements of the input they should attend to."),vy.forEach(t),$d=d(e),tt=r(e,"H3",{class:!0});var vu=n(tt);Pa=r(vu,"A",{id:!0,class:!0,href:!0});var gy=n(Pa);ch=r(gy,"SPAN",{});var wy=n(ch);u(ur.$$.fragment,wy),wy.forEach(t),gy.forEach(t),Ob=d(vu),uh=r(vu,"SPAN",{});var by=n(uh);Lb=l(by,"self-supervised learning"),by.forEach(t),vu.forEach(t),_d=d(e),D=r(e,"P",{});var Eo=n(D);Qb=l(Eo,"A category of machine learning techniques in which a model creates its own learning objective from unlabeled data. It differs from "),On=r(Eo,"A",{href:!0});var $y=n(On);Yb=l($y,"unsupervised learning"),$y.forEach(t),Kb=l(Eo," and "),Ln=r(Eo,"A",{href:!0});var _y=n(Ln);e$=l(_y,"supervised learning"),_y.forEach(t),t$=l(Eo," in that the learning process is supervised, but not explicitly from the user."),Eo.forEach(t),kd=d(e),Na=r(e,"P",{});var gu=n(Na);a$=l(gu,"One example of self-supervised learning is "),Qn=r(gu,"A",{href:!0});var ky=n(Qn);s$=l(ky,"masked language modeling"),ky.forEach(t),r$=l(gu,", where a model is passed sentences with a proportion of its tokens removed and learns to predict the missing tokens."),gu.forEach(t),yd=d(e),at=r(e,"H3",{class:!0});var wu=n(at);Sa=r(wu,"A",{id:!0,class:!0,href:!0});var yy=n(Sa);mh=r(yy,"SPAN",{});var Ey=n(mh);u(mr.$$.fragment,Ey),Ey.forEach(t),yy.forEach(t),n$=d(wu),vh=r(wu,"SPAN",{});var Ay=n(vh);o$=l(Ay,"semi-supervised learning"),Ay.forEach(t),wu.forEach(t),Ed=d(e),U=r(e,"P",{});var Ao=n(U);l$=l(Ao,"A broad category of machine learning training techniques that leverages a small amount of labeled data with a larger quantity of unlabeled data to improve the accuracy of a model, unlike "),Yn=r(Ao,"A",{href:!0});var xy=n(Yn);i$=l(xy,"supervised learning"),xy.forEach(t),h$=l(Ao," and "),Kn=r(Ao,"A",{href:!0});var jy=n(Kn);p$=l(jy,"unsupervised learning"),jy.forEach(t),f$=l(Ao,"."),Ao.forEach(t),Ad=d(e),eo=r(e,"P",{});var Ty=n(eo);d$=l(Ty,"An example of a semi-supervised learning approach is \u201Cself-training\u201D, in which a model is trained on labeled data, and then used to make predictions on the unlabeled data. The portion of the unlabeled data that the model predicts with the most confidence gets added to the labeled dataset and used to retrain the model."),Ty.forEach(t),xd=d(e),st=r(e,"H3",{class:!0});var bu=n(st);qa=r(bu,"A",{id:!0,class:!0,href:!0});var Py=n(qa);gh=r(Py,"SPAN",{});var Ny=n(gh);u(vr.$$.fragment,Ny),Ny.forEach(t),Py.forEach(t),c$=d(bu),wh=r(bu,"SPAN",{});var Sy=n(wh);u$=l(Sy,"sequence-to-sequence (seq2seq)"),Sy.forEach(t),bu.forEach(t),jd=d(e),B=r(e,"P",{});var xo=n(B);m$=l(xo,`Models that generate a new sequence from an input, like translation models, or summarization models (such as
`),to=r(xo,"A",{href:!0});var qy=n(to);v$=l(qy,"Bart"),qy.forEach(t),g$=l(xo," or "),ao=r(xo,"A",{href:!0});var My=n(ao);w$=l(My,"T5"),My.forEach(t),b$=l(xo,")."),xo.forEach(t),Td=d(e),rt=r(e,"H3",{class:!0});var $u=n(rt);Ma=r($u,"A",{id:!0,class:!0,href:!0});var Cy=n(Ma);bh=r(Cy,"SPAN",{});var zy=n(bh);u(gr.$$.fragment,zy),zy.forEach(t),Cy.forEach(t),$$=d($u),$h=r($u,"SPAN",{});var Iy=n($h);_$=l(Iy,"stride"),Iy.forEach(t),$u.forEach(t),Pd=d(e),W=r(e,"P",{});var jo=n(W);k$=l(jo,"In "),so=r(jo,"A",{href:!0});var Vy=n(so);y$=l(Vy,"convolution"),Vy.forEach(t),E$=l(jo," or "),ro=r(jo,"A",{href:!0});var Fy=n(ro);A$=l(Fy,"pooling"),Fy.forEach(t),x$=l(jo,", the stride refers to the distance the kernel is moved over a matrix. A stride of 1 means the kernel is moved one pixel over at a time, and a stride of 2 means the kernel is moved two pixels over at a time."),jo.forEach(t),Nd=d(e),nt=r(e,"H3",{class:!0});var _u=n(nt);Ca=r(_u,"A",{id:!0,class:!0,href:!0});var Hy=n(Ca);_h=r(Hy,"SPAN",{});var Zy=n(_h);u(wr.$$.fragment,Zy),Zy.forEach(t),Hy.forEach(t),j$=d(_u),kh=r(_u,"SPAN",{});var Dy=n(kh);T$=l(Dy,"supervised learning"),Dy.forEach(t),_u.forEach(t),Sd=d(e),no=r(e,"P",{});var Uy=n(no);P$=l(Uy,"A form of model training that directly uses labeled data to correct and instruct model performance. Data is fed into the model being trained, and its predictions are compared to the known labels. The model updates its weights based on how incorrect its predictions were, and the process is repeated to optimize model performance."),Uy.forEach(t),qd=d(e),ot=r(e,"H2",{class:!0});var ku=n(ot);za=r(ku,"A",{id:!0,class:!0,href:!0});var By=n(za);yh=r(By,"SPAN",{});var Wy=n(yh);u(br.$$.fragment,Wy),Wy.forEach(t),By.forEach(t),N$=d(ku),Eh=r(ku,"SPAN",{});var Gy=n(Eh);S$=l(Gy,"T"),Gy.forEach(t),ku.forEach(t),Md=d(e),lt=r(e,"H3",{class:!0});var yu=n(lt);Ia=r(yu,"A",{id:!0,class:!0,href:!0});var Jy=n(Ia);Ah=r(Jy,"SPAN",{});var Ry=n(Ah);u($r.$$.fragment,Ry),Ry.forEach(t),Jy.forEach(t),q$=d(yu),xh=r(yu,"SPAN",{});var Xy=n(xh);M$=l(Xy,"token"),Xy.forEach(t),yu.forEach(t),Cd=d(e),oo=r(e,"P",{});var Oy=n(oo);C$=l(Oy,`A part of a sentence, usually a word, but can also be a subword (non-common words are often split in subwords) or a
punctuation symbol.`),Oy.forEach(t),zd=d(e),it=r(e,"H3",{class:!0});var Eu=n(it);Va=r(Eu,"A",{id:!0,class:!0,href:!0});var Ly=n(Va);jh=r(Ly,"SPAN",{});var Qy=n(jh);u(_r.$$.fragment,Qy),Qy.forEach(t),Ly.forEach(t),z$=d(Eu),Th=r(Eu,"SPAN",{});var Yy=n(Th);I$=l(Yy,"token Type IDs"),Yy.forEach(t),Eu.forEach(t),Id=d(e),lo=r(e,"P",{});var Ky=n(lo);V$=l(Ky,"Some models\u2019 purpose is to do classification on pairs of sentences or question answering."),Ky.forEach(t),Vd=d(e),u(kr.$$.fragment,e),Fd=d(e),G=r(e,"P",{});var To=n(G);F$=l(To,`These require two different sequences to be joined in a single \u201Cinput_ids\u201D entry, which usually is performed with the
help of special tokens, such as the classifier (`),Ph=r(To,"CODE",{});var eE=n(Ph);H$=l(eE,"[CLS]"),eE.forEach(t),Z$=l(To,") and separator ("),Nh=r(To,"CODE",{});var tE=n(Nh);D$=l(tE,"[SEP]"),tE.forEach(t),U$=l(To,`) tokens. For example, the BERT model
builds its two sequence input as such:`),To.forEach(t),Hd=d(e),u(yr.$$.fragment,e),Zd=d(e),Fa=r(e,"P",{});var Au=n(Fa);B$=l(Au,"We can use our tokenizer to automatically generate such a sentence by passing the two sequences to "),Sh=r(Au,"CODE",{});var aE=n(Sh);W$=l(aE,"tokenizer"),aE.forEach(t),G$=l(Au,` as two
arguments (and not a list, like before) like this:`),Au.forEach(t),Dd=d(e),u(Er.$$.fragment,e),Ud=d(e),io=r(e,"P",{});var sE=n(io);J$=l(sE,"which will return:"),sE.forEach(t),Bd=d(e),u(Ar.$$.fragment,e),Wd=d(e),ho=r(e,"P",{});var rE=n(ho);R$=l(rE,`This is enough for some models to understand where one sequence ends and where another begins. However, other models,
such as BERT, also deploy token type IDs (also called segment IDs). They are represented as a binary mask identifying
the two types of sequence in the model.`),rE.forEach(t),Gd=d(e),po=r(e,"P",{});var nE=n(po);X$=l(nE,"The tokenizer returns this mask as the \u201Ctoken_type_ids\u201D entry:"),nE.forEach(t),Jd=d(e),u(xr.$$.fragment,e),Rd=d(e),J=r(e,"P",{});var Po=n(J);O$=l(Po,"The first sequence, the \u201Ccontext\u201D used for the question, has all its tokens represented by a "),qh=r(Po,"CODE",{});var oE=n(qh);L$=l(oE,"0"),oE.forEach(t),Q$=l(Po,`, whereas the second
sequence, corresponding to the \u201Cquestion\u201D, has all its tokens represented by a `),Mh=r(Po,"CODE",{});var lE=n(Mh);Y$=l(lE,"1"),lE.forEach(t),K$=l(Po,"."),Po.forEach(t),Xd=d(e),R=r(e,"P",{});var No=n(R);e2=l(No,"Some models, like "),fo=r(No,"A",{href:!0});var iE=n(fo);t2=l(iE,"XLNetModel"),iE.forEach(t),a2=l(No," use an additional token represented by a "),Ch=r(No,"CODE",{});var hE=n(Ch);s2=l(hE,"2"),hE.forEach(t),r2=l(No,"."),No.forEach(t),Od=d(e),ht=r(e,"H3",{class:!0});var xu=n(ht);Ha=r(xu,"A",{id:!0,class:!0,href:!0});var pE=n(Ha);zh=r(pE,"SPAN",{});var fE=n(zh);u(jr.$$.fragment,fE),fE.forEach(t),pE.forEach(t),n2=d(xu),Ih=r(xu,"SPAN",{});var dE=n(Ih);o2=l(dE,"transfer learning"),dE.forEach(t),xu.forEach(t),Ld=d(e),co=r(e,"P",{});var cE=n(co);l2=l(cE,"A technique that involves taking a pretrained model and adapting it to a dataset specific to your task. Instead of training a model from scratch, you can leverage knowledge obtained from an existing model as a starting point. This speeds up the learning process and reduces the amount of training data needed."),cE.forEach(t),Qd=d(e),pt=r(e,"H3",{class:!0});var ju=n(pt);Za=r(ju,"A",{id:!0,class:!0,href:!0});var uE=n(Za);Vh=r(uE,"SPAN",{});var mE=n(Vh);u(Tr.$$.fragment,mE),mE.forEach(t),uE.forEach(t),i2=d(ju),Fh=r(ju,"SPAN",{});var vE=n(Fh);h2=l(vE,"transformer"),vE.forEach(t),ju.forEach(t),Yd=d(e),uo=r(e,"P",{});var gE=n(uo);p2=l(gE,"Self-attention based deep learning model architecture."),gE.forEach(t),Kd=d(e),ft=r(e,"H2",{class:!0});var Tu=n(ft);Da=r(Tu,"A",{id:!0,class:!0,href:!0});var wE=n(Da);Hh=r(wE,"SPAN",{});var bE=n(Hh);u(Pr.$$.fragment,bE),bE.forEach(t),wE.forEach(t),f2=d(Tu),Zh=r(Tu,"SPAN",{});var $E=n(Zh);d2=l($E,"U"),$E.forEach(t),Tu.forEach(t),ec=d(e),dt=r(e,"H3",{class:!0});var Pu=n(dt);Ua=r(Pu,"A",{id:!0,class:!0,href:!0});var _E=n(Ua);Dh=r(_E,"SPAN",{});var kE=n(Dh);u(Nr.$$.fragment,kE),kE.forEach(t),_E.forEach(t),c2=d(Pu),Uh=r(Pu,"SPAN",{});var yE=n(Uh);u2=l(yE,"unsupervised learning"),yE.forEach(t),Pu.forEach(t),tc=d(e),mo=r(e,"P",{});var EE=n(mo);m2=l(EE,"A form of model training in which data provided to the model is not labeled. Unsupervised learning techniques leverage statistical information of the data distribution to find patterns useful for the task at hand."),EE.forEach(t),this.h()},h(){p(E,"name","hf:doc:metadata"),p(E,"content",JSON.stringify(ME)),p(S,"id","glossary"),p(S,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(S,"href","#glossary"),p(j,"class","relative group"),p(ut,"id","a"),p(ut,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ut,"href","#a"),p(Q,"class","relative group"),p(mt,"id","attention-mask"),p(mt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(mt,"href","#attention-mask"),p(Y,"class","relative group"),p(Ur,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertTokenizer"),p(vt,"id","autoencoding-models"),p(vt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(vt,"href","#autoencoding-models"),p(K,"class","relative group"),p(Br,"href","#encoder-models"),p(Wr,"href","#masked-language-modeling-mlm"),p(gt,"id","autoregressive-models"),p(gt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(gt,"href","#autoregressive-models"),p(te,"class","relative group"),p(Gr,"href","#causal-language-modeling"),p(Jr,"href","#decoder-models"),p(wt,"id","b"),p(wt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(wt,"href","#b"),p(se,"class","relative group"),p(bt,"id","backbone"),p(bt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(bt,"href","#backbone"),p(re,"class","relative group"),p(Rr,"href","#head"),p(Xr,"href","/docs/transformers/v4.30.0/en/model_doc/vit#transformers.ViTModel"),p(Or,"href","model_doc/dpt"),p($t,"id","c"),p($t,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p($t,"href","#c"),p(ne,"class","relative group"),p(_t,"id","causal-language-modeling"),p(_t,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(_t,"href","#causal-language-modeling"),p(oe,"class","relative group"),p(kt,"id","channel"),p(kt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(kt,"href","#channel"),p(le,"class","relative group"),p(yt,"id","connectionist-temporal-classification-ctc"),p(yt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(yt,"href","#connectionist-temporal-classification-ctc"),p(ie,"class","relative group"),p(Et,"id","convolution"),p(Et,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Et,"href","#convolution"),p(he,"class","relative group"),p(At,"id","d"),p(At,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(At,"href","#d"),p(pe,"class","relative group"),p(xt,"id","decoder-input-ids"),p(xt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(xt,"href","#decoder-input-ids"),p(fe,"class","relative group"),p(jt,"id","decoder-models"),p(jt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(jt,"href","#decoder-models"),p(de,"class","relative group"),p(Tt,"id","deep-learning-dl"),p(Tt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Tt,"href","#deep-learning-dl"),p(ce,"class","relative group"),p(Pt,"id","e"),p(Pt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Pt,"href","#e"),p(ue,"class","relative group"),p(Nt,"id","encoder-models"),p(Nt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Nt,"href","#encoder-models"),p(me,"class","relative group"),p(sn,"href","#masked-language-modeling-mlm"),p(qt,"id","f"),p(qt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(qt,"href","#f"),p(ve,"class","relative group"),p(Mt,"id","feature-extraction"),p(Mt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Mt,"href","#feature-extraction"),p(ge,"class","relative group"),p(Ct,"id","feed-forward-chunking"),p(Ct,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ct,"href","#feed-forward-chunking"),p(we,"class","relative group"),p(ks,"href","https://arxiv.org/abs/2001.04451"),p(ks,"rel","nofollow"),p(nn,"href","/docs/transformers/v4.30.0/en/internal/modeling_utils#transformers.apply_chunking_to_forward"),p(It,"id","finetuned-models"),p(It,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(It,"href","#finetuned-models"),p(be,"class","relative group"),p(on,"href","#head"),p(Es,"href","https://huggingface.co/docs/transformers/training"),p(Es,"rel","nofollow"),p(Ht,"id","h"),p(Ht,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ht,"href","#h"),p($e,"class","relative group"),p(Zt,"id","head"),p(Zt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Zt,"href","#head"),p(_e,"class","relative group"),p(hn,"href","/docs/transformers/v4.30.0/en/model_doc/gpt2#transformers.GPT2ForSequenceClassification"),p(pn,"href","/docs/transformers/v4.30.0/en/model_doc/gpt2#transformers.GPT2Model"),p(fn,"href","/docs/transformers/v4.30.0/en/model_doc/vit#transformers.ViTForImageClassification"),p(dn,"href","/docs/transformers/v4.30.0/en/model_doc/vit#transformers.ViTModel"),p(cn,"href","/docs/transformers/v4.30.0/en/model_doc/wav2vec2#transformers.Wav2Vec2ForCTC"),p(un,"href","#connectionist-temporal-classification-(CTC)"),p(mn,"href","/docs/transformers/v4.30.0/en/model_doc/wav2vec2#transformers.Wav2Vec2Model"),p(Ut,"id","i"),p(Ut,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ut,"href","#i"),p(ke,"class","relative group"),p(Bt,"id","image-patch"),p(Bt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Bt,"href","#image-patch"),p(ye,"class","relative group"),p(Gt,"id","inference"),p(Gt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Gt,"href","#inference"),p(Ee,"class","relative group"),p(Ns,"href","https://huggingface.co/docs/transformers/pipeline_tutorial"),p(Ns,"rel","nofollow"),p(Rt,"id","input-ids"),p(Rt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Rt,"href","#input-ids"),p(Ae,"class","relative group"),p(Ms,"href","https://arxiv.org/pdf/1609.08144.pdf"),p(Ms,"rel","nofollow"),p(Vs,"href","https://github.com/huggingface/tokenizers"),p(Vs,"rel","nofollow"),p(kn,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertModel"),p(Yt,"id","l"),p(Yt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Yt,"href","#l"),p(xe,"class","relative group"),p(Kt,"id","labels"),p(Kt,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Kt,"href","#labels"),p(je,"class","relative group"),p(An,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertForSequenceClassification"),p(xn,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertForTokenClassification"),p(jn,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertForMaskedLM"),p(Tn,"href","/docs/transformers/v4.30.0/en/model_doc/bart#transformers.BartForConditionalGeneration"),p(Pn,"href","/docs/transformers/v4.30.0/en/model_doc/mbart#transformers.MBartForConditionalGeneration"),p(Nn,"href","/docs/transformers/v4.30.0/en/model_doc/vit#transformers.ViTForImageClassification"),p(Sn,"href","/docs/transformers/v4.30.0/en/model_doc/segformer#transformers.SegformerForSemanticSegmentation"),p(qn,"href","/docs/transformers/v4.30.0/en/model_doc/detr#transformers.DetrForObjectDetection"),p(Mn,"href","/docs/transformers/v4.30.0/en/model_doc/wav2vec2#transformers.Wav2Vec2ForCTC"),p(Cn,"href","/docs/transformers/v4.30.0/en/model_doc/bert#transformers.BertModel"),p(aa,"id","large-language-models-llm"),p(aa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(aa,"href","#large-language-models-llm"),p(Ce,"class","relative group"),p(sa,"id","m"),p(sa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(sa,"href","#m"),p(ze,"class","relative group"),p(ra,"id","masked-language-modeling-mlm"),p(ra,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ra,"href","#masked-language-modeling-mlm"),p(Ie,"class","relative group"),p(na,"id","multimodal"),p(na,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(na,"href","#multimodal"),p(Ve,"class","relative group"),p(oa,"id","n"),p(oa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(oa,"href","#n"),p(Fe,"class","relative group"),p(la,"id","natural-language-generation-nlg"),p(la,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(la,"href","#natural-language-generation-nlg"),p(He,"class","relative group"),p(Ls,"href","https://transformer.huggingface.co/"),p(Ls,"rel","nofollow"),p(ha,"id","natural-language-processing-nlp"),p(ha,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ha,"href","#natural-language-processing-nlp"),p(Ze,"class","relative group"),p(pa,"id","natural-language-understanding-nlu"),p(pa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(pa,"href","#natural-language-understanding-nlu"),p(De,"class","relative group"),p(fa,"id","p"),p(fa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(fa,"href","#p"),p(Ue,"class","relative group"),p(da,"id","pipeline"),p(da,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(da,"href","#pipeline"),p(Be,"class","relative group"),p(tr,"href","https://huggingface.co/docs/transformers/pipeline_tutorial"),p(tr,"rel","nofollow"),p(ua,"id","pixel-values"),p(ua,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ua,"href","#pixel-values"),p(We,"class","relative group"),p(ma,"id","pooling"),p(ma,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ma,"href","#pooling"),p(Ge,"class","relative group"),p(va,"id","position-ids"),p(va,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(va,"href","#position-ids"),p(Je,"class","relative group"),p($a,"id","preprocessing"),p($a,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p($a,"href","#preprocessing"),p(Re,"class","relative group"),p(or,"href","https://huggingface.co/docs/transformers/preprocessing"),p(or,"rel","nofollow"),p(ka,"id","pretrained-model"),p(ka,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ka,"href","#pretrained-model"),p(Xe,"class","relative group"),p(Un,"href","#causal-language-modeling"),p(Bn,"href","#masked-language-modeling-mlm"),p(ya,"id","r"),p(ya,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ya,"href","#r"),p(Oe,"class","relative group"),p(Ea,"id","recurrent-neural-network-rnn"),p(Ea,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ea,"href","#recurrent-neural-network-rnn"),p(Le,"class","relative group"),p(Aa,"id","representation-learning"),p(Aa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Aa,"href","#representation-learning"),p(Qe,"class","relative group"),p(xa,"id","s"),p(xa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(xa,"href","#s"),p(Ye,"class","relative group"),p(ja,"id","sampling-rate"),p(ja,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(ja,"href","#sampling-rate"),p(Ke,"class","relative group"),p(Ta,"id","selfattention"),p(Ta,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ta,"href","#selfattention"),p(et,"class","relative group"),p(Pa,"id","selfsupervised-learning"),p(Pa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Pa,"href","#selfsupervised-learning"),p(tt,"class","relative group"),p(On,"href","#unsupervised-learning"),p(Ln,"href","#supervised-learning"),p(Qn,"href","#masked-language-modeling-mlm"),p(Sa,"id","semisupervised-learning"),p(Sa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Sa,"href","#semisupervised-learning"),p(at,"class","relative group"),p(Yn,"href","#supervised-learning"),p(Kn,"href","#unsupervised-learning"),p(qa,"id","sequencetosequence-seq2seq"),p(qa,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(qa,"href","#sequencetosequence-seq2seq"),p(st,"class","relative group"),p(to,"href","model_doc/bart"),p(ao,"href","model_doc/t5"),p(Ma,"id","stride"),p(Ma,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ma,"href","#stride"),p(rt,"class","relative group"),p(so,"href","#convolution"),p(ro,"href","#pooling"),p(Ca,"id","supervised-learning"),p(Ca,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ca,"href","#supervised-learning"),p(nt,"class","relative group"),p(za,"id","t"),p(za,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(za,"href","#t"),p(ot,"class","relative group"),p(Ia,"id","token"),p(Ia,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ia,"href","#token"),p(lt,"class","relative group"),p(Va,"id","token-type-ids"),p(Va,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Va,"href","#token-type-ids"),p(it,"class","relative group"),p(fo,"href","/docs/transformers/v4.30.0/en/model_doc/xlnet#transformers.XLNetModel"),p(Ha,"id","transfer-learning"),p(Ha,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ha,"href","#transfer-learning"),p(ht,"class","relative group"),p(Za,"id","transformer"),p(Za,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Za,"href","#transformer"),p(pt,"class","relative group"),p(Da,"id","u"),p(Da,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Da,"href","#u"),p(ft,"class","relative group"),p(Ua,"id","unsupervised-learning"),p(Ua,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),p(Ua,"href","#unsupervised-learning"),p(dt,"class","relative group")},m(e,i){a(document.head,E),h(e,ct,i),h(e,j,i),a(j,S),a(S,So),m(Ra,So,null),a(j,Nu),a(j,qo),a(qo,Su),h(e,Xh,i),h(e,Cr,i),a(Cr,qu),h(e,Oh,i),h(e,Q,i),a(Q,ut),a(ut,Mo),m(Xa,Mo,null),a(Q,Mu),a(Q,Co),a(Co,Cu),h(e,Lh,i),h(e,Y,i),a(Y,mt),a(mt,zo),m(Oa,zo,null),a(Y,zu),a(Y,Io),a(Io,Iu),h(e,Qh,i),h(e,zr,i),a(zr,Vu),h(e,Yh,i),m(La,e,i),h(e,Kh,i),h(e,Ir,i),a(Ir,Fu),h(e,ep,i),h(e,Vr,i),a(Vr,Hu),h(e,tp,i),m(Qa,e,i),h(e,ap,i),h(e,Fr,i),a(Fr,Zu),h(e,sp,i),m(Ya,e,i),h(e,rp,i),h(e,Hr,i),a(Hr,Du),h(e,np,i),h(e,Zr,i),a(Zr,Uu),h(e,op,i),m(Ka,e,i),h(e,lp,i),h(e,Dr,i),a(Dr,Bu),h(e,ip,i),m(es,e,i),h(e,hp,i),h(e,M,i),a(M,Wu),a(M,Ur),a(Ur,Gu),a(M,Ju),a(M,Vo),a(Vo,Ru),a(M,Xu),a(M,Fo),a(Fo,Ou),a(M,Lu),h(e,pp,i),m(ts,e,i),h(e,fp,i),h(e,K,i),a(K,vt),a(vt,Ho),m(as,Ho,null),a(K,Qu),a(K,Zo),a(Zo,Yu),h(e,dp,i),h(e,ee,i),a(ee,Ku),a(ee,Br),a(Br,em),a(ee,tm),a(ee,Wr),a(Wr,am),h(e,cp,i),h(e,te,i),a(te,gt),a(gt,Do),m(ss,Do,null),a(te,sm),a(te,Uo),a(Uo,rm),h(e,up,i),h(e,ae,i),a(ae,nm),a(ae,Gr),a(Gr,om),a(ae,lm),a(ae,Jr),a(Jr,im),h(e,mp,i),h(e,se,i),a(se,wt),a(wt,Bo),m(rs,Bo,null),a(se,hm),a(se,Wo),a(Wo,pm),h(e,vp,i),h(e,re,i),a(re,bt),a(bt,Go),m(ns,Go,null),a(re,fm),a(re,Jo),a(Jo,dm),h(e,gp,i),h(e,T,i),a(T,cm),a(T,Rr),a(Rr,um),a(T,mm),a(T,Xr),a(Xr,vm),a(T,gm),a(T,Ro),a(Ro,wm),a(T,bm),a(T,Or),a(Or,$m),a(T,_m),h(e,wp,i),h(e,ne,i),a(ne,$t),a($t,Xo),m(os,Xo,null),a(ne,km),a(ne,Oo),a(Oo,ym),h(e,bp,i),h(e,oe,i),a(oe,_t),a(_t,Lo),m(ls,Lo,null),a(oe,Em),a(oe,Qo),a(Qo,Am),h(e,$p,i),h(e,Lr,i),a(Lr,xm),h(e,_p,i),h(e,le,i),a(le,kt),a(kt,Yo),m(is,Yo,null),a(le,jm),a(le,Ko),a(Ko,Tm),h(e,kp,i),h(e,k,i),a(k,Pm),a(k,el),a(el,Nm),a(k,Sm),a(k,tl),a(tl,qm),a(k,Mm),a(k,al),a(al,Cm),a(k,zm),a(k,sl),a(sl,Im),a(k,Vm),a(k,rl),a(rl,Fm),a(k,Hm),a(k,nl),a(nl,Zm),a(k,Dm),h(e,yp,i),h(e,ie,i),a(ie,yt),a(yt,ol),m(hs,ol,null),a(ie,Um),a(ie,ll),a(ll,Bm),h(e,Ep,i),h(e,Qr,i),a(Qr,Wm),h(e,Ap,i),h(e,he,i),a(he,Et),a(Et,il),m(ps,il,null),a(he,Gm),a(he,hl),a(hl,Jm),h(e,xp,i),h(e,Yr,i),a(Yr,Rm),h(e,jp,i),h(e,pe,i),a(pe,At),a(At,pl),m(fs,pl,null),a(pe,Xm),a(pe,fl),a(fl,Om),h(e,Tp,i),h(e,fe,i),a(fe,xt),a(xt,dl),m(ds,dl,null),a(fe,Lm),a(fe,cl),a(cl,Qm),h(e,Pp,i),h(e,Kr,i),a(Kr,Ym),h(e,Np,i),h(e,C,i),a(C,Km),a(C,ul),a(ul,ev),a(C,tv),a(C,ml),a(ml,av),a(C,sv),a(C,vl),a(vl,rv),a(C,nv),h(e,Sp,i),h(e,en,i),a(en,ov),h(e,qp,i),h(e,de,i),a(de,jt),a(jt,gl),m(cs,gl,null),a(de,lv),a(de,wl),a(wl,iv),h(e,Mp,i),h(e,tn,i),a(tn,hv),h(e,Cp,i),m(us,e,i),h(e,zp,i),h(e,ce,i),a(ce,Tt),a(Tt,bl),m(ms,bl,null),a(ce,pv),a(ce,$l),a($l,fv),h(e,Ip,i),h(e,an,i),a(an,dv),h(e,Vp,i),h(e,ue,i),a(ue,Pt),a(Pt,_l),m(vs,_l,null),a(ue,cv),a(ue,kl),a(kl,uv),h(e,Fp,i),h(e,me,i),a(me,Nt),a(Nt,yl),m(gs,yl,null),a(me,mv),a(me,El),a(El,vv),h(e,Hp,i),h(e,St,i),a(St,gv),a(St,sn),a(sn,wv),a(St,bv),h(e,Zp,i),m(ws,e,i),h(e,Dp,i),h(e,ve,i),a(ve,qt),a(qt,Al),m(bs,Al,null),a(ve,$v),a(ve,xl),a(xl,_v),h(e,Up,i),h(e,ge,i),a(ge,Mt),a(Mt,jl),m($s,jl,null),a(ge,kv),a(ge,Tl),a(Tl,yv),h(e,Bp,i),h(e,rn,i),a(rn,Ev),h(e,Wp,i),h(e,we,i),a(we,Ct),a(Ct,Pl),m(_s,Pl,null),a(we,Av),a(we,Nl),a(Nl,xv),h(e,Gp,i),h(e,zt,i),a(zt,jv),a(zt,Sl),a(Sl,Tv),a(zt,Pv),h(e,Jp,i),h(e,$,i),a($,Nv),a($,ql),a(ql,Sv),a($,qv),a($,Ml),a(Ml,Mv),a($,Cv),a($,ks),a(ks,zv),a($,Iv),a($,Cl),a(Cl,Vv),a($,Fv),a($,zl),a(zl,Hv),a($,Zv),a($,Il),a(Il,Dv),a($,Uv),a($,Vl),a(Vl,Bv),a($,Wv),a($,Fl),a(Fl,Gv),a($,Jv),h(e,Rp,i),h(e,z,i),a(z,Rv),a(z,nn),a(nn,Xv),a(z,Ov),a(z,Hl),a(Hl,Lv),a(z,Qv),a(z,Zl),a(Zl,Yv),a(z,Kv),h(e,Xp,i),h(e,be,i),a(be,It),a(It,Dl),m(ys,Dl,null),a(be,e1),a(be,Ul),a(Ul,t1),h(e,Op,i),h(e,Vt,i),a(Vt,a1),a(Vt,on),a(on,s1),a(Vt,r1),h(e,Lp,i),h(e,Ft,i),a(Ft,n1),a(Ft,Es),a(Es,o1),a(Ft,l1),h(e,Qp,i),h(e,$e,i),a($e,Ht),a(Ht,Bl),m(As,Bl,null),a($e,i1),a($e,Wl),a(Wl,h1),h(e,Yp,i),h(e,_e,i),a(_e,Zt),a(Zt,Gl),m(xs,Gl,null),a(_e,p1),a(_e,Jl),a(Jl,f1),h(e,Kp,i),h(e,ln,i),a(ln,d1),h(e,ef,i),h(e,V,i),a(V,Dt),a(Dt,hn),a(hn,c1),a(Dt,u1),a(Dt,pn),a(pn,m1),a(Dt,v1),a(V,g1),a(V,F),a(F,fn),a(fn,w1),a(F,b1),a(F,Rl),a(Rl,$1),a(F,_1),a(F,dn),a(dn,k1),a(F,y1),a(V,E1),a(V,H),a(H,cn),a(cn,A1),a(H,x1),a(H,un),a(un,j1),a(H,T1),a(H,mn),a(mn,P1),a(H,N1),h(e,tf,i),h(e,ke,i),a(ke,Ut),a(Ut,Xl),m(js,Xl,null),a(ke,S1),a(ke,Ol),a(Ol,q1),h(e,af,i),h(e,ye,i),a(ye,Bt),a(Bt,Ll),m(Ts,Ll,null),a(ye,M1),a(ye,Ql),a(Ql,C1),h(e,sf,i),h(e,Wt,i),a(Wt,z1),a(Wt,Yl),a(Yl,I1),a(Wt,V1),h(e,rf,i),h(e,Ee,i),a(Ee,Gt),a(Gt,Kl),m(Ps,Kl,null),a(Ee,F1),a(Ee,ei),a(ei,H1),h(e,nf,i),h(e,Jt,i),a(Jt,Z1),a(Jt,Ns),a(Ns,D1),a(Jt,U1),h(e,of,i),h(e,Ae,i),a(Ae,Rt),a(Rt,ti),m(Ss,ti,null),a(Ae,B1),a(Ae,ai),a(ai,W1),h(e,lf,i),h(e,vn,i),a(vn,G1),h(e,hf,i),m(qs,e,i),h(e,pf,i),h(e,Xt,i),a(Xt,J1),a(Xt,Ms),a(Ms,R1),a(Xt,X1),h(e,ff,i),m(Cs,e,i),h(e,df,i),h(e,gn,i),a(gn,O1),h(e,cf,i),m(zs,e,i),h(e,uf,i),h(e,wn,i),a(wn,L1),h(e,mf,i),m(Is,e,i),h(e,vf,i),h(e,Ot,i),a(Ot,Q1),a(Ot,Vs),a(Vs,Y1),a(Ot,K1),h(e,gf,i),m(Fs,e,i),h(e,wf,i),h(e,Lt,i),a(Lt,eg),a(Lt,si),a(si,tg),a(Lt,ag),h(e,bf,i),m(Hs,e,i),h(e,$f,i),h(e,bn,i),a(bn,sg),h(e,_f,i),h(e,$n,i),a($n,rg),h(e,kf,i),m(Zs,e,i),h(e,yf,i),h(e,_n,i),a(_n,ng),h(e,Ef,i),m(Ds,e,i),h(e,Af,i),h(e,Qt,i),a(Qt,og),a(Qt,kn),a(kn,lg),a(Qt,ig),h(e,xf,i),h(e,xe,i),a(xe,Yt),a(Yt,ri),m(Us,ri,null),a(xe,hg),a(xe,ni),a(ni,pg),h(e,jf,i),h(e,je,i),a(je,Kt),a(Kt,oi),m(Bs,oi,null),a(je,fg),a(je,li),a(li,dg),h(e,Tf,i),h(e,yn,i),a(yn,cg),h(e,Pf,i),h(e,En,i),a(En,ug),h(e,Nf,i),h(e,_,i),a(_,Te),a(Te,mg),a(Te,An),a(An,vg),a(Te,gg),a(Te,ii),a(ii,wg),a(Te,bg),a(_,$g),a(_,Pe),a(Pe,_g),a(Pe,xn),a(xn,kg),a(Pe,yg),a(Pe,hi),a(hi,Eg),a(Pe,Ag),a(_,xg),a(_,Ne),a(Ne,jg),a(Ne,jn),a(jn,Tg),a(Ne,Pg),a(Ne,pi),a(pi,Ng),a(Ne,Sg),a(_,qg),a(_,q),a(q,Mg),a(q,Tn),a(Tn,Cg),a(q,zg),a(q,Pn),a(Pn,Ig),a(q,Vg),a(q,fi),a(fi,Fg),a(q,Hg),a(q,di),a(di,Zg),a(q,Dg),a(_,Ug),a(_,Se),a(Se,Bg),a(Se,Nn),a(Nn,Wg),a(Se,Gg),a(Se,ci),a(ci,Jg),a(Se,Rg),a(_,Xg),a(_,qe),a(qe,Og),a(qe,Sn),a(Sn,Lg),a(qe,Qg),a(qe,ui),a(ui,Yg),a(qe,Kg),a(_,ew),a(_,I),a(I,tw),a(I,qn),a(qn,aw),a(I,sw),a(I,mi),a(mi,rw),a(I,nw),a(I,vi),a(vi,ow),a(I,lw),a(_,iw),a(_,Me),a(Me,hw),a(Me,Mn),a(Mn,pw),a(Me,fw),a(Me,gi),a(gi,dw),a(Me,cw),h(e,Sf,i),m(ea,e,i),h(e,qf,i),h(e,ta,i),a(ta,uw),a(ta,Cn),a(Cn,mw),a(ta,vw),h(e,Mf,i),h(e,Ce,i),a(Ce,aa),a(aa,wi),m(Ws,wi,null),a(Ce,gw),a(Ce,bi),a(bi,ww),h(e,Cf,i),h(e,zn,i),a(zn,bw),h(e,zf,i),h(e,ze,i),a(ze,sa),a(sa,$i),m(Gs,$i,null),a(ze,$w),a(ze,_i),a(_i,_w),h(e,If,i),h(e,Ie,i),a(Ie,ra),a(ra,ki),m(Js,ki,null),a(Ie,kw),a(Ie,yi),a(yi,yw),h(e,Vf,i),h(e,In,i),a(In,Ew),h(e,Ff,i),h(e,Ve,i),a(Ve,na),a(na,Ei),m(Rs,Ei,null),a(Ve,Aw),a(Ve,Ai),a(Ai,xw),h(e,Hf,i),h(e,Vn,i),a(Vn,jw),h(e,Zf,i),h(e,Fe,i),a(Fe,oa),a(oa,xi),m(Xs,xi,null),a(Fe,Tw),a(Fe,ji),a(ji,Pw),h(e,Df,i),h(e,He,i),a(He,la),a(la,Ti),m(Os,Ti,null),a(He,Nw),a(He,Pi),a(Pi,Sw),h(e,Uf,i),h(e,ia,i),a(ia,qw),a(ia,Ls),a(Ls,Mw),a(ia,Cw),h(e,Bf,i),h(e,Ze,i),a(Ze,ha),a(ha,Ni),m(Qs,Ni,null),a(Ze,zw),a(Ze,Si),a(Si,Iw),h(e,Wf,i),h(e,Fn,i),a(Fn,Vw),h(e,Gf,i),h(e,De,i),a(De,pa),a(pa,qi),m(Ys,qi,null),a(De,Fw),a(De,Mi),a(Mi,Hw),h(e,Jf,i),h(e,Hn,i),a(Hn,Zw),h(e,Rf,i),h(e,Ue,i),a(Ue,fa),a(fa,Ci),m(Ks,Ci,null),a(Ue,Dw),a(Ue,zi),a(zi,Uw),h(e,Xf,i),h(e,Be,i),a(Be,da),a(da,Ii),m(er,Ii,null),a(Be,Bw),a(Be,Vi),a(Vi,Ww),h(e,Of,i),h(e,Zn,i),a(Zn,Gw),h(e,Lf,i),h(e,ca,i),a(ca,Jw),a(ca,tr),a(tr,Rw),a(ca,Xw),h(e,Qf,i),h(e,We,i),a(We,ua),a(ua,Fi),m(ar,Fi,null),a(We,Ow),a(We,Hi),a(Hi,Lw),h(e,Yf,i),h(e,P,i),a(P,Qw),a(P,Zi),a(Zi,Yw),a(P,Kw),a(P,Di),a(Di,eb),a(P,tb),a(P,Ui),a(Ui,ab),a(P,sb),a(P,Bi),a(Bi,rb),a(P,nb),h(e,Kf,i),h(e,Ge,i),a(Ge,ma),a(ma,Wi),m(sr,Wi,null),a(Ge,ob),a(Ge,Gi),a(Gi,lb),h(e,ed,i),h(e,Dn,i),a(Dn,ib),h(e,td,i),h(e,Je,i),a(Je,va),a(va,Ji),m(rr,Ji,null),a(Je,hb),a(Je,Ri),a(Ri,pb),h(e,ad,i),h(e,ga,i),a(ga,fb),a(ga,Xi),a(Xi,db),a(ga,cb),h(e,sd,i),h(e,wa,i),a(wa,ub),a(wa,Oi),a(Oi,mb),a(wa,vb),h(e,rd,i),h(e,ba,i),a(ba,gb),a(ba,Li),a(Li,wb),a(ba,bb),h(e,nd,i),h(e,Re,i),a(Re,$a),a($a,Qi),m(nr,Qi,null),a(Re,$b),a(Re,Yi),a(Yi,_b),h(e,od,i),h(e,_a,i),a(_a,kb),a(_a,or),a(or,yb),a(_a,Eb),h(e,ld,i),h(e,Xe,i),a(Xe,ka),a(ka,Ki),m(lr,Ki,null),a(Xe,Ab),a(Xe,eh),a(eh,xb),h(e,id,i),h(e,Z,i),a(Z,jb),a(Z,Un),a(Un,Tb),a(Z,Pb),a(Z,Bn),a(Bn,Nb),a(Z,Sb),h(e,hd,i),h(e,Wn,i),a(Wn,qb),h(e,pd,i),h(e,Oe,i),a(Oe,ya),a(ya,th),m(ir,th,null),a(Oe,Mb),a(Oe,ah),a(ah,Cb),h(e,fd,i),h(e,Le,i),a(Le,Ea),a(Ea,sh),m(hr,sh,null),a(Le,zb),a(Le,rh),a(rh,Ib),h(e,dd,i),h(e,Gn,i),a(Gn,Vb),h(e,cd,i),h(e,Qe,i),a(Qe,Aa),a(Aa,nh),m(pr,nh,null),a(Qe,Fb),a(Qe,oh),a(oh,Hb),h(e,ud,i),h(e,Jn,i),a(Jn,Zb),h(e,md,i),h(e,Ye,i),a(Ye,xa),a(xa,lh),m(fr,lh,null),a(Ye,Db),a(Ye,ih),a(ih,Ub),h(e,vd,i),h(e,Ke,i),a(Ke,ja),a(ja,hh),m(dr,hh,null),a(Ke,Bb),a(Ke,ph),a(ph,Wb),h(e,gd,i),h(e,Rn,i),a(Rn,Gb),h(e,wd,i),h(e,et,i),a(et,Ta),a(Ta,fh),m(cr,fh,null),a(et,Jb),a(et,dh),a(dh,Rb),h(e,bd,i),h(e,Xn,i),a(Xn,Xb),h(e,$d,i),h(e,tt,i),a(tt,Pa),a(Pa,ch),m(ur,ch,null),a(tt,Ob),a(tt,uh),a(uh,Lb),h(e,_d,i),h(e,D,i),a(D,Qb),a(D,On),a(On,Yb),a(D,Kb),a(D,Ln),a(Ln,e$),a(D,t$),h(e,kd,i),h(e,Na,i),a(Na,a$),a(Na,Qn),a(Qn,s$),a(Na,r$),h(e,yd,i),h(e,at,i),a(at,Sa),a(Sa,mh),m(mr,mh,null),a(at,n$),a(at,vh),a(vh,o$),h(e,Ed,i),h(e,U,i),a(U,l$),a(U,Yn),a(Yn,i$),a(U,h$),a(U,Kn),a(Kn,p$),a(U,f$),h(e,Ad,i),h(e,eo,i),a(eo,d$),h(e,xd,i),h(e,st,i),a(st,qa),a(qa,gh),m(vr,gh,null),a(st,c$),a(st,wh),a(wh,u$),h(e,jd,i),h(e,B,i),a(B,m$),a(B,to),a(to,v$),a(B,g$),a(B,ao),a(ao,w$),a(B,b$),h(e,Td,i),h(e,rt,i),a(rt,Ma),a(Ma,bh),m(gr,bh,null),a(rt,$$),a(rt,$h),a($h,_$),h(e,Pd,i),h(e,W,i),a(W,k$),a(W,so),a(so,y$),a(W,E$),a(W,ro),a(ro,A$),a(W,x$),h(e,Nd,i),h(e,nt,i),a(nt,Ca),a(Ca,_h),m(wr,_h,null),a(nt,j$),a(nt,kh),a(kh,T$),h(e,Sd,i),h(e,no,i),a(no,P$),h(e,qd,i),h(e,ot,i),a(ot,za),a(za,yh),m(br,yh,null),a(ot,N$),a(ot,Eh),a(Eh,S$),h(e,Md,i),h(e,lt,i),a(lt,Ia),a(Ia,Ah),m($r,Ah,null),a(lt,q$),a(lt,xh),a(xh,M$),h(e,Cd,i),h(e,oo,i),a(oo,C$),h(e,zd,i),h(e,it,i),a(it,Va),a(Va,jh),m(_r,jh,null),a(it,z$),a(it,Th),a(Th,I$),h(e,Id,i),h(e,lo,i),a(lo,V$),h(e,Vd,i),m(kr,e,i),h(e,Fd,i),h(e,G,i),a(G,F$),a(G,Ph),a(Ph,H$),a(G,Z$),a(G,Nh),a(Nh,D$),a(G,U$),h(e,Hd,i),m(yr,e,i),h(e,Zd,i),h(e,Fa,i),a(Fa,B$),a(Fa,Sh),a(Sh,W$),a(Fa,G$),h(e,Dd,i),m(Er,e,i),h(e,Ud,i),h(e,io,i),a(io,J$),h(e,Bd,i),m(Ar,e,i),h(e,Wd,i),h(e,ho,i),a(ho,R$),h(e,Gd,i),h(e,po,i),a(po,X$),h(e,Jd,i),m(xr,e,i),h(e,Rd,i),h(e,J,i),a(J,O$),a(J,qh),a(qh,L$),a(J,Q$),a(J,Mh),a(Mh,Y$),a(J,K$),h(e,Xd,i),h(e,R,i),a(R,e2),a(R,fo),a(fo,t2),a(R,a2),a(R,Ch),a(Ch,s2),a(R,r2),h(e,Od,i),h(e,ht,i),a(ht,Ha),a(Ha,zh),m(jr,zh,null),a(ht,n2),a(ht,Ih),a(Ih,o2),h(e,Ld,i),h(e,co,i),a(co,l2),h(e,Qd,i),h(e,pt,i),a(pt,Za),a(Za,Vh),m(Tr,Vh,null),a(pt,i2),a(pt,Fh),a(Fh,h2),h(e,Yd,i),h(e,uo,i),a(uo,p2),h(e,Kd,i),h(e,ft,i),a(ft,Da),a(Da,Hh),m(Pr,Hh,null),a(ft,f2),a(ft,Zh),a(Zh,d2),h(e,ec,i),h(e,dt,i),a(dt,Ua),a(Ua,Dh),m(Nr,Dh,null),a(dt,c2),a(dt,Uh),a(Uh,u2),h(e,tc,i),h(e,mo,i),a(mo,m2),ac=!0},p(e,[i]){const Sr={};i&2&&(Sr.$$scope={dirty:i,ctx:e}),ea.$set(Sr)},i(e){ac||(v(Ra.$$.fragment,e),v(Xa.$$.fragment,e),v(Oa.$$.fragment,e),v(La.$$.fragment,e),v(Qa.$$.fragment,e),v(Ya.$$.fragment,e),v(Ka.$$.fragment,e),v(es.$$.fragment,e),v(ts.$$.fragment,e),v(as.$$.fragment,e),v(ss.$$.fragment,e),v(rs.$$.fragment,e),v(ns.$$.fragment,e),v(os.$$.fragment,e),v(ls.$$.fragment,e),v(is.$$.fragment,e),v(hs.$$.fragment,e),v(ps.$$.fragment,e),v(fs.$$.fragment,e),v(ds.$$.fragment,e),v(cs.$$.fragment,e),v(us.$$.fragment,e),v(ms.$$.fragment,e),v(vs.$$.fragment,e),v(gs.$$.fragment,e),v(ws.$$.fragment,e),v(bs.$$.fragment,e),v($s.$$.fragment,e),v(_s.$$.fragment,e),v(ys.$$.fragment,e),v(As.$$.fragment,e),v(xs.$$.fragment,e),v(js.$$.fragment,e),v(Ts.$$.fragment,e),v(Ps.$$.fragment,e),v(Ss.$$.fragment,e),v(qs.$$.fragment,e),v(Cs.$$.fragment,e),v(zs.$$.fragment,e),v(Is.$$.fragment,e),v(Fs.$$.fragment,e),v(Hs.$$.fragment,e),v(Zs.$$.fragment,e),v(Ds.$$.fragment,e),v(Us.$$.fragment,e),v(Bs.$$.fragment,e),v(ea.$$.fragment,e),v(Ws.$$.fragment,e),v(Gs.$$.fragment,e),v(Js.$$.fragment,e),v(Rs.$$.fragment,e),v(Xs.$$.fragment,e),v(Os.$$.fragment,e),v(Qs.$$.fragment,e),v(Ys.$$.fragment,e),v(Ks.$$.fragment,e),v(er.$$.fragment,e),v(ar.$$.fragment,e),v(sr.$$.fragment,e),v(rr.$$.fragment,e),v(nr.$$.fragment,e),v(lr.$$.fragment,e),v(ir.$$.fragment,e),v(hr.$$.fragment,e),v(pr.$$.fragment,e),v(fr.$$.fragment,e),v(dr.$$.fragment,e),v(cr.$$.fragment,e),v(ur.$$.fragment,e),v(mr.$$.fragment,e),v(vr.$$.fragment,e),v(gr.$$.fragment,e),v(wr.$$.fragment,e),v(br.$$.fragment,e),v($r.$$.fragment,e),v(_r.$$.fragment,e),v(kr.$$.fragment,e),v(yr.$$.fragment,e),v(Er.$$.fragment,e),v(Ar.$$.fragment,e),v(xr.$$.fragment,e),v(jr.$$.fragment,e),v(Tr.$$.fragment,e),v(Pr.$$.fragment,e),v(Nr.$$.fragment,e),ac=!0)},o(e){g(Ra.$$.fragment,e),g(Xa.$$.fragment,e),g(Oa.$$.fragment,e),g(La.$$.fragment,e),g(Qa.$$.fragment,e),g(Ya.$$.fragment,e),g(Ka.$$.fragment,e),g(es.$$.fragment,e),g(ts.$$.fragment,e),g(as.$$.fragment,e),g(ss.$$.fragment,e),g(rs.$$.fragment,e),g(ns.$$.fragment,e),g(os.$$.fragment,e),g(ls.$$.fragment,e),g(is.$$.fragment,e),g(hs.$$.fragment,e),g(ps.$$.fragment,e),g(fs.$$.fragment,e),g(ds.$$.fragment,e),g(cs.$$.fragment,e),g(us.$$.fragment,e),g(ms.$$.fragment,e),g(vs.$$.fragment,e),g(gs.$$.fragment,e),g(ws.$$.fragment,e),g(bs.$$.fragment,e),g($s.$$.fragment,e),g(_s.$$.fragment,e),g(ys.$$.fragment,e),g(As.$$.fragment,e),g(xs.$$.fragment,e),g(js.$$.fragment,e),g(Ts.$$.fragment,e),g(Ps.$$.fragment,e),g(Ss.$$.fragment,e),g(qs.$$.fragment,e),g(Cs.$$.fragment,e),g(zs.$$.fragment,e),g(Is.$$.fragment,e),g(Fs.$$.fragment,e),g(Hs.$$.fragment,e),g(Zs.$$.fragment,e),g(Ds.$$.fragment,e),g(Us.$$.fragment,e),g(Bs.$$.fragment,e),g(ea.$$.fragment,e),g(Ws.$$.fragment,e),g(Gs.$$.fragment,e),g(Js.$$.fragment,e),g(Rs.$$.fragment,e),g(Xs.$$.fragment,e),g(Os.$$.fragment,e),g(Qs.$$.fragment,e),g(Ys.$$.fragment,e),g(Ks.$$.fragment,e),g(er.$$.fragment,e),g(ar.$$.fragment,e),g(sr.$$.fragment,e),g(rr.$$.fragment,e),g(nr.$$.fragment,e),g(lr.$$.fragment,e),g(ir.$$.fragment,e),g(hr.$$.fragment,e),g(pr.$$.fragment,e),g(fr.$$.fragment,e),g(dr.$$.fragment,e),g(cr.$$.fragment,e),g(ur.$$.fragment,e),g(mr.$$.fragment,e),g(vr.$$.fragment,e),g(gr.$$.fragment,e),g(wr.$$.fragment,e),g(br.$$.fragment,e),g($r.$$.fragment,e),g(_r.$$.fragment,e),g(kr.$$.fragment,e),g(yr.$$.fragment,e),g(Er.$$.fragment,e),g(Ar.$$.fragment,e),g(xr.$$.fragment,e),g(jr.$$.fragment,e),g(Tr.$$.fragment,e),g(Pr.$$.fragment,e),g(Nr.$$.fragment,e),ac=!1},d(e){t(E),e&&t(ct),e&&t(j),w(Ra),e&&t(Xh),e&&t(Cr),e&&t(Oh),e&&t(Q),w(Xa),e&&t(Lh),e&&t(Y),w(Oa),e&&t(Qh),e&&t(zr),e&&t(Yh),w(La,e),e&&t(Kh),e&&t(Ir),e&&t(ep),e&&t(Vr),e&&t(tp),w(Qa,e),e&&t(ap),e&&t(Fr),e&&t(sp),w(Ya,e),e&&t(rp),e&&t(Hr),e&&t(np),e&&t(Zr),e&&t(op),w(Ka,e),e&&t(lp),e&&t(Dr),e&&t(ip),w(es,e),e&&t(hp),e&&t(M),e&&t(pp),w(ts,e),e&&t(fp),e&&t(K),w(as),e&&t(dp),e&&t(ee),e&&t(cp),e&&t(te),w(ss),e&&t(up),e&&t(ae),e&&t(mp),e&&t(se),w(rs),e&&t(vp),e&&t(re),w(ns),e&&t(gp),e&&t(T),e&&t(wp),e&&t(ne),w(os),e&&t(bp),e&&t(oe),w(ls),e&&t($p),e&&t(Lr),e&&t(_p),e&&t(le),w(is),e&&t(kp),e&&t(k),e&&t(yp),e&&t(ie),w(hs),e&&t(Ep),e&&t(Qr),e&&t(Ap),e&&t(he),w(ps),e&&t(xp),e&&t(Yr),e&&t(jp),e&&t(pe),w(fs),e&&t(Tp),e&&t(fe),w(ds),e&&t(Pp),e&&t(Kr),e&&t(Np),e&&t(C),e&&t(Sp),e&&t(en),e&&t(qp),e&&t(de),w(cs),e&&t(Mp),e&&t(tn),e&&t(Cp),w(us,e),e&&t(zp),e&&t(ce),w(ms),e&&t(Ip),e&&t(an),e&&t(Vp),e&&t(ue),w(vs),e&&t(Fp),e&&t(me),w(gs),e&&t(Hp),e&&t(St),e&&t(Zp),w(ws,e),e&&t(Dp),e&&t(ve),w(bs),e&&t(Up),e&&t(ge),w($s),e&&t(Bp),e&&t(rn),e&&t(Wp),e&&t(we),w(_s),e&&t(Gp),e&&t(zt),e&&t(Jp),e&&t($),e&&t(Rp),e&&t(z),e&&t(Xp),e&&t(be),w(ys),e&&t(Op),e&&t(Vt),e&&t(Lp),e&&t(Ft),e&&t(Qp),e&&t($e),w(As),e&&t(Yp),e&&t(_e),w(xs),e&&t(Kp),e&&t(ln),e&&t(ef),e&&t(V),e&&t(tf),e&&t(ke),w(js),e&&t(af),e&&t(ye),w(Ts),e&&t(sf),e&&t(Wt),e&&t(rf),e&&t(Ee),w(Ps),e&&t(nf),e&&t(Jt),e&&t(of),e&&t(Ae),w(Ss),e&&t(lf),e&&t(vn),e&&t(hf),w(qs,e),e&&t(pf),e&&t(Xt),e&&t(ff),w(Cs,e),e&&t(df),e&&t(gn),e&&t(cf),w(zs,e),e&&t(uf),e&&t(wn),e&&t(mf),w(Is,e),e&&t(vf),e&&t(Ot),e&&t(gf),w(Fs,e),e&&t(wf),e&&t(Lt),e&&t(bf),w(Hs,e),e&&t($f),e&&t(bn),e&&t(_f),e&&t($n),e&&t(kf),w(Zs,e),e&&t(yf),e&&t(_n),e&&t(Ef),w(Ds,e),e&&t(Af),e&&t(Qt),e&&t(xf),e&&t(xe),w(Us),e&&t(jf),e&&t(je),w(Bs),e&&t(Tf),e&&t(yn),e&&t(Pf),e&&t(En),e&&t(Nf),e&&t(_),e&&t(Sf),w(ea,e),e&&t(qf),e&&t(ta),e&&t(Mf),e&&t(Ce),w(Ws),e&&t(Cf),e&&t(zn),e&&t(zf),e&&t(ze),w(Gs),e&&t(If),e&&t(Ie),w(Js),e&&t(Vf),e&&t(In),e&&t(Ff),e&&t(Ve),w(Rs),e&&t(Hf),e&&t(Vn),e&&t(Zf),e&&t(Fe),w(Xs),e&&t(Df),e&&t(He),w(Os),e&&t(Uf),e&&t(ia),e&&t(Bf),e&&t(Ze),w(Qs),e&&t(Wf),e&&t(Fn),e&&t(Gf),e&&t(De),w(Ys),e&&t(Jf),e&&t(Hn),e&&t(Rf),e&&t(Ue),w(Ks),e&&t(Xf),e&&t(Be),w(er),e&&t(Of),e&&t(Zn),e&&t(Lf),e&&t(ca),e&&t(Qf),e&&t(We),w(ar),e&&t(Yf),e&&t(P),e&&t(Kf),e&&t(Ge),w(sr),e&&t(ed),e&&t(Dn),e&&t(td),e&&t(Je),w(rr),e&&t(ad),e&&t(ga),e&&t(sd),e&&t(wa),e&&t(rd),e&&t(ba),e&&t(nd),e&&t(Re),w(nr),e&&t(od),e&&t(_a),e&&t(ld),e&&t(Xe),w(lr),e&&t(id),e&&t(Z),e&&t(hd),e&&t(Wn),e&&t(pd),e&&t(Oe),w(ir),e&&t(fd),e&&t(Le),w(hr),e&&t(dd),e&&t(Gn),e&&t(cd),e&&t(Qe),w(pr),e&&t(ud),e&&t(Jn),e&&t(md),e&&t(Ye),w(fr),e&&t(vd),e&&t(Ke),w(dr),e&&t(gd),e&&t(Rn),e&&t(wd),e&&t(et),w(cr),e&&t(bd),e&&t(Xn),e&&t($d),e&&t(tt),w(ur),e&&t(_d),e&&t(D),e&&t(kd),e&&t(Na),e&&t(yd),e&&t(at),w(mr),e&&t(Ed),e&&t(U),e&&t(Ad),e&&t(eo),e&&t(xd),e&&t(st),w(vr),e&&t(jd),e&&t(B),e&&t(Td),e&&t(rt),w(gr),e&&t(Pd),e&&t(W),e&&t(Nd),e&&t(nt),w(wr),e&&t(Sd),e&&t(no),e&&t(qd),e&&t(ot),w(br),e&&t(Md),e&&t(lt),w($r),e&&t(Cd),e&&t(oo),e&&t(zd),e&&t(it),w(_r),e&&t(Id),e&&t(lo),e&&t(Vd),w(kr,e),e&&t(Fd),e&&t(G),e&&t(Hd),w(yr,e),e&&t(Zd),e&&t(Fa),e&&t(Dd),w(Er,e),e&&t(Ud),e&&t(io),e&&t(Bd),w(Ar,e),e&&t(Wd),e&&t(ho),e&&t(Gd),e&&t(po),e&&t(Jd),w(xr,e),e&&t(Rd),e&&t(J),e&&t(Xd),e&&t(R),e&&t(Od),e&&t(ht),w(jr),e&&t(Ld),e&&t(co),e&&t(Qd),e&&t(pt),w(Tr),e&&t(Yd),e&&t(uo),e&&t(Kd),e&&t(ft),w(Pr),e&&t(ec),e&&t(dt),w(Nr),e&&t(tc),e&&t(mo)}}}const ME={local:"glossary",sections:[{local:"a",sections:[{local:"attention-mask",title:"attention mask"},{local:"autoencoding-models",title:"autoencoding models"},{local:"autoregressive-models",title:"autoregressive models"}],title:"A"},{local:"b",sections:[{local:"backbone",title:"backbone"}],title:"B"},{local:"c",sections:[{local:"causal-language-modeling",title:"causal language modeling"},{local:"channel",title:"channel"},{local:"connectionist-temporal-classification-ctc",title:"connectionist temporal classification (CTC)"},{local:"convolution",title:"convolution"}],title:"C"},{local:"d",sections:[{local:"decoder-input-ids",title:"decoder input IDs"},{local:"decoder-models",title:"decoder models"},{local:"deep-learning-dl",title:"deep learning (DL)"}],title:"D"},{local:"e",sections:[{local:"encoder-models",title:"encoder models"}],title:"E"},{local:"f",sections:[{local:"feature-extraction",title:"feature extraction"},{local:"feed-forward-chunking",title:"feed forward chunking"},{local:"finetuned-models",title:"finetuned models"}],title:"F"},{local:"h",sections:[{local:"head",title:"head"}],title:"H"},{local:"i",sections:[{local:"image-patch",title:"image patch"},{local:"inference",title:"inference"},{local:"input-ids",title:"input IDs"}],title:"I"},{local:"l",sections:[{local:"labels",title:"labels"},{local:"large-language-models-llm",title:"large language models (LLM)"}],title:"L"},{local:"m",sections:[{local:"masked-language-modeling-mlm",title:"masked language modeling (MLM)"},{local:"multimodal",title:"multimodal"}],title:"M"},{local:"n",sections:[{local:"natural-language-generation-nlg",title:"Natural language generation (NLG)"},{local:"natural-language-processing-nlp",title:"Natural language processing (NLP)"},{local:"natural-language-understanding-nlu",title:"Natural language understanding (NLU)"}],title:"N"},{local:"p",sections:[{local:"pipeline",title:"pipeline"},{local:"pixel-values",title:"pixel values"},{local:"pooling",title:"pooling"},{local:"position-ids",title:"position IDs"},{local:"preprocessing",title:"preprocessing"},{local:"pretrained-model",title:"pretrained model"}],title:"P"},{local:"r",sections:[{local:"recurrent-neural-network-rnn",title:"recurrent neural network (RNN)"},{local:"representation-learning",title:"representation learning"}],title:"R"},{local:"s",sections:[{local:"sampling-rate",title:"sampling rate"},{local:"selfattention",title:"self-attention"},{local:"selfsupervised-learning",title:"self-supervised learning "},{local:"semisupervised-learning",title:"semi-supervised learning"},{local:"sequencetosequence-seq2seq",title:"sequence-to-sequence (seq2seq)"},{local:"stride",title:"stride"},{local:"supervised-learning",title:"supervised learning"}],title:"S"},{local:"t",sections:[{local:"token",title:"token"},{local:"token-type-ids",title:"token Type IDs"},{local:"transfer-learning",title:"transfer learning"},{local:"transformer",title:"transformer"}],title:"T"},{local:"u",sections:[{local:"unsupervised-learning",title:"unsupervised learning"}],title:"U"}],title:"Glossary"};function CE(Rh){return PE(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ZE extends AE{constructor(E){super();xE(this,E,CE,qE,jE,{})}}export{ZE as default,ME as metadata};
