import{s as F,n as O,o as R}from"../chunks/scheduler.37c15a92.js";import{S as G,i as I,g as u,s as p,r as L,A as U,h as f,f as n,c as m,j as S,u as z,x as P,k as H,y as W,a,v as M,d as j,t as A,w as q}from"../chunks/index.7cb9c9b8.js";import{H as B,E as D}from"../chunks/getInferenceSnippets.c47ae3ea.js";function J(T){let i,g,d,v,s,_,o,y="In this chapter, we explored the essential components of fine-tuning language models:",$,l,E="<li><p><strong>Chat Templates</strong> provide structure to model interactions, ensuring consistent and appropriate responses through standardized formatting.</p></li> <li><p><strong>Supervised Fine-Tuning (SFT)</strong> allows adaptation of pre-trained models to specific tasks while maintaining their foundational knowledge.</p></li> <li><p><strong>LoRA</strong> offers an efficient approach to fine-tuning by reducing trainable parameters while preserving model performance.</p></li> <li><p><strong>Evaluation</strong> helps measure and validate the effectiveness of fine-tuning through various metrics and benchmarks.</p></li>",b,r,k="These techniques, when combined, enable the creation of specialized language models that can excel at specific tasks while remaining computationally efficient. Whether you’re building a customer service bot or a domain-specific assistant, understanding these concepts is crucial for successful model adaptation.",w,c,x,h,C;return s=new B({props:{title:"Conclusion",local:"conclusion",headingTag:"h1"}}),c=new D({props:{source:"https://github.com/huggingface/course/blob/main/chapters/en/chapter11/6.mdx"}}),{c(){i=u("meta"),g=p(),d=u("p"),v=p(),L(s.$$.fragment),_=p(),o=u("p"),o.textContent=y,$=p(),l=u("ol"),l.innerHTML=E,b=p(),r=u("p"),r.textContent=k,w=p(),L(c.$$.fragment),x=p(),h=u("p"),this.h()},l(e){const t=U("svelte-u9bgzb",document.head);i=f(t,"META",{name:!0,content:!0}),t.forEach(n),g=m(e),d=f(e,"P",{}),S(d).forEach(n),v=m(e),z(s.$$.fragment,e),_=m(e),o=f(e,"P",{"data-svelte-h":!0}),P(o)!=="svelte-lf9zjh"&&(o.textContent=y),$=m(e),l=f(e,"OL",{"data-svelte-h":!0}),P(l)!=="svelte-1ovk2di"&&(l.innerHTML=E),b=m(e),r=f(e,"P",{"data-svelte-h":!0}),P(r)!=="svelte-1ej5160"&&(r.textContent=k),w=m(e),z(c.$$.fragment,e),x=m(e),h=f(e,"P",{}),S(h).forEach(n),this.h()},h(){H(i,"name","hf:doc:metadata"),H(i,"content",K)},m(e,t){W(document.head,i),a(e,g,t),a(e,d,t),a(e,v,t),M(s,e,t),a(e,_,t),a(e,o,t),a(e,$,t),a(e,l,t),a(e,b,t),a(e,r,t),a(e,w,t),M(c,e,t),a(e,x,t),a(e,h,t),C=!0},p:O,i(e){C||(j(s.$$.fragment,e),j(c.$$.fragment,e),C=!0)},o(e){A(s.$$.fragment,e),A(c.$$.fragment,e),C=!1},d(e){e&&(n(g),n(d),n(v),n(_),n(o),n($),n(l),n(b),n(r),n(w),n(x),n(h)),n(i),q(s,e),q(c,e)}}}const K='{"title":"Conclusion","local":"conclusion","sections":[],"depth":1}';function N(T){return R(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Y extends G{constructor(i){super(),I(this,i,N,J,F,{})}}export{Y as component};
