import{s as q,o as B}from"../chunks/scheduler.37c15a92.js";import{S as O,i as R,g as d,s as m,r as L,A as D,h as w,f as a,c as u,j as G,u as T,x as S,k as N,y as I,a as l,v as E,d as M,t as F,w as U}from"../chunks/index.2bf4358c.js";import{C as J}from"../chunks/CourseFloatingBanner.9ff4c771.js";import{F as K}from"../chunks/FrameworkSwitchCourse.8d4d4ab6.js";import{H as Q,E as V}from"../chunks/getInferenceSnippets.648f38f6.js";function W(c){let e,r='<li>Узнали о датасетах из <a href="https://huggingface.co/datasets" rel="nofollow">Hub</a></li> <li>Узнали как загрузить и предобработать данные</li> <li>Узнали как реализовать fine-tuning и валидировать модель с исползованием keras</li> <li>Реализовали собственную метрику</li>';return{c(){e=d("ul"),e.innerHTML=r},l(i){e=w(i,"UL",{"data-svelte-h":!0}),S(e)!=="svelte-1ogzjrl"&&(e.innerHTML=r)},m(i,s){l(i,e,s)},d(i){i&&a(e)}}}function X(c){let e,r='<li>Узнали о датасетах из <a href="https://huggingface.co/datasets" rel="nofollow">Hub</a></li> <li>Узнали как загрузить и предобработать данные (включая динамический padding и collator)</li> <li>Реализовали свой fine-tuning и валидировали модель</li> <li>Реализовали низко-уровневый обучающий цикл</li> <li>Использовали 🤗 Accelerate для легкой адаптации обучающего цикла к нескольким GPU или TPU</li>';return{c(){e=d("ul"),e.innerHTML=r},l(i){e=w(i,"UL",{"data-svelte-h":!0}),S(e)!=="svelte-pintyh"&&(e.innerHTML=r)},m(i,s){l(i,e,s)},d(i){i&&a(e)}}}function Y(c){let e,r,i,s,f,k,p,v,$,C,g,z=`Это было весело! В первых двух главах вы узнали о моделях и токенизаторах, и теперь вы знаете как применить fine-tuning на собственных данных.
Напомним, в этой главе вы:`,y,_,h,H,b,P;f=new K({props:{fw:c[0]}}),p=new Q({props:{title:"Fine-tuning, итоги!",local:"fine-tuning-итоги",headingTag:"h1"}}),$=new J({props:{chapter:3,classNames:"absolute z-10 right-0 top-0"}});function A(t,n){return t[0]==="pt"?X:W}let x=A(c),o=x(c);return h=new V({props:{source:"https://github.com/huggingface/course/blob/main/chapters/ru/chapter3/5.mdx"}}),{c(){e=d("meta"),r=m(),i=d("p"),s=m(),L(f.$$.fragment),k=m(),L(p.$$.fragment),v=m(),L($.$$.fragment),C=m(),g=d("p"),g.textContent=z,y=m(),o.c(),_=m(),L(h.$$.fragment),H=m(),b=d("p"),this.h()},l(t){const n=D("svelte-u9bgzb",document.head);e=w(n,"META",{name:!0,content:!0}),n.forEach(a),r=u(t),i=w(t,"P",{}),G(i).forEach(a),s=u(t),T(f.$$.fragment,t),k=u(t),T(p.$$.fragment,t),v=u(t),T($.$$.fragment,t),C=u(t),g=w(t,"P",{"data-svelte-h":!0}),S(g)!=="svelte-1ghcd7o"&&(g.textContent=z),y=u(t),o.l(t),_=u(t),T(h.$$.fragment,t),H=u(t),b=w(t,"P",{}),G(b).forEach(a),this.h()},h(){N(e,"name","hf:doc:metadata"),N(e,"content",Z)},m(t,n){I(document.head,e),l(t,r,n),l(t,i,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,g,n),l(t,y,n),o.m(t,n),l(t,_,n),E(h,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),x!==(x=A(t))&&(o.d(1),o=x(t),o&&(o.c(),o.m(_.parentNode,_)))},i(t){P||(M(f.$$.fragment,t),M(p.$$.fragment,t),M($.$$.fragment,t),M(h.$$.fragment,t),P=!0)},o(t){F(f.$$.fragment,t),F(p.$$.fragment,t),F($.$$.fragment,t),F(h.$$.fragment,t),P=!1},d(t){t&&(a(r),a(i),a(s),a(k),a(v),a(C),a(g),a(y),a(_),a(H),a(b)),a(e),U(f,t),U(p,t),U($,t),o.d(t),U(h,t)}}}const Z='{"title":"Fine-tuning, итоги!","local":"fine-tuning-итоги","sections":[],"depth":1}';function tt(c,e,r){let i="pt";return B(()=>{const s=new URLSearchParams(window.location.search);r(0,i=s.get("fw")||"pt")}),[i]}class rt extends O{constructor(e){super(),R(this,e,tt,Y,q,{})}}export{rt as component};
