import{s as K,n as O,o as R}from"../chunks/scheduler.36a0863c.js";import{S as Q,i as V,g as l,s as i,r as H,A as W,h as u,f as t,c as r,j as I,u as E,x as $,k as J,y as X,a as n,v as S,d as j,t as A,w as B}from"../chunks/index.156fee99.js";import{C as Y}from"../chunks/CourseFloatingBanner.16bb8bff.js";import{H as Z,E as aa}from"../chunks/getInferenceSnippets.472bc46d.js";function ea(D){let s,y,f,_,m,z,o,v,k,F='Di <a href="/course/chapter3">Bab 3</a>, kita telah melihat cara menyetel ulang (fine-tune) sebuah model untuk suatu tugas tertentu. Saat kita melakukan itu, kita menggunakan tokenizer yang sama dengan yang digunakan saat model tersebut dilatih sebelumnya — tetapi apa yang harus kita lakukan ketika ingin melatih model dari awal? Dalam kasus seperti ini, menggunakan tokenizer yang telah dilatih sebelumnya pada korpus dari domain atau bahasa lain biasanya tidak optimal. Sebagai contoh, tokenizer yang dilatih pada korpus berbahasa Inggris akan berkinerja buruk pada korpus teks berbahasa Jepang karena penggunaan spasi dan tanda baca sangat berbeda di antara kedua bahasa tersebut.',P,p,N='Dalam bab ini, Anda akan belajar cara melatih tokenizer baru dari nol menggunakan korpus teks, sehingga tokenizer tersebut dapat digunakan untuk melakukan pretraining pada model bahasa. Semua ini akan dilakukan dengan bantuan pustaka <a href="https://github.com/huggingface/tokenizers" rel="nofollow">🤗 Tokenizers</a>, yang menyediakan tokenizer “cepat” dalam pustaka <a href="https://github.com/huggingface/transformers" rel="nofollow">🤗 Transformers</a>. Kita akan melihat lebih dekat fitur-fitur yang disediakan pustaka ini, dan menjelajahi bagaimana tokenizer cepat berbeda dari versi “lambat”.',T,d,U="Topik-topik yang akan kita bahas meliputi:",w,g,q="<li>Cara melatih tokenizer baru yang mirip dengan yang digunakan oleh checkpoint tertentu pada korpus teks baru</li> <li>Fitur-fitur khusus dari tokenizer cepat</li> <li>Perbedaan antara tiga algoritma tokenisasi sub-kata utama yang digunakan dalam NLP saat ini</li> <li>Cara membangun tokenizer dari nol menggunakan pustaka 🤗 Tokenizers dan melatihnya pada beberapa data</li>",x,h,G='Teknik-teknik yang diperkenalkan dalam bab ini akan mempersiapkan Anda untuk bagian di <a href="/course/chapter7/6">Bab 7</a> di mana kita akan melihat cara membuat model bahasa untuk kode sumber Python. Mari kita mulai dengan melihat apa arti sebenarnya dari “melatih” sebuah tokenizer.',C,b,L,c,M;return m=new Z({props:{title:"Pendahuluan",local:"introduction",headingTag:"h1"}}),o=new Y({props:{chapter:6,classNames:"absolute z-10 right-0 top-0"}}),b=new aa({props:{source:"https://github.com/huggingface/course/blob/main/chapters/id/chapter6/1.mdx"}}),{c(){s=l("meta"),y=i(),f=l("p"),_=i(),H(m.$$.fragment),z=i(),H(o.$$.fragment),v=i(),k=l("p"),k.innerHTML=F,P=i(),p=l("p"),p.innerHTML=N,T=i(),d=l("p"),d.textContent=U,w=i(),g=l("ul"),g.innerHTML=q,x=i(),h=l("p"),h.innerHTML=G,C=i(),H(b.$$.fragment),L=i(),c=l("p"),this.h()},l(a){const e=W("svelte-u9bgzb",document.head);s=u(e,"META",{name:!0,content:!0}),e.forEach(t),y=r(a),f=u(a,"P",{}),I(f).forEach(t),_=r(a),E(m.$$.fragment,a),z=r(a),E(o.$$.fragment,a),v=r(a),k=u(a,"P",{"data-svelte-h":!0}),$(k)!=="svelte-12d5dpr"&&(k.innerHTML=F),P=r(a),p=u(a,"P",{"data-svelte-h":!0}),$(p)!=="svelte-w38wsl"&&(p.innerHTML=N),T=r(a),d=u(a,"P",{"data-svelte-h":!0}),$(d)!=="svelte-1d937ym"&&(d.textContent=U),w=r(a),g=u(a,"UL",{"data-svelte-h":!0}),$(g)!=="svelte-1m5c4at"&&(g.innerHTML=q),x=r(a),h=u(a,"P",{"data-svelte-h":!0}),$(h)!=="svelte-16ofneg"&&(h.innerHTML=G),C=r(a),E(b.$$.fragment,a),L=r(a),c=u(a,"P",{}),I(c).forEach(t),this.h()},h(){J(s,"name","hf:doc:metadata"),J(s,"content",ta)},m(a,e){X(document.head,s),n(a,y,e),n(a,f,e),n(a,_,e),S(m,a,e),n(a,z,e),S(o,a,e),n(a,v,e),n(a,k,e),n(a,P,e),n(a,p,e),n(a,T,e),n(a,d,e),n(a,w,e),n(a,g,e),n(a,x,e),n(a,h,e),n(a,C,e),S(b,a,e),n(a,L,e),n(a,c,e),M=!0},p:O,i(a){M||(j(m.$$.fragment,a),j(o.$$.fragment,a),j(b.$$.fragment,a),M=!0)},o(a){A(m.$$.fragment,a),A(o.$$.fragment,a),A(b.$$.fragment,a),M=!1},d(a){a&&(t(y),t(f),t(_),t(z),t(v),t(k),t(P),t(p),t(T),t(d),t(w),t(g),t(x),t(h),t(C),t(L),t(c)),t(s),B(m,a),B(o,a),B(b,a)}}}const ta='{"title":"Pendahuluan","local":"introduction","sections":[],"depth":1}';function na(D){return R(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ua extends Q{constructor(s){super(),V(this,s,na,ea,K,{})}}export{ua as component};
