import{s as q,o as B}from"../chunks/scheduler.37c15a92.js";import{S as K,i as O,g as d,s as m,r as y,A as R,h as w,f as i,c as u,j as G,u as L,x as S,k as N,y as W,a as l,v as E,d as M,t as U,w as z}from"../chunks/index.2bf4358c.js";import{C as D}from"../chunks/CourseFloatingBanner.9ff4c771.js";import{F as I}from"../chunks/FrameworkSwitchCourse.8d4d4ab6.js";import{H as J,E as Q}from"../chunks/getInferenceSnippets.24b50994.js";function V(c){let e,r='<li>瞭解了<a href="https://huggingface.co/datasets" rel="nofollow">Hub</a>中的數據集</li> <li>學習瞭如何加載和預處理數據集</li> <li>學習瞭如何使用 Keras 微調和評估模型</li> <li>實現了自定義指標</li>';return{c(){e=d("ul"),e.innerHTML=r},l(a){e=w(a,"UL",{"data-svelte-h":!0}),S(e)!=="svelte-9nijn0"&&(e.innerHTML=r)},m(a,s){l(a,e,s)},d(a){a&&i(e)}}}function X(c){let e,r='<li>瞭解了<a href="https://huggingface.co/datasets" rel="nofollow">Hub</a>中的數據集</li> <li>學習瞭如何加載和預處理數據集，包括使用動態填充和整理器</li> <li>實現您自己的模型微調和評估</li> <li>實施了一個較為底層的訓練循環</li> <li>使用 🤗 Accelerate 輕鬆調整您的訓練循環，使其適用於多個 GPU 或 TPU</li>';return{c(){e=d("ul"),e.innerHTML=r},l(a){e=w(a,"UL",{"data-svelte-h":!0}),S(e)!=="svelte-10ukihr"&&(e.innerHTML=r)},m(a,s){l(a,e,s)},d(a){a&&i(e)}}}function Y(c){let e,r,a,s,f,k,p,v,$,C,h,A="這是非常令人高興的！ 在前兩章中，您瞭解了模型和標記器(tokenizer)，現在您知道如何針對您自己的數據對它們進行微調。回顧一下，在本章中，您：",x,g,_,H,b,P;f=new I({props:{fw:c[0]}}),p=new J({props:{title:"微調，檢查!",local:"微調檢查",headingTag:"h1"}}),$=new D({props:{chapter:3,classNames:"absolute z-10 right-0 top-0"}});function F(t,n){return t[0]==="pt"?X:V}let T=F(c),o=T(c);return _=new Q({props:{source:"https://github.com/huggingface/course/blob/main/chapters/zh-TW/chapter3/5.mdx"}}),{c(){e=d("meta"),r=m(),a=d("p"),s=m(),y(f.$$.fragment),k=m(),y(p.$$.fragment),v=m(),y($.$$.fragment),C=m(),h=d("p"),h.textContent=A,x=m(),o.c(),g=m(),y(_.$$.fragment),H=m(),b=d("p"),this.h()},l(t){const n=R("svelte-u9bgzb",document.head);e=w(n,"META",{name:!0,content:!0}),n.forEach(i),r=u(t),a=w(t,"P",{}),G(a).forEach(i),s=u(t),L(f.$$.fragment,t),k=u(t),L(p.$$.fragment,t),v=u(t),L($.$$.fragment,t),C=u(t),h=w(t,"P",{"data-svelte-h":!0}),S(h)!=="svelte-lardxo"&&(h.textContent=A),x=u(t),o.l(t),g=u(t),L(_.$$.fragment,t),H=u(t),b=w(t,"P",{}),G(b).forEach(i),this.h()},h(){N(e,"name","hf:doc:metadata"),N(e,"content",Z)},m(t,n){W(document.head,e),l(t,r,n),l(t,a,n),l(t,s,n),E(f,t,n),l(t,k,n),E(p,t,n),l(t,v,n),E($,t,n),l(t,C,n),l(t,h,n),l(t,x,n),o.m(t,n),l(t,g,n),E(_,t,n),l(t,H,n),l(t,b,n),P=!0},p(t,[n]){const j={};n&1&&(j.fw=t[0]),f.$set(j),T!==(T=F(t))&&(o.d(1),o=T(t),o&&(o.c(),o.m(g.parentNode,g)))},i(t){P||(M(f.$$.fragment,t),M(p.$$.fragment,t),M($.$$.fragment,t),M(_.$$.fragment,t),P=!0)},o(t){U(f.$$.fragment,t),U(p.$$.fragment,t),U($.$$.fragment,t),U(_.$$.fragment,t),P=!1},d(t){t&&(i(r),i(a),i(s),i(k),i(v),i(C),i(h),i(x),i(g),i(H),i(b)),i(e),z(f,t),z(p,t),z($,t),o.d(t),z(_,t)}}}const Z='{"title":"微調，檢查!","local":"微調檢查","sections":[],"depth":1}';function tt(c,e,r){let a="pt";return B(()=>{const s=new URLSearchParams(window.location.search);r(0,a=s.get("fw")||"pt")}),[a]}class rt extends K{constructor(e){super(),O(this,e,tt,Y,q,{})}}export{rt as component};
