import{s as R,o as D}from"../chunks/scheduler.cc52f4b9.js";import{S as J,i as Q,e as b,s as o,c as L,h as V,a as w,d as a,b as m,f as I,g as x,j as K,k as O,l as W,m as r,n as y,t as M,o as T,p as k}from"../chunks/index.85964560.js";import{C as X,H as Y,E as Z}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.4cab8d21.js";import{C as ee}from"../chunks/CourseFloatingBanner.d24cbe55.js";import{F as te}from"../chunks/FrameworkSwitchCourse.17523e75.js";function ne(p){let n,l="<li>วิธีการเตรียม dataset ขนาดใหญ่จาก Hub</li> <li>วิธีการใช้ Keras ในการ fine-tune โมเดล</li> <li>วิธีการใช้ Keras ในการทำนายผล</li> <li>วิธีการใช้ metric ที่เขียนขึ้นเอง (custom metric)</li>";return{c(){n=b("ul"),n.innerHTML=l},l(i){n=w(i,"UL",{"data-svelte-h":!0}),K(n)!=="svelte-bj2icn"&&(n.innerHTML=l)},m(i,s){r(i,n,s)},d(i){i&&a(n)}}}function ie(p){let n,l="<li>วิธีการเตรียม dataset ขนาดใหญ่จาก Hub</li> <li>วิธีการใช้ high-level <code>Trainer</code> API ในการ fine-tune โมเดล</li> <li>วิธีการใช้ training loop ที่เขียนขึ้นเอง (custom training loop)</li> <li>วิธีการใช้ประโยชน์จาก 🤗 Accelerate library ในการรัน custom training loop บน distributed setup แบบต่าง ๆ</li>";return{c(){n=b("ul"),n.innerHTML=l},l(i){n=w(i,"UL",{"data-svelte-h":!0}),K(n)!=="svelte-1on0o8x"&&(n.innerHTML=l)},m(i,s){r(i,n,s)},d(i){i&&a(n)}}}function ae(p){let n,l,i,s,u,C,c,P,$,E,g,S,h,N='ใน <a href="/course/chapter2">Chapter 2</a> เราได้เรียนรู้วิธีการใช้ tokenizers และโมเดลที่ผ่านการเทรนมาแล้ว (pretrained models) ในการทำนาย แต่ถ้าเราต้องการจะใช้ dataset ของเราเองในการ fine-tune โมเดลล่ะ? นั่นคือหัวข้อของบทนี้เลย! คุณจะได้เรียนรู้:',z,H,_,q='ถ้าคุณต้องการจะ upload trained checkpoints ของคุณขึ้น Hugging Face Hub คุณจะต้องมีบัญชี huggingface.co ก่อน : <a href="https://huggingface.co/join" rel="nofollow">create an account</a>',F,d,j,v,A;u=new te({props:{fw:p[0]}}),c=new X({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),$=new Y({props:{title:"บทนำ",local:"บทนำ",headingTag:"h1"}}),g=new ee({props:{chapter:3,classNames:"absolute z-10 right-0 top-0"}});function B(e,t){return e[0]==="pt"?ie:ne}let U=B(p),f=U(p);return d=new Z({props:{source:"https://github.com/huggingface/course/blob/main/chapters/th/chapter3/1.mdx"}}),{c(){n=b("meta"),l=o(),i=b("p"),s=o(),L(u.$$.fragment),C=o(),L(c.$$.fragment),P=o(),L($.$$.fragment),E=o(),L(g.$$.fragment),S=o(),h=b("p"),h.innerHTML=N,z=o(),f.c(),H=o(),_=b("p"),_.innerHTML=q,F=o(),L(d.$$.fragment),j=o(),v=b("p"),this.h()},l(e){const t=V("svelte-u9bgzb",document.head);n=w(t,"META",{name:!0,content:!0}),t.forEach(a),l=m(e),i=w(e,"P",{}),I(i).forEach(a),s=m(e),x(u.$$.fragment,e),C=m(e),x(c.$$.fragment,e),P=m(e),x($.$$.fragment,e),E=m(e),x(g.$$.fragment,e),S=m(e),h=w(e,"P",{"data-svelte-h":!0}),K(h)!=="svelte-ymcgbx"&&(h.innerHTML=N),z=m(e),f.l(e),H=m(e),_=w(e,"P",{"data-svelte-h":!0}),K(_)!=="svelte-16f80gr"&&(_.innerHTML=q),F=m(e),x(d.$$.fragment,e),j=m(e),v=w(e,"P",{}),I(v).forEach(a),this.h()},h(){O(n,"name","hf:doc:metadata"),O(n,"content",re)},m(e,t){W(document.head,n),r(e,l,t),r(e,i,t),r(e,s,t),y(u,e,t),r(e,C,t),y(c,e,t),r(e,P,t),y($,e,t),r(e,E,t),y(g,e,t),r(e,S,t),r(e,h,t),r(e,z,t),f.m(e,t),r(e,H,t),r(e,_,t),r(e,F,t),y(d,e,t),r(e,j,t),r(e,v,t),A=!0},p(e,[t]){const G={};t&1&&(G.fw=e[0]),u.$set(G),U!==(U=B(e))&&(f.d(1),f=U(e),f&&(f.c(),f.m(H.parentNode,H)))},i(e){A||(M(u.$$.fragment,e),M(c.$$.fragment,e),M($.$$.fragment,e),M(g.$$.fragment,e),M(d.$$.fragment,e),A=!0)},o(e){T(u.$$.fragment,e),T(c.$$.fragment,e),T($.$$.fragment,e),T(g.$$.fragment,e),T(d.$$.fragment,e),A=!1},d(e){e&&(a(l),a(i),a(s),a(C),a(P),a(E),a(S),a(h),a(z),a(H),a(_),a(F),a(j),a(v)),a(n),k(u,e),k(c,e),k($,e),k(g,e),f.d(e),k(d,e)}}}const re='{"title":"บทนำ","local":"บทนำ","sections":[],"depth":1}';function le(p,n,l){let i="pt";return D(()=>{const s=new URLSearchParams(window.location.search);l(0,i=s.get("fw")||"pt")}),[i]}class pe extends J{constructor(n){super(),Q(this,n,le,ae,R,{})}}export{pe as component};
