Buckets:
| import{s as re,n as pe,o as ue}from"../chunks/scheduler.505acc25.js";import{S as ce,i as me,e as l,s as n,c as u,h as de,a as i,d as a,b as o,f as ie,g as c,j as A,k as Y,l as fe,m as s,n as m,t as d,o as f,p as g}from"../chunks/index.e22abd30.js";import{C as ge,H as E,E as he}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.a144e953.js";function $e(Z){let r,R,S,q,h,k,$,z,v,ee='En la <a href="/course/chapter2/2">Sección 2 del Capítulo 2</a>, vimos que los modelos de lenguaje generativos se pueden ajustar para tareas concretas, como la resumición y la respuesta a preguntas. Sin embargo, hoy en día es mucho más habitual ajustar modelos de lenguaje para una amplia variedad de tareas al mismo tiempo; un método conocido como ajuste fino supervisado (SFT, por sus siglas en inglés). Este proceso ayuda a que los modelos sean más versátiles y capaces de manejar casos de uso diversos. La mayoría de los LLM con los que la gente interactúa en plataformas como ChatGPT han pasado por SFT para ser más útiles y estar mejor alineados con las preferencias humanas. Dividiremos este capítulo en cuatro secciones:',F,j,O,b,te="Las plantillas de chat estructuran las interacciones entre los usuarios y los modelos de IA, garantizando respuestas coherentes y apropiadas para el contexto. Incluyen componentes como prompts de sistema y mensajes basados en roles.",G,_,U,L,ae='El ajuste fino supervisado (SFT) es un proceso crítico para adaptar modelos de lenguaje preentrenados a tareas específicas. Consiste en entrenar el modelo con un conjunto de datos específico de la tarea y ejemplos etiquetados. Para obtener una guía detallada sobre SFT, incluidos los pasos clave y las mejores prácticas, consulta <a href="https://huggingface.co/docs/trl/en/sft_trainer" rel="nofollow">la sección sobre ajuste fino supervisado de la documentación de TRL</a>.',D,T,I,x,se="La adaptación de bajo rango (LoRA) es una técnica para ajustar modelos de lenguaje añadiendo matrices de bajo rango a las capas del modelo. Esto permite un ajuste eficiente mientras se conserva el conocimiento preentrenado del modelo. Uno de los beneficios clave de LoRA es el importante ahorro de memoria que ofrece, lo que hace posible ajustar modelos grandes en hardware con recursos limitados.",N,y,B,C,ne="La evaluación es un paso crucial en el proceso de ajuste. Nos permite medir el rendimiento del modelo en un conjunto de datos específico de la tarea.",J,p,oe='<p>⚠️ Para aprovechar todas las funciones disponibles en el Hub de Modelos y 🤗 Transformers, recomendamos <a href="https://huggingface.co/join">crear una cuenta</a>.</p>',K,w,Q,P,le='<li><a href="https://huggingface.co/docs/transformers/main/en/chat_templating" rel="nofollow">Documentación de Transformers sobre plantillas de chat</a></li> <li><a href="https://github.com/huggingface/trl/blob/main/trl/scripts/sft.py" rel="nofollow">Script para ajuste fino supervisado en TRL</a></li> <li><a href="https://huggingface.co/docs/trl/main/en/sft_trainer" rel="nofollow"><code>SFTTrainer</code> en TRL</a></li> <li><a href="https://arxiv.org/abs/2305.18290" rel="nofollow">Artículo sobre Direct Preference Optimization</a></li> <li><a href="https://huggingface.co/docs/trl/sft_trainer" rel="nofollow">Ajuste fino supervisado con TRL</a></li> <li><a href="https://github.com/huggingface/alignment-handbook" rel="nofollow">Cómo ajustar Google Gemma con ChatML y Hugging Face TRL</a></li> <li><a href="https://huggingface.co/learn/cookbook/en/fine_tuning_llm_to_generate_persian_product_catalogs_in_json_format" rel="nofollow">Ajuste de un LLM para generar catálogos de productos persas en formato JSON</a></li>',V,M,W,H,X;return h=new ge({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),$=new E({props:{title:"Ajuste fino supervisado",local:"ajuste-fino-supervisado",headingTag:"h1"}}),j=new E({props:{title:"1️⃣ Plantillas de chat",local:"1-plantillas-de-chat",headingTag:"h2"}}),_=new E({props:{title:"2️⃣ Ajuste fino supervisado",local:"2-ajuste-fino-supervisado",headingTag:"h2"}}),T=new E({props:{title:"3️⃣ Adaptación de bajo rango (LoRA)",local:"3-adaptación-de-bajo-rango-lora",headingTag:"h2"}}),y=new E({props:{title:"4️⃣ Evaluación",local:"4-evaluación",headingTag:"h2"}}),w=new E({props:{title:"Referencias",local:"referencias",headingTag:"h2"}}),M=new he({props:{source:"https://github.com/huggingface/course/blob/main/chapters/es/chapter11/1.mdx"}}),{c(){r=l("meta"),R=n(),S=l("p"),q=n(),u(h.$$.fragment),k=n(),u($.$$.fragment),z=n(),v=l("p"),v.innerHTML=ee,F=n(),u(j.$$.fragment),O=n(),b=l("p"),b.textContent=te,G=n(),u(_.$$.fragment),U=n(),L=l("p"),L.innerHTML=ae,D=n(),u(T.$$.fragment),I=n(),x=l("p"),x.textContent=se,N=n(),u(y.$$.fragment),B=n(),C=l("p"),C.textContent=ne,J=n(),p=l("blockquote"),p.innerHTML=oe,K=n(),u(w.$$.fragment),Q=n(),P=l("ul"),P.innerHTML=le,V=n(),u(M.$$.fragment),W=n(),H=l("p"),this.h()},l(e){const t=de("svelte-u9bgzb",document.head);r=i(t,"META",{name:!0,content:!0}),t.forEach(a),R=o(e),S=i(e,"P",{}),ie(S).forEach(a),q=o(e),c(h.$$.fragment,e),k=o(e),c($.$$.fragment,e),z=o(e),v=i(e,"P",{"data-svelte-h":!0}),A(v)!=="svelte-jzh0zd"&&(v.innerHTML=ee),F=o(e),c(j.$$.fragment,e),O=o(e),b=i(e,"P",{"data-svelte-h":!0}),A(b)!=="svelte-b9fjol"&&(b.textContent=te),G=o(e),c(_.$$.fragment,e),U=o(e),L=i(e,"P",{"data-svelte-h":!0}),A(L)!=="svelte-gxloiz"&&(L.innerHTML=ae),D=o(e),c(T.$$.fragment,e),I=o(e),x=i(e,"P",{"data-svelte-h":!0}),A(x)!=="svelte-1lqaa8o"&&(x.textContent=se),N=o(e),c(y.$$.fragment,e),B=o(e),C=i(e,"P",{"data-svelte-h":!0}),A(C)!=="svelte-1tt864b"&&(C.textContent=ne),J=o(e),p=i(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),A(p)!=="svelte-kdzsys"&&(p.innerHTML=oe),K=o(e),c(w.$$.fragment,e),Q=o(e),P=i(e,"UL",{"data-svelte-h":!0}),A(P)!=="svelte-akupih"&&(P.innerHTML=le),V=o(e),c(M.$$.fragment,e),W=o(e),H=i(e,"P",{}),ie(H).forEach(a),this.h()},h(){Y(r,"name","hf:doc:metadata"),Y(r,"content",ve),Y(p,"class","tip")},m(e,t){fe(document.head,r),s(e,R,t),s(e,S,t),s(e,q,t),m(h,e,t),s(e,k,t),m($,e,t),s(e,z,t),s(e,v,t),s(e,F,t),m(j,e,t),s(e,O,t),s(e,b,t),s(e,G,t),m(_,e,t),s(e,U,t),s(e,L,t),s(e,D,t),m(T,e,t),s(e,I,t),s(e,x,t),s(e,N,t),m(y,e,t),s(e,B,t),s(e,C,t),s(e,J,t),s(e,p,t),s(e,K,t),m(w,e,t),s(e,Q,t),s(e,P,t),s(e,V,t),m(M,e,t),s(e,W,t),s(e,H,t),X=!0},p:pe,i(e){X||(d(h.$$.fragment,e),d($.$$.fragment,e),d(j.$$.fragment,e),d(_.$$.fragment,e),d(T.$$.fragment,e),d(y.$$.fragment,e),d(w.$$.fragment,e),d(M.$$.fragment,e),X=!0)},o(e){f(h.$$.fragment,e),f($.$$.fragment,e),f(j.$$.fragment,e),f(_.$$.fragment,e),f(T.$$.fragment,e),f(y.$$.fragment,e),f(w.$$.fragment,e),f(M.$$.fragment,e),X=!1},d(e){e&&(a(R),a(S),a(q),a(k),a(z),a(v),a(F),a(O),a(b),a(G),a(U),a(L),a(D),a(I),a(x),a(N),a(B),a(C),a(J),a(p),a(K),a(Q),a(P),a(V),a(W),a(H)),a(r),g(h,e),g($,e),g(j,e),g(_,e),g(T,e),g(y,e),g(w,e),g(M,e)}}}const ve='{"title":"Ajuste fino supervisado","local":"ajuste-fino-supervisado","sections":[{"title":"1️⃣ Plantillas de chat","local":"1-plantillas-de-chat","sections":[],"depth":2},{"title":"2️⃣ Ajuste fino supervisado","local":"2-ajuste-fino-supervisado","sections":[],"depth":2},{"title":"3️⃣ Adaptación de bajo rango (LoRA)","local":"3-adaptación-de-bajo-rango-lora","sections":[],"depth":2},{"title":"4️⃣ Evaluación","local":"4-evaluación","sections":[],"depth":2},{"title":"Referencias","local":"referencias","sections":[],"depth":2}],"depth":1}';function je(Z){return ue(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Te extends ce{constructor(r){super(),me(this,r,je,$e,re,{})}}export{Te as component}; | |
Xet Storage Details
- Size:
- 7.66 kB
- Xet hash:
- fa36ec7b05ed1efaee43864efae91ddce894e09cde5b024dfcb408b3bf388537
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.