import{s as F,n as G,o as N}from"../chunks/scheduler.37c15a92.js";import{S as O,i as R,g as p,s,r as y,A as W,h as f,f as n,c as r,j as A,u as w,x as T,k as q,y as D,a as i,v as E,d as H,t as L,w as M}from"../chunks/index.2bf4358c.js";import{C as I}from"../chunks/CourseFloatingBanner.9ff4c771.js";import{H as J,E as K}from"../chunks/getInferenceSnippets.24b50994.js";function Q(S){let a,d,g,k,o,v,l,_,m,B="Chúc mừng bạn đã hoàn thành chương này!",b,c,U="Sau khi tìm hiểu sâu về tokenizer, bạn nên:",x,u,j="<li>Có thể huấn luyện một tokenizer mới bằng cách sử dụng một cái cũ làm mẫu</li> <li>Hiểu cách sử dụng hiệu số để ánh xạ vị trí của token với khoảng văn bản ban đầu của chúng</li> <li>Biết sự khác biệt giữa BPE, WordPiece và Unigram</li> <li>Có thể trộn và kết hợp các khối được cung cấp bởi thư viện 🤗 Tokenizers để xây dựng tokenizer của riêng bạn</li> <li>Có thể sử dụng tokenizer đó trong thư viện 🤗 Transformers</li>",C,h,z,$,P;return o=new J({props:{title:"Tokenizers, kiểm tra nào!",local:"tokenizers-kiểm-tra-nào",headingTag:"h1"}}),l=new I({props:{chapter:6,classNames:"absolute z-10 right-0 top-0"}}),h=new K({props:{source:"https://github.com/huggingface/course/blob/main/chapters/vi/chapter6/9.mdx"}}),{c(){a=p("meta"),d=s(),g=p("p"),k=s(),y(o.$$.fragment),v=s(),y(l.$$.fragment),_=s(),m=p("p"),m.textContent=B,b=s(),c=p("p"),c.textContent=U,x=s(),u=p("ul"),u.innerHTML=j,C=s(),y(h.$$.fragment),z=s(),$=p("p"),this.h()},l(t){const e=W("svelte-u9bgzb",document.head);a=f(e,"META",{name:!0,content:!0}),e.forEach(n),d=r(t),g=f(t,"P",{}),A(g).forEach(n),k=r(t),w(o.$$.fragment,t),v=r(t),w(l.$$.fragment,t),_=r(t),m=f(t,"P",{"data-svelte-h":!0}),T(m)!=="svelte-gg5i0y"&&(m.textContent=B),b=r(t),c=f(t,"P",{"data-svelte-h":!0}),T(c)!=="svelte-1f9ndxc"&&(c.textContent=U),x=r(t),u=f(t,"UL",{"data-svelte-h":!0}),T(u)!=="svelte-1tysvjd"&&(u.innerHTML=j),C=r(t),w(h.$$.fragment,t),z=r(t),$=f(t,"P",{}),A($).forEach(n),this.h()},h(){q(a,"name","hf:doc:metadata"),q(a,"content",V)},m(t,e){D(document.head,a),i(t,d,e),i(t,g,e),i(t,k,e),E(o,t,e),i(t,v,e),E(l,t,e),i(t,_,e),i(t,m,e),i(t,b,e),i(t,c,e),i(t,x,e),i(t,u,e),i(t,C,e),E(h,t,e),i(t,z,e),i(t,$,e),P=!0},p:G,i(t){P||(H(o.$$.fragment,t),H(l.$$.fragment,t),H(h.$$.fragment,t),P=!0)},o(t){L(o.$$.fragment,t),L(l.$$.fragment,t),L(h.$$.fragment,t),P=!1},d(t){t&&(n(d),n(g),n(k),n(v),n(_),n(m),n(b),n(c),n(x),n(u),n(C),n(z),n($)),n(a),M(o,t),M(l,t),M(h,t)}}}const V='{"title":"Tokenizers, kiểm tra nào!","local":"tokenizers-kiểm-tra-nào","sections":[],"depth":1}';function X(S){return N(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class nt extends O{constructor(a){super(),R(this,a,X,Q,F,{})}}export{nt as component};
