import{S as fe,i as ge,s as ve,e as o,k as m,w,t as P,l as ue,M as $e,c as i,d as n,m as f,x as b,a,h as N,b as c,G as e,g as p,y as A,o as k,p as pe,q as d,B as z,v as ke,n as me}from"../../chunks/vendor-hf-doc-builder.js";import{I as H}from"../../chunks/IconCopyLink-hf-doc-builder.js";import{C as Hn}from"../../chunks/CodeBlock-hf-doc-builder.js";import{C as de}from"../../chunks/CourseFloatingBanner-hf-doc-builder.js";import{Q as j}from"../../chunks/Question-hf-doc-builder.js";import{F as xe}from"../../chunks/FrameworkSwitchCourse-hf-doc-builder.js";import"../../chunks/DocNotebookDropdown-hf-doc-builder.js";function ye(I){let s,u,v,g,T,x,M,E,$,q;return g=new H({}),$=new j({props:{choices:[{text:"M\u1ED9t m\xF4 h\xECnh t\u1EF1 \u0111\u1ED9ng hu\u1EA5n luy\u1EC7n tr\xEAn d\u1EEF li\u1EC7u c\u1EE7a b\u1EA1n",explain:"Kh\xF4ng ch\xEDnh x\xE1c. B\u1EA1n c\xF3 \u0111ang nh\u1EA7m s\u1EA3n ph\u1EA9m n\xE0y v\u1EDBi s\u1EA3n ph\u1EA9m <a href='https://huggingface.co/autotrain'>AutoTrain</a> c\u1EE7a ch\xFAng t\xF4i kh\xF4ng?"},{text:"M\u1ED9t \u0111\u1ED1i t\u01B0\u1EE3ng tr\u1EA3 v\u1EC1 ki\u1EBFn tr\xFAc ch\xEDnh x\xE1c d\u1EF1a tr\xEAn checkpoint",explain:"Ch\xEDnh x\xE1c: <code>TFAutoModel</code> ch\u1EC9 c\u1EA7n bi\u1EBFt checkpoint t\u1EEB \u0111\xF3 kh\u1EDFi t\u1EA1o \u0111\u1EC3 tr\u1EA3 v\u1EC1 ki\u1EBFn tr\xFAc ch\xEDnh x\xE1c.",correct:!0},{text:"M\u1ED9t m\xF4 h\xECnh t\u1EF1 \u0111\u1ED9ng ph\xE1t hi\u1EC7n ng\xF4n ng\u1EEF \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng cho \u0111\u1EA7u v\xE0o c\u1EE7a n\xF3 \u0111\u1EC3 t\u1EA3i c\xE1c tr\u1ECDng s\u1ED1 ch\xEDnh x\xE1c",explain:"Kh\xF4ng ch\xEDnh x\xE1c; trong khi m\u1ED9t s\u1ED1 checkpoint v\xE0 m\xF4 h\xECnh c\xF3 kh\u1EA3 n\u0103ng x\u1EED l\xFD \u0111a ng\xF4n ng\u1EEF, kh\xF4ng c\xF3 c\xF4ng c\u1EE5 t\xEDch h\u1EE3p n\xE0o \u0111\u1EC3 l\u1EF1a ch\u1ECDn checkpoint t\u1EF1 \u0111\u1ED9ng theo ng\xF4n ng\u1EEF. B\u1EA1n n\xEAn truy c\u1EADp <a href='https://huggingface.co/models'>Model Hub</a>  \u0111\u1EC3 t\xECm checkpoint t\u1ED1t nh\u1EA5t cho t\xE1c v\u1EE5 c\u1EE7a b\u1EA1n!"}]}}),{c(){s=o("h3"),u=o("a"),v=o("span"),w(g.$$.fragment),T=m(),x=o("span"),M=P("5. TFAutoModel l\xE0 g\xEC?"),E=m(),w($.$$.fragment),this.h()},l(r){s=i(r,"H3",{class:!0});var y=a(s);u=i(y,"A",{id:!0,class:!0,href:!0});var h=a(u);v=i(h,"SPAN",{});var _=a(v);b(g.$$.fragment,_),_.forEach(n),h.forEach(n),T=f(y),x=i(y,"SPAN",{});var S=a(x);M=N(S,"5. TFAutoModel l\xE0 g\xEC?"),S.forEach(n),y.forEach(n),E=f(r),b($.$$.fragment,r),this.h()},h(){c(u,"id","5.-tfautomodel-l\xE0-g\xEC?"),c(u,"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"),c(u,"href","#5.-tfautomodel-l\xE0-g\xEC?"),c(s,"class","relative group")},m(r,y){p(r,s,y),e(s,u),e(u,v),A(g,v,null),e(s,T),e(s,x),e(x,M),p(r,E,y),A($,r,y),q=!0},i(r){q||(d(g.$$.fragment,r),d($.$$.fragment,r),q=!0)},o(r){k(g.$$.fragment,r),k($.$$.fragment,r),q=!1},d(r){r&&n(s),z(g),r&&n(E),z($,r)}}}function _e(I){let s,u,v,g,T,x,M,E,$,q;return g=new H({}),$=new j({props:{choices:[{text:"M\u1ED9t m\xF4 h\xECnh t\u1EF1 \u0111\u1ED9ng hu\u1EA5n luy\u1EC7n tr\xEAn d\u1EEF li\u1EC7u c\u1EE7a b\u1EA1n",explain:"Kh\xF4ng ch\xEDnh x\xE1c. B\u1EA1n c\xF3 \u0111ang nh\u1EA7m s\u1EA3n ph\u1EA9m n\xE0y v\u1EDBi s\u1EA3n ph\u1EA9m <a href='https://huggingface.co/autotrain'>AutoTrain</a> c\u1EE7a ch\xFAng t\xF4i kh\xF4ng?"},{text:"M\u1ED9t \u0111\u1ED1i t\u01B0\u1EE3ng tr\u1EA3 v\u1EC1 ki\u1EBFn tr\xFAc ch\xEDnh x\xE1c d\u1EF1a tr\xEAn checkpoint",explain:"Ch\xEDnh x\xE1c: <code>AutoModel</code> ch\u1EC9 c\u1EA7n bi\u1EBFt checkpoint t\u1EEB \u0111\xF3 kh\u1EDFi t\u1EA1o \u0111\u1EC3 tr\u1EA3 v\u1EC1 ki\u1EBFn tr\xFAc ch\xEDnh x\xE1c.",correct:!0},{text:"M\u1ED9t m\xF4 h\xECnh t\u1EF1 \u0111\u1ED9ng ph\xE1t hi\u1EC7n ng\xF4n ng\u1EEF \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng cho \u0111\u1EA7u v\xE0o c\u1EE7a n\xF3 \u0111\u1EC3 t\u1EA3i c\xE1c tr\u1ECDng s\u1ED1 ch\xEDnh x\xE1c",explain:"Kh\xF4ng ch\xEDnh x\xE1c; trong khi m\u1ED9t s\u1ED1 checkpoint v\xE0 m\xF4 h\xECnh c\xF3 kh\u1EA3 n\u0103ng x\u1EED l\xFD \u0111a ng\xF4n ng\u1EEF, kh\xF4ng c\xF3 c\xF4ng c\u1EE5 t\xEDch h\u1EE3p n\xE0o \u0111\u1EC3 l\u1EF1a ch\u1ECDn checkpoint t\u1EF1 \u0111\u1ED9ng theo ng\xF4n ng\u1EEF. B\u1EA1n n\xEAn truy c\u1EADp <a href='https://huggingface.co/models'>Model Hub</a>  \u0111\u1EC3 t\xECm checkpoint t\u1ED1t nh\u1EA5t cho t\xE1c v\u1EE5 c\u1EE7a b\u1EA1n!"}]}}),{c(){s=o("h3"),u=o("a"),v=o("span"),w(g.$$.fragment),T=m(),x=o("span"),M=P("5. AutoModel l\xE0 g\xEC?"),E=m(),w($.$$.fragment),this.h()},l(r){s=i(r,"H3",{class:!0});var y=a(s);u=i(y,"A",{id:!0,class:!0,href:!0});var h=a(u);v=i(h,"SPAN",{});var _=a(v);b(g.$$.fragment,_),_.forEach(n),h.forEach(n),T=f(y),x=i(y,"SPAN",{});var S=a(x);M=N(S,"5. AutoModel l\xE0 g\xEC?"),S.forEach(n),y.forEach(n),E=f(r),b($.$$.fragment,r),this.h()},h(){c(u,"id","5.-automodel-l\xE0-g\xEC?"),c(u,"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"),c(u,"href","#5.-automodel-l\xE0-g\xEC?"),c(s,"class","relative group")},m(r,y){p(r,s,y),e(s,u),e(u,v),A(g,v,null),e(s,T),e(s,x),e(x,M),p(r,E,y),A($,r,y),q=!0},i(r){q||(d(g.$$.fragment,r),d($.$$.fragment,r),q=!0)},o(r){k(g.$$.fragment,r),k($.$$.fragment,r),q=!1},d(r){r&&n(s),z(g),r&&n(E),z($,r)}}}function we(I){let s,u,v,g,T,x,M,E,$,q,r,y;return g=new H({}),$=new Hn({props:{code:`from transformers import AutoTokenizer, TFAutoModel

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = TFAutoModel.from_pretrained("gpt2")

encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer, TFAutoModel

tokenizer = AutoTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)
model = TFAutoModel.from_pretrained(<span class="hljs-string">&quot;gpt2&quot;</span>)

encoded = tokenizer(<span class="hljs-string">&quot;Hey!&quot;</span>, return_tensors=<span class="hljs-string">&quot;pt&quot;</span>)
result = model(**encoded)`}}),r=new j({props:{choices:[{text:"Kh\xF4ng, c\xF3 v\u1EBB \u0111\xFAng.",explain:"Ti\u1EBFc thay, vi\u1EC7c k\u1EBFt h\u1EE3p m\u1ED9t m\xF4 h\xECnh v\u1EDBi m\u1ED9t tokenizer \u0111\xE3 \u0111\u01B0\u1EE3c hu\u1EA5n luy\u1EC7n v\u1EDBi m\u1ED9t checkpoint kh\xE1c hi\u1EBFm khi l\xE0 m\u1ED9t \xFD t\u01B0\u1EDFng hay. M\xF4 h\xECnh kh\xF4ng \u0111\u01B0\u1EE3c hu\u1EA5n luy\u1EC7n \u0111\u1EC3 hi\u1EC3u \u0111\u01B0\u1EE3c \u0111\u1EA7u ra c\u1EE7a tokenizer n\xE0y, v\xEC v\u1EADy m\xF4 h\xECnh xu\u1EA5t ra (n\u1EBFu n\xF3 th\u1EADm ch\xED c\xF3 th\u1EC3 ch\u1EA1y!) s\u1EBD kh\xF4ng c\xF3 \xFD ngh\u0129a g\xEC."},{text:"Tokenizer v\xE0 m\xF4 h\xECnh ph\u1EA3i lu\xF4n \u1EDF c\xF9ng m\u1ED9t checkpoint.",explain:"\u0110\xFAng!",correct:!0},{text:"\u0110\xE2y l\xE0 m\u1ED9t v\xED d\u1EE5 th\u1EF1c ti\u1EC5n v\u1EC1 \u0111\u1EC7m th\xEAm v\xE0 c\u1EAFt b\u1EDBt v\u1EDBi tokenizer khi t\xE1t c\u1EA3 \u0111\u1EA7u v\xE0o trong c\xF9ng m\u1ED9t l\xF4.",explain:"\u0110\xFAng l\xE0 m\u1ECDi \u0111\u1EA7u v\xE0o c\u1EE7a m\xF4 h\xECnh c\u1EA7n ph\u1EA3i l\xE0 m\u1ED9t l\xF4. Tuy nhi\xEAn, vi\u1EC7c c\u1EAFt b\u1EDBt ho\u1EB7c ch\xE8n th\xEAm chu\u1ED7i n\xE0y s\u1EBD kh\xF4ng nh\u1EA5t thi\u1EBFt c\xF3 \xFD ngh\u0129a v\xEC ch\u1EC9 c\u1EA7n m\u1ED9t trong s\u1ED1 \u0111\xF3 v\xE0 \u0111\xF3 l\xE0 c\xE1c k\u1EF9 thu\u1EADt \u0111\u1EC3 g\u1ED9p m\u1ED9t danh s\xE1ch c\xE1c c\xE2u l\u1EA1i v\u1EDBi nhau."}]}}),{c(){s=o("h3"),u=o("a"),v=o("span"),w(g.$$.fragment),T=m(),x=o("span"),M=P("10. C\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 sai v\u1EDBi \u0111o\u1EA1n m\xE3 sau \u0111\xE2y?"),E=m(),w($.$$.fragment),q=m(),w(r.$$.fragment),this.h()},l(h){s=i(h,"H3",{class:!0});var _=a(s);u=i(_,"A",{id:!0,class:!0,href:!0});var S=a(u);v=i(S,"SPAN",{});var C=a(v);b(g.$$.fragment,C),C.forEach(n),S.forEach(n),T=f(_),x=i(_,"SPAN",{});var D=a(x);M=N(D,"10. C\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 sai v\u1EDBi \u0111o\u1EA1n m\xE3 sau \u0111\xE2y?"),D.forEach(n),_.forEach(n),E=f(h),b($.$$.fragment,h),q=f(h),b(r.$$.fragment,h),this.h()},h(){c(u,"id","10.-c\xF3-\u0111i\u1EC1u-g\xEC-\u0111\xF3-sai-v\u1EDBi-\u0111o\u1EA1n-m\xE3-sau-\u0111\xE2y?"),c(u,"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"),c(u,"href","#10.-c\xF3-\u0111i\u1EC1u-g\xEC-\u0111\xF3-sai-v\u1EDBi-\u0111o\u1EA1n-m\xE3-sau-\u0111\xE2y?"),c(s,"class","relative group")},m(h,_){p(h,s,_),e(s,u),e(u,v),A(g,v,null),e(s,T),e(s,x),e(x,M),p(h,E,_),A($,h,_),p(h,q,_),A(r,h,_),y=!0},i(h){y||(d(g.$$.fragment,h),d($.$$.fragment,h),d(r.$$.fragment,h),y=!0)},o(h){k(g.$$.fragment,h),k($.$$.fragment,h),k(r.$$.fragment,h),y=!1},d(h){h&&n(s),z(g),h&&n(E),z($,h),h&&n(q),z(r,h)}}}function be(I){let s,u,v,g,T,x,M,E,$,q,r,y;return g=new H({}),$=new Hn({props:{code:`from transformers import AutoTokenizer, AutoModel

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = AutoModel.from_pretrained("gpt2")

encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer, AutoModel

tokenizer = AutoTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)
model = AutoModel.from_pretrained(<span class="hljs-string">&quot;gpt2&quot;</span>)

encoded = tokenizer(<span class="hljs-string">&quot;Hey!&quot;</span>, return_tensors=<span class="hljs-string">&quot;pt&quot;</span>)
result = model(**encoded)`}}),r=new j({props:{choices:[{text:"Kh\xF4ng, c\xF3 v\u1EBB \u0111\xFAng.",explain:"Ti\u1EBFc thay, vi\u1EC7c k\u1EBFt h\u1EE3p m\u1ED9t m\xF4 h\xECnh v\u1EDBi m\u1ED9t tokenizer \u0111\xE3 \u0111\u01B0\u1EE3c hu\u1EA5n luy\u1EC7n v\u1EDBi m\u1ED9t checkpoint kh\xE1c hi\u1EBFm khi l\xE0 m\u1ED9t \xFD t\u01B0\u1EDFng hay. M\xF4 h\xECnh kh\xF4ng \u0111\u01B0\u1EE3c hu\u1EA5n luy\u1EC7n \u0111\u1EC3 hi\u1EC3u \u0111\u01B0\u1EE3c \u0111\u1EA7u ra c\u1EE7a tokenizer n\xE0y, v\xEC v\u1EADy m\xF4 h\xECnh xu\u1EA5t ra (n\u1EBFu n\xF3 th\u1EADm ch\xED c\xF3 th\u1EC3 ch\u1EA1y!) s\u1EBD kh\xF4ng c\xF3 \xFD ngh\u0129a g\xEC."},{text:"Tokenizer v\xE0 m\xF4 h\xECnh ph\u1EA3i lu\xF4n \u1EDF c\xF9ng m\u1ED9t checkpoint.",explain:"\u0110\xFAng!",correct:!0},{text:"\u0110\xE2y l\xE0 m\u1ED9t v\xED d\u1EE5 th\u1EF1c ti\u1EC5n v\u1EC1 \u0111\u1EC7m th\xEAm v\xE0 c\u1EAFt b\u1EDBt v\u1EDBi tokenizer khi t\xE1t c\u1EA3 \u0111\u1EA7u v\xE0o trong c\xF9ng m\u1ED9t l\xF4.",explain:"\u0110\xFAng l\xE0 m\u1ECDi \u0111\u1EA7u v\xE0o c\u1EE7a m\xF4 h\xECnh c\u1EA7n ph\u1EA3i l\xE0 m\u1ED9t l\xF4. Tuy nhi\xEAn, vi\u1EC7c c\u1EAFt b\u1EDBt ho\u1EB7c ch\xE8n th\xEAm chu\u1ED7i n\xE0y s\u1EBD kh\xF4ng nh\u1EA5t thi\u1EBFt c\xF3 \xFD ngh\u0129a v\xEC ch\u1EC9 c\u1EA7n m\u1ED9t trong s\u1ED1 \u0111\xF3 v\xE0 \u0111\xF3 l\xE0 c\xE1c k\u1EF9 thu\u1EADt \u0111\u1EC3 g\u1ED9p m\u1ED9t danh s\xE1ch c\xE1c c\xE2u l\u1EA1i v\u1EDBi nhau."}]}}),{c(){s=o("h3"),u=o("a"),v=o("span"),w(g.$$.fragment),T=m(),x=o("span"),M=P("10. C\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 sai v\u1EDBi \u0111o\u1EA1n m\xE3 sau \u0111\xE2y?"),E=m(),w($.$$.fragment),q=m(),w(r.$$.fragment),this.h()},l(h){s=i(h,"H3",{class:!0});var _=a(s);u=i(_,"A",{id:!0,class:!0,href:!0});var S=a(u);v=i(S,"SPAN",{});var C=a(v);b(g.$$.fragment,C),C.forEach(n),S.forEach(n),T=f(_),x=i(_,"SPAN",{});var D=a(x);M=N(D,"10. C\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 sai v\u1EDBi \u0111o\u1EA1n m\xE3 sau \u0111\xE2y?"),D.forEach(n),_.forEach(n),E=f(h),b($.$$.fragment,h),q=f(h),b(r.$$.fragment,h),this.h()},h(){c(u,"id","10.-c\xF3-\u0111i\u1EC1u-g\xEC-\u0111\xF3-sai-v\u1EDBi-\u0111o\u1EA1n-m\xE3-sau-\u0111\xE2y?"),c(u,"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"),c(u,"href","#10.-c\xF3-\u0111i\u1EC1u-g\xEC-\u0111\xF3-sai-v\u1EDBi-\u0111o\u1EA1n-m\xE3-sau-\u0111\xE2y?"),c(s,"class","relative group")},m(h,_){p(h,s,_),e(s,u),e(u,v),A(g,v,null),e(s,T),e(s,x),e(x,M),p(h,E,_),A($,h,_),p(h,q,_),A(r,h,_),y=!0},i(h){y||(d(g.$$.fragment,h),d($.$$.fragment,h),d(r.$$.fragment,h),y=!0)},o(h){k(g.$$.fragment,h),k($.$$.fragment,h),k(r.$$.fragment,h),y=!1},d(h){h&&n(s),z(g),h&&n(E),z($,h),h&&n(q),z(r,h)}}}function Ae(I){let s,u,v,g,T,x,M,E,$,q,r,y,h,_,S,C,D,ht,$n,Tt,kn,Gt,rt,Ot,G,W,qt,ot,dn,Mt,xn,Qt,it,Ut,O,X,St,ct,yn,Pt,_n,Vt,at,Jt,Q,Y,Nt,lt,wn,Ct,bn,Rt,st,Wt,K,B,bt,U,Z,Ht,ut,An,jt,zn,Xt,pt,Yt,V,tt,It,mt,En,Dt,Tn,Zt,ft,tn,J,nt,Kt,gt,qn,Bt,Mn,nn,vt,en,R,et,Ft,$t,Sn,kt,Pn,Lt,Nn,Cn,hn,dt,rn,xt,on,F,L,At,cn;v=new xe({props:{fw:I[0]}}),E=new H({}),h=new de({props:{chapter:2,classNames:"absolute z-10 right-0 top-0"}}),ht=new H({}),rt=new j({props:{choices:[{text:"\u0110\u1EA7u ti\xEAn, m\xF4 h\xECnh x\u1EED l\xFD v\u0103n b\u1EA3n v\xE0 tr\u1EA3 v\u1EC1 c\xE1c d\u1EF1 \u0111o\xE1n th\xF4. Sau \u0111\xF3, tokenizer hi\u1EC3u c\xE1c d\u1EF1 \u0111o\xE1n n\xE0y v\xE0 chuy\u1EC3n \u0111\u1ED5i ch\xFAng tr\u1EDF l\u1EA1i th\xE0nh v\u0103n b\u1EA3n khi c\u1EA7n.",explain:"M\xF4 h\xECnh kh\xF4ng th\u1EC3 hi\u1EC3u v\u0103n b\u1EA3n! Tr\xECnh tokenize \u0111\u1EA7u ti\xEAn ph\u1EA3i tokenize v\u0103n b\u1EA3n v\xE0 chuy\u1EC3n \u0111\u1ED5i n\xF3 th\xE0nh ID \u0111\u1EA7u v\xE0o \u0111\u1EC3 m\xF4 h\xECnh c\xF3 th\u1EC3 hi\u1EC3u \u0111\u01B0\u1EE3c."},{text:"\u0110\u1EA7u ti\xEAn, tokenizer x\u1EED l\xFD v\u0103n b\u1EA3n v\xE0 tr\u1EA3 v\u1EC1 c\xE1c ID. M\xF4 h\xECnh x\u1EED l\xFD c\xE1c ID n\xE0y v\xE0 xu\u1EA5t ra m\u1ED9t d\u1EF1 \u0111o\xE1n, c\xF3 th\u1EC3 l\xE0 m\u1ED9t s\u1ED1 v\u0103n b\u1EA3n.",explain:"D\u1EF1 \u0111o\xE1n c\u1EE7a m\xF4 h\xECnh kh\xF4ng th\u1EC3 th\xE0nh v\u0103n b\u1EA3n ngay l\u1EADp t\u1EE9c. Ph\u1EA3i s\u1EED d\u1EE5ng tr\xECnh tokenizer \u0111\u1EC3 chuy\u1EC3n d\u1EF1 \u0111o\xE1n tr\u1EDF l\u1EA1i th\xE0nh v\u0103n b\u1EA3n!"},{text:"Tokenizer x\u1EED l\xFD v\u0103n b\u1EA3n v\xE0 tr\u1EA3 v\u1EC1 c\xE1c ID. M\xF4 h\xECnh x\u1EED l\xFD c\xE1c ID n\xE0y v\xE0 \u0111\u01B0a ra d\u1EF1 \u0111o\xE1n. Sau \u0111\xF3, tokenizer c\xF3 th\u1EC3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng m\u1ED9t l\u1EA7n n\u1EEFa \u0111\u1EC3 chuy\u1EC3n \u0111\u1ED5i c\xE1c d\u1EF1 \u0111o\xE1n n\xE0y tr\u1EDF l\u1EA1i m\u1ED9t s\u1ED1 v\u0103n b\u1EA3n.",explain:"\u0110\xFAng! Tr\xECnh m\xE3 h\xF3a c\xF3 th\u1EC3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng cho c\u1EA3 m\xE3 h\xF3a m\xE3 h\xF3a v\xE0 kh\u1EED m\xE3 h\xF3a hay gi\u1EA3i m\xE3.",correct:!0}]}}),ot=new H({}),it=new j({props:{choices:[{text:"2: \u0110\u1ED9 d\xE0i chu\u1ED7i v\xE0 k\xEDch th\u01B0\u1EDBc l\xF4",explain:"Sai! \u0110\u1EA7u ra tensor c\u1EE7a m\xF4 h\xECnh c\xF3 m\u1ED9t chi\u1EC1u th\u1EE9 ba: k\xEDch th\u01B0\u1EDBc l\u1EDBp \u1EA9n."},{text:"2: \u0110\u1ED9 d\xE0i chu\u1ED7i v\xE0 \u0111\u1ED9 d\xE0i l\u1EDBp \u1EA9n",explain:"Sai! T\u1EA5t c\u1EA3 c\xE1c m\xF4 h\xECnh Transformer x\u1EED l\xFD theo l\xF4, k\u1EC3 c\u1EA3 khi l\xE0 m\u1ED9t chu\u1ED7i \u0111\u01A1n, khi \u0111\xF3 k\xEDch th\u01B0\u1EDBc l\xF4 b\u1EB1ng 1!"},{text:"3: \u0110\u1ED9 d\xE0i chu\u1ED7i, k\xEDch th\u01B0\u1EDBc l\xF4, v\xE0 \u0111\u1ED9 d\xE0i l\u1EDBp \u1EA9n",explain:"Ch\xEDnh x\xE1c!",correct:!0}]}}),ct=new H({}),at=new j({props:{choices:[{text:"WordPiece",explain:"Ch\xEDnh x\xE1c, \u0111\xE2y l\xE0 m\u1ED9t v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5!",correct:!0},{text:"Tokenize theo k\xED t\u1EF1",explain:"Tokenize theo k\xED t\u1EF1 kh\xF4ng ph\u1EA3i l\xE0 m\u1ED9t v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5!"},{text:"Chia theo d\u1EA5u c\xE1ch v\xE0 c\xE1c d\u1EA5u c\xE2u",explain:"\u0110\xE2y l\xE0 v\xED d\u1EE5 v\u1EC1 tokenize theo m\u1EE9c t\u1EEB!"},{text:"BPE",explain:"Ch\xEDnh x\xE1c, \u0111\xE2y l\xE0 m\u1ED9t v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5!",correct:!0},{text:"Unigram",explain:"Ch\xEDnh x\xE1c, \u0111\xE2y l\xE0 m\u1ED9t v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5!",correct:!0},{text:"Kh\xF4ng ph\u1EA3i c\xE1c tr\u01B0\u1EDDng h\u1EE3p tr\xEAn",explain:"Kh\xF4ng ch\xEDnh x\xE1c!"}]}}),lt=new H({}),st=new j({props:{choices:[{text:"M\u1ED9t th\xE0nh ph\u1EA7n c\u1EE7a Transformer c\u01A1 s\u1EDF chuy\u1EC3n h\u01B0\u1EDBng c\xE1c tensor \u0111\u1EBFn c\xE1c l\u1EDBp ch\xEDnh x\xE1c c\u1EE7a ch\xFAng",explain:"Kh\xF4ng ch\xEDnh x\xE1c! Kh\xF4ng c\xF3 th\xE0nh ph\u1EA7n nh\u01B0 v\u1EADy."},{text:"C\xF2n \u0111\u01B0\u1EE3c g\u1ECDi l\xE0 c\u01A1 ch\u1EBF self-attention hayt\u1EF1 ch\xFA \xFD, n\xF3 \u0111i\u1EC1u ch\u1EC9nh c\xE1ch \u0111\u1EA1i di\u1EC7n c\u1EE7a m\u1ED9t token theo c\xE1c token kh\xE1c c\u1EE7a chu\u1ED7i",explain:'Kh\xF4ng ch\xEDnh x\xE1c! L\u1EDBp self-attention c\xF3 ch\u1EE9a c\xE1c attention "heads," nh\u01B0ng \u0111\xE2y kh\xF4ng ph\u1EA3i l\xE0 c\xE1c \u0111\u1EA7u th\xEDch \u1EE9ng.'},{text:"M\u1ED9t th\xE0nh ph\u1EA7n b\u1ED5 sung, th\u01B0\u1EDDng \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh t\u1EEB m\u1ED9t ho\u1EB7c m\u1ED9t v\xE0i l\u1EDBp, \u0111\u1EC3 chuy\u1EC3n \u0111\u1ED5i c\xE1c d\u1EF1 \u0111o\xE1n transformer th\xE0nh \u0111\u1EA7u ra theo t\xE1c v\u1EE5 c\u1EE5 th\u1EC3",explain:"\u0110\xFAng v\u1EADy. \u0110\u1EA7u th\xEDch \u1EE9ng, c\xF2n \u0111\u01B0\u1EE3c g\u1ECDi \u0111\u01A1n gi\u1EA3n l\xE0 \u0111\u1EA7u, xu\u1EA5t hi\u1EC7n \u1EDF c\xE1c d\u1EA1ng kh\xE1c nhau: \u0111\u1EA7u m\xF4 h\xECnh ng\xF4n ng\u1EEF, \u0111\u1EA7u h\u1ECFi \u0111\xE1p, \u0111\u1EA7u ph\xE2n lo\u1EA1i chu\u1ED7i ... ",correct:!0}]}});const jn=[_e,ye],yt=[];function In(t,l){return t[0]==="pt"?0:1}K=In(I),B=yt[K]=jn[K](I),ut=new H({}),pt=new j({props:{choices:[{text:"C\u1EAFt b\u1EDBt",explain:"V\xE2ng, vi\u1EC7c c\u1EAFt b\u1EDBt l\xE0 m\u1ED9t c\xE1ch ch\xEDnh x\xE1c \u0111\u1EC3 s\u1EAFp x\u1EBFp c\xE1c chu\u1ED7i sao cho ch\xFAng v\u1EEBa v\u1EDBi h\xECnh ch\u1EEF nh\u1EADt. Tuy nhi\xEAn, n\xF3 c\xF3 ph\u1EA3i l\xE0 duy nh\u1EA5t kh\xF4ng?",correct:!0},{text:"Tr\u1EA3 v\u1EC1 tensor",explain:"Trong khi c\xE1c k\u1EF9 thu\u1EADt kh\xE1c cho ph\xE9p b\u1EA1n tr\u1EA3 v\u1EC1 c\xE1c tensor h\xECnh ch\u1EEF nh\u1EADt, tr\u1EA3 v\u1EC1 tensor kh\xF4ng h\u1EEFu \xEDch khi k\u1EBFt h\u1EE3p c\xE1c chu\u1ED7i v\u1EDBi nhau."},{text:"\u0110\u1EC7m th\xEAm",explain:"V\xE2ng, vi\u1EC7c \u0111\u1EC7m th\xEAm l\xE0 m\u1ED9t c\xE1ch ch\xEDnh x\xE1c \u0111\u1EC3 s\u1EAFp x\u1EBFp c\xE1c chu\u1ED7i sao cho ch\xFAng v\u1EEBa v\u1EDBi h\xECnh ch\u1EEF nh\u1EADt. Tuy nhi\xEAn, n\xF3 c\xF3 ph\u1EA3i l\xE0 duy nh\u1EA5t kh\xF4ng?",correct:!0},{text:"Attention masking",explain:"Ho\xE0n to\xE0n c\xF3 th\u1EC3! Attention mask c\xF3 t\u1EA7m quan tr\u1ECDng h\xE0ng \u0111\u1EA7u khi x\u1EED l\xFD c\xE1c chu\u1ED7i c\xF3 \u0111\u1ED9 d\xE0i kh\xE1c nhau. Tuy nhi\xEAn, \u0111\xF3 kh\xF4ng ph\u1EA3i l\xE0 k\u1EF9 thu\u1EADt duy nh\u1EA5t c\u1EA7n l\u01B0u \xFD.",correct:!0}]}}),mt=new H({}),ft=new j({props:{choices:[{text:"N\xF3 l\xE0m m\u1EC1m logit \u0111\u1EC3 ch\xFAng \u0111\xE1ng tin c\u1EADy h\u01A1n.",explain:"Kh\xF4ng, h\xE0m SoftMax kh\xF4ng \u1EA3nh h\u01B0\u1EDFng \u0111\u1EBFn \u0111\u1ED9 tin c\u1EADy c\u1EE7a k\u1EBFt qu\u1EA3."},{text:"N\xF3 \xE1p d\u1EE5ng gi\u1EDBi h\u1EA1n d\u01B0\u1EDBi v\xE0 tr\xEAn \u0111\u1EC3 ch\xFAng tr\u1EDF n\xEAn d\u1EC5 hi\u1EC3u.",explain:"\u0110\xFAng! C\xE1c gi\xE1 tr\u1ECB k\u1EBFt qu\u1EA3 b\u1ECB r\xE0ng bu\u1ED9c trong kho\u1EA3ng t\u1EEB 0 \u0111\u1EBFn 1. Tuy nhi\xEAn, \u0111\xF3 kh\xF4ng ph\u1EA3i l\xE0 l\xFD do duy nh\u1EA5t ch\xFAng t\xF4i s\u1EED d\u1EE5ng h\xE0m SoftMax.",correct:!0},{text:"T\u1ED5ng c\u1EE7a k\u1EBFt qu\u1EA3 \u0111\u1EA7u ra khi \u0111\xF3 l\xE0 1, d\u1EABn \u0111\u1EBFn vi\u1EC7c gi\u1EA3i th\xEDch theo x\xE1c su\u1EA5t c\xF3 th\u1EC3 x\u1EA3y ra.",explain:"Ch\xEDnh x\xE1c!  Tuy nhi\xEAn, \u0111\xF3 kh\xF4ng ph\u1EA3i l\xE0 l\xFD do duy nh\u1EA5t ch\xFAng t\xF4i s\u1EED d\u1EE5ng h\xE0m SoftMax.",correct:!0}]}}),gt=new H({}),vt=new j({props:{choices:[{text:"<code>encode</code>, v\xEC n\xF3 c\xF3 th\u1EC3 m\xE3 h\xF3a v\u0103n b\u1EA3n th\xE0nh ID v\xE0 ID th\xE0nh d\u1EF1 \u0111o\xE1n",explain:"Sai! M\u1EB7c d\xF9 ph\u01B0\u01A1ng th\u1EE9c<code>encode</code> t\u1ED3n t\u1EA1i tr\xEAn tokenizers, nh\u01B0ng n\xF3 kh\xF4ng t\u1ED3n t\u1EA1i tr\xEAn c\xE1c m\xF4 h\xECnh."},{text:"G\u1ECDi tr\u1EF1c ti\u1EBFp \u0111\u1ED1i t\u01B0\u1EE3ng tokenizer.",explain:"Ch\xEDnh x\xE1c! Ph\u01B0\u01A1ng th\u1EE9c <code>__call__</code> c\u1EE7a tokenizer l\xE0 m\u1ED9t ph\u01B0\u01A1ng ph\xE1p r\u1EA5t m\u1EA1nh c\xF3 th\u1EC3 x\u1EED l\xFD kh\xE1 nhi\u1EC1u th\u1EE9. N\xF3 c\u0169ng l\xE0 ph\u01B0\u01A1ng ph\xE1p \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng \u0111\u1EC3 truy xu\u1EA5t c\xE1c d\u1EF1 \u0111o\xE1n t\u1EEB m\u1ED9t m\xF4 h\xECnh.",correct:!0},{text:"<code>\u0110\u1EC7m th\xEAm</code>",explain:"Sai! \u0110\u1EC7m th\xEAm r\u1EA5t h\u1EEFu \xEDch, nh\u01B0ng n\xF3 ch\u1EC9 l\xE0 m\u1ED9t ph\u1EA7n c\u1EE7a tokenizer API."},{text:"<code>tokenize</code>",explain:"Ph\u01B0\u01A1ng th\u1EE9c <code>tokenize</code> \u0111\u01B0\u1EE3c cho l\xE0 m\u1ED9t trong nh\u1EEFng ph\u01B0\u01A1ng ph\xE1p h\u1EEFu \xEDch nh\u1EA5t, nh\u01B0ng n\xF3 kh\xF4ng ph\u1EA3i l\xE0 c\u1ED1t l\xF5i c\u1EE7a API tokenizer."}]}}),$t=new H({}),dt=new Hn({props:{code:`from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
result = tokenizer.tokenize("Hello!")`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained(<span class="hljs-string">&quot;bert-base-cased&quot;</span>)
result = tokenizer.tokenize(<span class="hljs-string">&quot;Hello!&quot;</span>)`}}),xt=new j({props:{choices:[{text:"Danh s\xE1ch c\xE1c chu\u1ED7i, m\u1ED7i chu\u1ED7i l\xE0 m\u1ED9t token",explain:"Ch\u1EAFc ch\u1EAFn r\u1ED3i! Chuy\u1EC3n \u0111\u1ED5i ch\xFAng th\xE0nh ID v\xE0 g\u1EEDi ch\xFAng \u0111\u1EBFn m\u1ED9t m\xF4 h\xECnh!",correct:!0},{text:"Danh s\xE1ch c\xE1c ID",explain:"Sai; \u0111\xF3 l\xE0 nh\u1EEFng g\xEC ph\u01B0\u01A1ng th\u1EE9c <code>__call__</code> ho\u1EB7c <code>convert_tokens_to_ids</code> l\xE0m!"},{text:"M\u1ED9t chu\u1ED7i ch\u1EE9a t\u1EA5t c\u1EA3 c\xE1c token",explain:"\u0110i\u1EC1u n\xE0y s\u1EBD l\xE0 kh\xF4ng t\u1ED1i \u01B0u, v\xEC m\u1EE5c ti\xEAu l\xE0 chia chu\u1ED7i th\xE0nh nhi\u1EC1u token."}]}});const Dn=[be,we],_t=[];function Kn(t,l){return t[0]==="pt"?0:1}return F=Kn(I),L=_t[F]=Dn[F](I),{c(){s=o("meta"),u=m(),w(v.$$.fragment),g=m(),T=o("h1"),x=o("a"),M=o("span"),w(E.$$.fragment),$=m(),q=o("span"),r=P("\u0110\u1ED1 vui cu\u1ED1i ch\u01B0\u01A1ng"),y=m(),w(h.$$.fragment),_=m(),S=o("h3"),C=o("a"),D=o("span"),w(ht.$$.fragment),$n=m(),Tt=o("span"),kn=P("1. Th\u1EE9 t\u1EF1 c\u1EE7a m\u1ED9t quy tr\xECnh m\xF4 h\xECnh h\xF3a ng\xF4n ng\u1EEF l\xE0 g\xEC?"),Gt=m(),w(rt.$$.fragment),Ot=m(),G=o("h3"),W=o("a"),qt=o("span"),w(ot.$$.fragment),dn=m(),Mt=o("span"),xn=P("2. \u0110\u1EA7u ra tensor c\u1EE7a m\xF4 h\xECnh Transformer c\u01A1 s\u1EDF c\xF3 bao nhi\xEAu chi\u1EC1u, v\xE0 ch\xFAng l\xE0 g\xEC?"),Qt=m(),w(it.$$.fragment),Ut=m(),O=o("h3"),X=o("a"),St=o("span"),w(ct.$$.fragment),yn=m(),Pt=o("span"),_n=P("3. Tr\u01B0\u1EDDng h\u1EE3p n\xE0o d\u01B0\u1EDBi \u0111\xE2y kh\xF4ng ph\u1EA3i l\xE0 v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5?"),Vt=m(),w(at.$$.fragment),Jt=m(),Q=o("h3"),Y=o("a"),Nt=o("span"),w(lt.$$.fragment),wn=m(),Ct=o("span"),bn=P("4. Model head (\u0110\u1EA7u m\xF4 h\xECnh) l\xE0 g\xEC?"),Rt=m(),w(st.$$.fragment),Wt=m(),B.c(),bt=m(),U=o("h3"),Z=o("a"),Ht=o("span"),w(ut.$$.fragment),An=m(),jt=o("span"),zn=P("6. C\xE1c k\u1EF9 thu\u1EADt c\u1EA7n l\u01B0u \xFD khi gh\xE9p c\xE1c chu\u1ED7i c\xF3 \u0111\u1ED9 d\xE0i kh\xE1c nhau v\u1EDBi nhau l\xE0 g\xEC?"),Xt=m(),w(pt.$$.fragment),Yt=m(),V=o("h3"),tt=o("a"),It=o("span"),w(mt.$$.fragment),En=m(),Dt=o("span"),Tn=P("7. M\u1EE5c \u0111\xEDch c\u1EE7a vi\u1EC7c \xE1p d\u1EE5ng h\xE0m SoftMax v\xE0o \u0111\u1EA7u ra logit c\u1EE7a m\xF4 h\xECnh ph\xE2n lo\u1EA1i l\xE0 g\xEC?"),Zt=m(),w(ft.$$.fragment),tn=m(),J=o("h3"),nt=o("a"),Kt=o("span"),w(gt.$$.fragment),qn=m(),Bt=o("span"),Mn=P("8. Ph\u1EA7n l\u1EDBn API tokenizer t\u1EADp trung v\xE0o ph\u01B0\u01A1ng ph\xE1p n\xE0o?"),nn=m(),w(vt.$$.fragment),en=m(),R=o("h3"),et=o("a"),Ft=o("span"),w($t.$$.fragment),Sn=m(),kt=o("span"),Pn=P("9. Bi\u1EBFn "),Lt=o("code"),Nn=P("result"),Cn=P(" ch\u1EE9a g\xEC trong \u0111o\u1EA1n m\xE3 d\u01B0\u1EDBi \u0111\xE2y?"),hn=m(),w(dt.$$.fragment),rn=m(),w(xt.$$.fragment),on=m(),L.c(),At=ue(),this.h()},l(t){const l=$e('[data-svelte="svelte-1phssyn"]',document.head);s=i(l,"META",{name:!0,content:!0}),l.forEach(n),u=f(t),b(v.$$.fragment,t),g=f(t),T=i(t,"H1",{class:!0});var wt=a(T);x=i(wt,"A",{id:!0,class:!0,href:!0});var zt=a(x);M=i(zt,"SPAN",{});var Et=a(M);b(E.$$.fragment,Et),Et.forEach(n),zt.forEach(n),$=f(wt),q=i(wt,"SPAN",{});var Bn=a(q);r=N(Bn,"\u0110\u1ED1 vui cu\u1ED1i ch\u01B0\u01A1ng"),Bn.forEach(n),wt.forEach(n),y=f(t),b(h.$$.fragment,t),_=f(t),S=i(t,"H3",{class:!0});var an=a(S);C=i(an,"A",{id:!0,class:!0,href:!0});var Fn=a(C);D=i(Fn,"SPAN",{});var Ln=a(D);b(ht.$$.fragment,Ln),Ln.forEach(n),Fn.forEach(n),$n=f(an),Tt=i(an,"SPAN",{});var Gn=a(Tt);kn=N(Gn,"1. Th\u1EE9 t\u1EF1 c\u1EE7a m\u1ED9t quy tr\xECnh m\xF4 h\xECnh h\xF3a ng\xF4n ng\u1EEF l\xE0 g\xEC?"),Gn.forEach(n),an.forEach(n),Gt=f(t),b(rt.$$.fragment,t),Ot=f(t),G=i(t,"H3",{class:!0});var ln=a(G);W=i(ln,"A",{id:!0,class:!0,href:!0});var On=a(W);qt=i(On,"SPAN",{});var Qn=a(qt);b(ot.$$.fragment,Qn),Qn.forEach(n),On.forEach(n),dn=f(ln),Mt=i(ln,"SPAN",{});var Un=a(Mt);xn=N(Un,"2. \u0110\u1EA7u ra tensor c\u1EE7a m\xF4 h\xECnh Transformer c\u01A1 s\u1EDF c\xF3 bao nhi\xEAu chi\u1EC1u, v\xE0 ch\xFAng l\xE0 g\xEC?"),Un.forEach(n),ln.forEach(n),Qt=f(t),b(it.$$.fragment,t),Ut=f(t),O=i(t,"H3",{class:!0});var sn=a(O);X=i(sn,"A",{id:!0,class:!0,href:!0});var Vn=a(X);St=i(Vn,"SPAN",{});var Jn=a(St);b(ct.$$.fragment,Jn),Jn.forEach(n),Vn.forEach(n),yn=f(sn),Pt=i(sn,"SPAN",{});var Rn=a(Pt);_n=N(Rn,"3. Tr\u01B0\u1EDDng h\u1EE3p n\xE0o d\u01B0\u1EDBi \u0111\xE2y kh\xF4ng ph\u1EA3i l\xE0 v\xED d\u1EE5 v\u1EC1 tokenize theo t\u1EEB ph\u1EE5?"),Rn.forEach(n),sn.forEach(n),Vt=f(t),b(at.$$.fragment,t),Jt=f(t),Q=i(t,"H3",{class:!0});var un=a(Q);Y=i(un,"A",{id:!0,class:!0,href:!0});var Wn=a(Y);Nt=i(Wn,"SPAN",{});var Xn=a(Nt);b(lt.$$.fragment,Xn),Xn.forEach(n),Wn.forEach(n),wn=f(un),Ct=i(un,"SPAN",{});var Yn=a(Ct);bn=N(Yn,"4. Model head (\u0110\u1EA7u m\xF4 h\xECnh) l\xE0 g\xEC?"),Yn.forEach(n),un.forEach(n),Rt=f(t),b(st.$$.fragment,t),Wt=f(t),B.l(t),bt=f(t),U=i(t,"H3",{class:!0});var pn=a(U);Z=i(pn,"A",{id:!0,class:!0,href:!0});var Zn=a(Z);Ht=i(Zn,"SPAN",{});var te=a(Ht);b(ut.$$.fragment,te),te.forEach(n),Zn.forEach(n),An=f(pn),jt=i(pn,"SPAN",{});var ne=a(jt);zn=N(ne,"6. C\xE1c k\u1EF9 thu\u1EADt c\u1EA7n l\u01B0u \xFD khi gh\xE9p c\xE1c chu\u1ED7i c\xF3 \u0111\u1ED9 d\xE0i kh\xE1c nhau v\u1EDBi nhau l\xE0 g\xEC?"),ne.forEach(n),pn.forEach(n),Xt=f(t),b(pt.$$.fragment,t),Yt=f(t),V=i(t,"H3",{class:!0});var mn=a(V);tt=i(mn,"A",{id:!0,class:!0,href:!0});var ee=a(tt);It=i(ee,"SPAN",{});var he=a(It);b(mt.$$.fragment,he),he.forEach(n),ee.forEach(n),En=f(mn),Dt=i(mn,"SPAN",{});var re=a(Dt);Tn=N(re,"7. M\u1EE5c \u0111\xEDch c\u1EE7a vi\u1EC7c \xE1p d\u1EE5ng h\xE0m SoftMax v\xE0o \u0111\u1EA7u ra logit c\u1EE7a m\xF4 h\xECnh ph\xE2n lo\u1EA1i l\xE0 g\xEC?"),re.forEach(n),mn.forEach(n),Zt=f(t),b(ft.$$.fragment,t),tn=f(t),J=i(t,"H3",{class:!0});var fn=a(J);nt=i(fn,"A",{id:!0,class:!0,href:!0});var oe=a(nt);Kt=i(oe,"SPAN",{});var ie=a(Kt);b(gt.$$.fragment,ie),ie.forEach(n),oe.forEach(n),qn=f(fn),Bt=i(fn,"SPAN",{});var ce=a(Bt);Mn=N(ce,"8. Ph\u1EA7n l\u1EDBn API tokenizer t\u1EADp trung v\xE0o ph\u01B0\u01A1ng ph\xE1p n\xE0o?"),ce.forEach(n),fn.forEach(n),nn=f(t),b(vt.$$.fragment,t),en=f(t),R=i(t,"H3",{class:!0});var gn=a(R);et=i(gn,"A",{id:!0,class:!0,href:!0});var ae=a(et);Ft=i(ae,"SPAN",{});var le=a(Ft);b($t.$$.fragment,le),le.forEach(n),ae.forEach(n),Sn=f(gn),kt=i(gn,"SPAN",{});var vn=a(kt);Pn=N(vn,"9. Bi\u1EBFn "),Lt=i(vn,"CODE",{});var se=a(Lt);Nn=N(se,"result"),se.forEach(n),Cn=N(vn," ch\u1EE9a g\xEC trong \u0111o\u1EA1n m\xE3 d\u01B0\u1EDBi \u0111\xE2y?"),vn.forEach(n),gn.forEach(n),hn=f(t),b(dt.$$.fragment,t),rn=f(t),b(xt.$$.fragment,t),on=f(t),L.l(t),At=ue(),this.h()},h(){c(s,"name","hf:doc:metadata"),c(s,"content",JSON.stringify(ze)),c(x,"id","vui-cui-chng"),c(x,"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"),c(x,"href","#vui-cui-chng"),c(T,"class","relative group"),c(C,"id","1.-th\u1EE9-t\u1EF1-c\u1EE7a-m\u1ED9t-quy-tr\xECnh-m\xF4-h\xECnh-h\xF3a-ng\xF4n-ng\u1EEF-l\xE0-g\xEC?"),c(C,"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"),c(C,"href","#1.-th\u1EE9-t\u1EF1-c\u1EE7a-m\u1ED9t-quy-tr\xECnh-m\xF4-h\xECnh-h\xF3a-ng\xF4n-ng\u1EEF-l\xE0-g\xEC?"),c(S,"class","relative group"),c(W,"id","2.-\u0111\u1EA7u-ra-tensor-c\u1EE7a-m\xF4-h\xECnh-transformer-c\u01A1-s\u1EDF-c\xF3-bao-nhi\xEAu-chi\u1EC1u,-v\xE0-ch\xFAng-l\xE0-g\xEC?"),c(W,"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"),c(W,"href","#2.-\u0111\u1EA7u-ra-tensor-c\u1EE7a-m\xF4-h\xECnh-transformer-c\u01A1-s\u1EDF-c\xF3-bao-nhi\xEAu-chi\u1EC1u,-v\xE0-ch\xFAng-l\xE0-g\xEC?"),c(G,"class","relative group"),c(X,"id","3.-tr\u01B0\u1EDDng-h\u1EE3p-n\xE0o-d\u01B0\u1EDBi-\u0111\xE2y-kh\xF4ng-ph\u1EA3i-l\xE0-v\xED-d\u1EE5-v\u1EC1-tokenize-theo-t\u1EEB-ph\u1EE5?"),c(X,"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"),c(X,"href","#3.-tr\u01B0\u1EDDng-h\u1EE3p-n\xE0o-d\u01B0\u1EDBi-\u0111\xE2y-kh\xF4ng-ph\u1EA3i-l\xE0-v\xED-d\u1EE5-v\u1EC1-tokenize-theo-t\u1EEB-ph\u1EE5?"),c(O,"class","relative group"),c(Y,"id","4.-model-head-(\u0111\u1EA7u-m\xF4-h\xECnh)-l\xE0-g\xEC?"),c(Y,"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"),c(Y,"href","#4.-model-head-(\u0111\u1EA7u-m\xF4-h\xECnh)-l\xE0-g\xEC?"),c(Q,"class","relative group"),c(Z,"id","6.-c\xE1c-k\u1EF9-thu\u1EADt-c\u1EA7n-l\u01B0u-\xFD-khi-gh\xE9p-c\xE1c-chu\u1ED7i-c\xF3-\u0111\u1ED9-d\xE0i-kh\xE1c-nhau-v\u1EDBi-nhau-l\xE0-g\xEC?"),c(Z,"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"),c(Z,"href","#6.-c\xE1c-k\u1EF9-thu\u1EADt-c\u1EA7n-l\u01B0u-\xFD-khi-gh\xE9p-c\xE1c-chu\u1ED7i-c\xF3-\u0111\u1ED9-d\xE0i-kh\xE1c-nhau-v\u1EDBi-nhau-l\xE0-g\xEC?"),c(U,"class","relative group"),c(tt,"id","7.-m\u1EE5c-\u0111\xEDch-c\u1EE7a-vi\u1EC7c-\xE1p-d\u1EE5ng-h\xE0m-softmax-v\xE0o-\u0111\u1EA7u-ra-logit-c\u1EE7a-m\xF4-h\xECnh-ph\xE2n-lo\u1EA1i-l\xE0-g\xEC?"),c(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"),c(tt,"href","#7.-m\u1EE5c-\u0111\xEDch-c\u1EE7a-vi\u1EC7c-\xE1p-d\u1EE5ng-h\xE0m-softmax-v\xE0o-\u0111\u1EA7u-ra-logit-c\u1EE7a-m\xF4-h\xECnh-ph\xE2n-lo\u1EA1i-l\xE0-g\xEC?"),c(V,"class","relative group"),c(nt,"id","8.-ph\u1EA7n-l\u1EDBn-api-tokenizer-t\u1EADp-trung-v\xE0o-ph\u01B0\u01A1ng-ph\xE1p-n\xE0o?"),c(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"),c(nt,"href","#8.-ph\u1EA7n-l\u1EDBn-api-tokenizer-t\u1EADp-trung-v\xE0o-ph\u01B0\u01A1ng-ph\xE1p-n\xE0o?"),c(J,"class","relative group"),c(et,"id","9.-bi\u1EBFn-<code>result</code>-ch\u1EE9a-g\xEC-trong-\u0111o\u1EA1n-m\xE3-d\u01B0\u1EDBi-\u0111\xE2y?"),c(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"),c(et,"href","#9.-bi\u1EBFn-<code>result</code>-ch\u1EE9a-g\xEC-trong-\u0111o\u1EA1n-m\xE3-d\u01B0\u1EDBi-\u0111\xE2y?"),c(R,"class","relative group")},m(t,l){e(document.head,s),p(t,u,l),A(v,t,l),p(t,g,l),p(t,T,l),e(T,x),e(x,M),A(E,M,null),e(T,$),e(T,q),e(q,r),p(t,y,l),A(h,t,l),p(t,_,l),p(t,S,l),e(S,C),e(C,D),A(ht,D,null),e(S,$n),e(S,Tt),e(Tt,kn),p(t,Gt,l),A(rt,t,l),p(t,Ot,l),p(t,G,l),e(G,W),e(W,qt),A(ot,qt,null),e(G,dn),e(G,Mt),e(Mt,xn),p(t,Qt,l),A(it,t,l),p(t,Ut,l),p(t,O,l),e(O,X),e(X,St),A(ct,St,null),e(O,yn),e(O,Pt),e(Pt,_n),p(t,Vt,l),A(at,t,l),p(t,Jt,l),p(t,Q,l),e(Q,Y),e(Y,Nt),A(lt,Nt,null),e(Q,wn),e(Q,Ct),e(Ct,bn),p(t,Rt,l),A(st,t,l),p(t,Wt,l),yt[K].m(t,l),p(t,bt,l),p(t,U,l),e(U,Z),e(Z,Ht),A(ut,Ht,null),e(U,An),e(U,jt),e(jt,zn),p(t,Xt,l),A(pt,t,l),p(t,Yt,l),p(t,V,l),e(V,tt),e(tt,It),A(mt,It,null),e(V,En),e(V,Dt),e(Dt,Tn),p(t,Zt,l),A(ft,t,l),p(t,tn,l),p(t,J,l),e(J,nt),e(nt,Kt),A(gt,Kt,null),e(J,qn),e(J,Bt),e(Bt,Mn),p(t,nn,l),A(vt,t,l),p(t,en,l),p(t,R,l),e(R,et),e(et,Ft),A($t,Ft,null),e(R,Sn),e(R,kt),e(kt,Pn),e(kt,Lt),e(Lt,Nn),e(kt,Cn),p(t,hn,l),A(dt,t,l),p(t,rn,l),A(xt,t,l),p(t,on,l),_t[F].m(t,l),p(t,At,l),cn=!0},p(t,[l]){const wt={};l&1&&(wt.fw=t[0]),v.$set(wt);let zt=K;K=In(t),K!==zt&&(me(),k(yt[zt],1,1,()=>{yt[zt]=null}),pe(),B=yt[K],B||(B=yt[K]=jn[K](t),B.c()),d(B,1),B.m(bt.parentNode,bt));let Et=F;F=Kn(t),F!==Et&&(me(),k(_t[Et],1,1,()=>{_t[Et]=null}),pe(),L=_t[F],L||(L=_t[F]=Dn[F](t),L.c()),d(L,1),L.m(At.parentNode,At))},i(t){cn||(d(v.$$.fragment,t),d(E.$$.fragment,t),d(h.$$.fragment,t),d(ht.$$.fragment,t),d(rt.$$.fragment,t),d(ot.$$.fragment,t),d(it.$$.fragment,t),d(ct.$$.fragment,t),d(at.$$.fragment,t),d(lt.$$.fragment,t),d(st.$$.fragment,t),d(B),d(ut.$$.fragment,t),d(pt.$$.fragment,t),d(mt.$$.fragment,t),d(ft.$$.fragment,t),d(gt.$$.fragment,t),d(vt.$$.fragment,t),d($t.$$.fragment,t),d(dt.$$.fragment,t),d(xt.$$.fragment,t),d(L),cn=!0)},o(t){k(v.$$.fragment,t),k(E.$$.fragment,t),k(h.$$.fragment,t),k(ht.$$.fragment,t),k(rt.$$.fragment,t),k(ot.$$.fragment,t),k(it.$$.fragment,t),k(ct.$$.fragment,t),k(at.$$.fragment,t),k(lt.$$.fragment,t),k(st.$$.fragment,t),k(B),k(ut.$$.fragment,t),k(pt.$$.fragment,t),k(mt.$$.fragment,t),k(ft.$$.fragment,t),k(gt.$$.fragment,t),k(vt.$$.fragment,t),k($t.$$.fragment,t),k(dt.$$.fragment,t),k(xt.$$.fragment,t),k(L),cn=!1},d(t){n(s),t&&n(u),z(v,t),t&&n(g),t&&n(T),z(E),t&&n(y),z(h,t),t&&n(_),t&&n(S),z(ht),t&&n(Gt),z(rt,t),t&&n(Ot),t&&n(G),z(ot),t&&n(Qt),z(it,t),t&&n(Ut),t&&n(O),z(ct),t&&n(Vt),z(at,t),t&&n(Jt),t&&n(Q),z(lt),t&&n(Rt),z(st,t),t&&n(Wt),yt[K].d(t),t&&n(bt),t&&n(U),z(ut),t&&n(Xt),z(pt,t),t&&n(Yt),t&&n(V),z(mt),t&&n(Zt),z(ft,t),t&&n(tn),t&&n(J),z(gt),t&&n(nn),z(vt,t),t&&n(en),t&&n(R),z($t),t&&n(hn),z(dt,t),t&&n(rn),z(xt,t),t&&n(on),_t[F].d(t),t&&n(At)}}}const ze={local:"vui-cui-chng",title:"\u0110\u1ED1 vui cu\u1ED1i ch\u01B0\u01A1ng"};function Ee(I,s,u){let v="pt";return ke(()=>{const g=new URLSearchParams(window.location.search);u(0,v=g.get("fw")||"pt")}),[v]}class He extends fe{constructor(s){super();ge(this,s,Ee,Ae,ve,{})}}export{He as default,ze as metadata};
