import{S as Rc,i as Gc,s as Jc,e as r,k as p,w,t as i,M as Xc,c as o,d as a,m,a as s,x as z,h as n,b as u,G as t,g as c,y as x,q as j,o as q,B as P,v as Bc,L as os}from"../chunks/vendor-hf-doc-builder.js";import{I as ae}from"../chunks/IconCopyLink-hf-doc-builder.js";import{C as F}from"../chunks/CodeBlock-hf-doc-builder.js";import{F as Mc,M as ss}from"../chunks/Markdown-hf-doc-builder.js";import"../chunks/IconTensorflow-hf-doc-builder.js";function Kc(R){let d,$,f,v,A,y,N,O,T,S,k,b,U,H,I,L,M,E,g,G;return g=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`}}),{c(){d=r("p"),$=i("El script de ejemplo descarga y preprocesa un conjunto de datos de la biblioteca \u{1F917} "),f=r("a"),v=i("Datasets"),A=i(". Luego, el script ajusta un conjunto de datos con "),y=r("a"),N=i("Trainer"),O=i(" en una arquitectura que soporta la tarea de resumen. El siguiente ejemplo muestra c\xF3mo ajustar un "),T=r("a"),S=i("T5-small"),k=i(" en el conjunto de datos "),b=r("a"),U=i("CNN/DailyMail"),H=i(". El modelo T5 requiere un argumento adicional "),I=r("code"),L=i("source_prefix"),M=i(" debido a c\xF3mo fue entrenado. Este aviso le permite a T5 saber que se trata de una tarea de resumir."),E=p(),w(g.$$.fragment),this.h()},l(D){d=o(D,"P",{});var C=s(d);$=n(C,"El script de ejemplo descarga y preprocesa un conjunto de datos de la biblioteca \u{1F917} "),f=o(C,"A",{href:!0,rel:!0});var X=s(f);v=n(X,"Datasets"),X.forEach(a),A=n(C,". Luego, el script ajusta un conjunto de datos con "),y=o(C,"A",{href:!0,rel:!0});var Et=s(y);N=n(Et,"Trainer"),Et.forEach(a),O=n(C," en una arquitectura que soporta la tarea de resumen. El siguiente ejemplo muestra c\xF3mo ajustar un "),T=o(C,"A",{href:!0,rel:!0});var De=s(T);S=n(De,"T5-small"),De.forEach(a),k=n(C," en el conjunto de datos "),b=o(C,"A",{href:!0,rel:!0});var J=s(b);U=n(J,"CNN/DailyMail"),J.forEach(a),H=n(C,". El modelo T5 requiere un argumento adicional "),I=o(C,"CODE",{});var bt=s(I);L=n(bt,"source_prefix"),bt.forEach(a),M=n(C," debido a c\xF3mo fue entrenado. Este aviso le permite a T5 saber que se trata de una tarea de resumir."),C.forEach(a),E=m(D),z(g.$$.fragment,D),this.h()},h(){u(f,"href","https://huggingface.co/docs/datasets/"),u(f,"rel","nofollow"),u(y,"href","https://huggingface.co/docs/transformers/main_classes/trainer"),u(y,"rel","nofollow"),u(T,"href","https://huggingface.co/t5-small"),u(T,"rel","nofollow"),u(b,"href","https://huggingface.co/datasets/cnn_dailymail"),u(b,"rel","nofollow")},m(D,C){c(D,d,C),t(d,$),t(d,f),t(f,v),t(d,A),t(d,y),t(y,N),t(d,O),t(d,T),t(T,S),t(d,k),t(d,b),t(b,U),t(d,H),t(d,I),t(I,L),t(d,M),c(D,E,C),x(g,D,C),G=!0},p:os,i(D){G||(j(g.$$.fragment,D),G=!0)},o(D){q(g.$$.fragment,D),G=!1},d(D){D&&a(d),D&&a(E),P(g,D)}}}function Vc(R){let d,$;return d=new ss({props:{$$slots:{default:[Kc]},$$scope:{ctx:R}}}),{c(){w(d.$$.fragment)},l(f){z(d.$$.fragment,f)},m(f,v){x(d,f,v),$=!0},p(f,v){const A={};v&2&&(A.$$scope={dirty:v,ctx:f}),d.$set(A)},i(f){$||(j(d.$$.fragment,f),$=!0)},o(f){q(d.$$.fragment,f),$=!1},d(f){P(d,f)}}}function Qc(R){let d,$,f,v,A,y,N,O,T,S,k,b,U,H,I,L,M;return L=new F({props:{code:`python examples/tensorflow/summarization/run_summarization.py  \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --output_dir /tmp/tst-summarization  \\
    --per_device_train_batch_size 8 \\
    --per_device_eval_batch_size 16 \\
    --num_train_epochs 3 \\
    --do_train \\
    --do_eval`,highlighted:`python examples/tensorflow/summarization/run_summarization.py  \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --output_dir /tmp/tst-summarization  \\
    --per_device_train_batch_size 8 \\
    --per_device_eval_batch_size 16 \\
    --num_train_epochs 3 \\
    --do_train \\
    --do_eval`}}),{c(){d=r("p"),$=i("El script de ejemplo descarga y preprocesa un conjunto de datos de la biblioteca \u{1F917} "),f=r("a"),v=i("Datasets"),A=i(". Luego, el script ajusta un conjunto de datos utilizando Keras en una arquitectura que soporta la tarea de resumir. El siguiente ejemplo muestra c\xF3mo ajustar un "),y=r("a"),N=i("T5-small"),O=i(" en el conjunto de datos "),T=r("a"),S=i("CNN/DailyMail"),k=i(". El modelo T5 requiere un argumento adicional "),b=r("code"),U=i("source_prefix"),H=i(" debido a c\xF3mo fue entrenado. Este aviso le permite a T5 saber que se trata de una tarea de resumir."),I=p(),w(L.$$.fragment),this.h()},l(E){d=o(E,"P",{});var g=s(d);$=n(g,"El script de ejemplo descarga y preprocesa un conjunto de datos de la biblioteca \u{1F917} "),f=o(g,"A",{href:!0,rel:!0});var G=s(f);v=n(G,"Datasets"),G.forEach(a),A=n(g,". Luego, el script ajusta un conjunto de datos utilizando Keras en una arquitectura que soporta la tarea de resumir. El siguiente ejemplo muestra c\xF3mo ajustar un "),y=o(g,"A",{href:!0,rel:!0});var D=s(y);N=n(D,"T5-small"),D.forEach(a),O=n(g," en el conjunto de datos "),T=o(g,"A",{href:!0,rel:!0});var C=s(T);S=n(C,"CNN/DailyMail"),C.forEach(a),k=n(g,". El modelo T5 requiere un argumento adicional "),b=o(g,"CODE",{});var X=s(b);U=n(X,"source_prefix"),X.forEach(a),H=n(g," debido a c\xF3mo fue entrenado. Este aviso le permite a T5 saber que se trata de una tarea de resumir."),g.forEach(a),I=m(E),z(L.$$.fragment,E),this.h()},h(){u(f,"href","https://huggingface.co/docs/datasets/"),u(f,"rel","nofollow"),u(y,"href","https://huggingface.co/t5-small"),u(y,"rel","nofollow"),u(T,"href","https://huggingface.co/datasets/cnn_dailymail"),u(T,"rel","nofollow")},m(E,g){c(E,d,g),t(d,$),t(d,f),t(f,v),t(d,A),t(d,y),t(y,N),t(d,O),t(d,T),t(T,S),t(d,k),t(d,b),t(b,U),t(d,H),c(E,I,g),x(L,E,g),M=!0},p:os,i(E){M||(j(L.$$.fragment,E),M=!0)},o(E){q(L.$$.fragment,E),M=!1},d(E){E&&a(d),E&&a(I),P(L,E)}}}function Yc(R){let d,$;return d=new ss({props:{$$slots:{default:[Qc]},$$scope:{ctx:R}}}),{c(){w(d.$$.fragment)},l(f){z(d.$$.fragment,f)},m(f,v){x(d,f,v),$=!0},p(f,v){const A={};v&2&&(A.$$scope={dirty:v,ctx:f}),d.$set(A)},i(f){$||(j(d.$$.fragment,f),$=!0)},o(f){q(d.$$.fragment,f),$=!1},d(f){P(d,f)}}}function Wc(R){let d,$,f,v,A,y,N,O,T,S,k,b,U,H,I,L,M;return L=new F({props:{code:`python xla_spawn.py --num_cores 8 \\
    summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`,highlighted:`python xla_spawn.py --num_cores 8 \\
    summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`}}),{c(){d=r("p"),$=i("Las Unidades de Procesamiento de Tensor (TPUs) est\xE1n dise\xF1adas espec\xEDficamente para acelerar el rendimiento. PyTorch admite TPU con el compilador de aprendizaje profundo "),f=r("a"),v=i("XLA"),A=i(" (consulta "),y=r("a"),N=i("aqu\xED"),O=i(" para obtener m\xE1s detalles). Para usar una TPU, inicia el script "),T=r("code"),S=i("xla_spawn.py"),k=i(" y usa el argumento "),b=r("code"),U=i("num_cores"),H=i(" para establecer la cantidad de n\xFAcleos de TPU que deseas usar."),I=p(),w(L.$$.fragment),this.h()},l(E){d=o(E,"P",{});var g=s(d);$=n(g,"Las Unidades de Procesamiento de Tensor (TPUs) est\xE1n dise\xF1adas espec\xEDficamente para acelerar el rendimiento. PyTorch admite TPU con el compilador de aprendizaje profundo "),f=o(g,"A",{href:!0,rel:!0});var G=s(f);v=n(G,"XLA"),G.forEach(a),A=n(g," (consulta "),y=o(g,"A",{href:!0,rel:!0});var D=s(y);N=n(D,"aqu\xED"),D.forEach(a),O=n(g," para obtener m\xE1s detalles). Para usar una TPU, inicia el script "),T=o(g,"CODE",{});var C=s(T);S=n(C,"xla_spawn.py"),C.forEach(a),k=n(g," y usa el argumento "),b=o(g,"CODE",{});var X=s(b);U=n(X,"num_cores"),X.forEach(a),H=n(g," para establecer la cantidad de n\xFAcleos de TPU que deseas usar."),g.forEach(a),I=m(E),z(L.$$.fragment,E),this.h()},h(){u(f,"href","https://www.tensorflow.org/xla"),u(f,"rel","nofollow"),u(y,"href","https://github.com/pytorch/xla/blob/master/README.md"),u(y,"rel","nofollow")},m(E,g){c(E,d,g),t(d,$),t(d,f),t(f,v),t(d,A),t(d,y),t(y,N),t(d,O),t(d,T),t(T,S),t(d,k),t(d,b),t(b,U),t(d,H),c(E,I,g),x(L,E,g),M=!0},p:os,i(E){M||(j(L.$$.fragment,E),M=!0)},o(E){q(L.$$.fragment,E),M=!1},d(E){E&&a(d),E&&a(I),P(L,E)}}}function Zc(R){let d,$;return d=new ss({props:{$$slots:{default:[Wc]},$$scope:{ctx:R}}}),{c(){w(d.$$.fragment)},l(f){z(d.$$.fragment,f)},m(f,v){x(d,f,v),$=!0},p(f,v){const A={};v&2&&(A.$$scope={dirty:v,ctx:f}),d.$set(A)},i(f){$||(j(d.$$.fragment,f),$=!0)},o(f){q(d.$$.fragment,f),$=!1},d(f){P(d,f)}}}function ep(R){let d,$,f,v,A,y,N,O,T,S,k;return S=new F({props:{code:`python run_summarization.py  \\
    --tpu name_of_tpu_resource \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --output_dir /tmp/tst-summarization  \\
    --per_device_train_batch_size 8 \\
    --per_device_eval_batch_size 16 \\
    --num_train_epochs 3 \\
    --do_train \\
    --do_eval`,highlighted:`python run_summarization.py  \\
    --tpu name_of_tpu_resource \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --output_dir /tmp/tst-summarization  \\
    --per_device_train_batch_size 8 \\
    --per_device_eval_batch_size 16 \\
    --num_train_epochs 3 \\
    --do_train \\
    --do_eval`}}),{c(){d=r("p"),$=i("Las Unidades de Procesamiento de Tensor (TPUs) est\xE1n dise\xF1adas espec\xEDficamente para acelerar el rendimiento. TensorFlow utiliza "),f=r("a"),v=r("code"),A=i("TPUStrategy"),y=i(" para entrenar en TPUs. Para usar una TPU, pasa el nombre del recurso de la TPU al argumento "),N=r("code"),O=i("tpu"),T=p(),w(S.$$.fragment),this.h()},l(b){d=o(b,"P",{});var U=s(d);$=n(U,"Las Unidades de Procesamiento de Tensor (TPUs) est\xE1n dise\xF1adas espec\xEDficamente para acelerar el rendimiento. TensorFlow utiliza "),f=o(U,"A",{href:!0,rel:!0});var H=s(f);v=o(H,"CODE",{});var I=s(v);A=n(I,"TPUStrategy"),I.forEach(a),H.forEach(a),y=n(U," para entrenar en TPUs. Para usar una TPU, pasa el nombre del recurso de la TPU al argumento "),N=o(U,"CODE",{});var L=s(N);O=n(L,"tpu"),L.forEach(a),U.forEach(a),T=m(b),z(S.$$.fragment,b),this.h()},h(){u(f,"href","https://www.tensorflow.org/guide/distributed_training#tpustrategy"),u(f,"rel","nofollow")},m(b,U){c(b,d,U),t(d,$),t(d,f),t(f,v),t(v,A),t(d,y),t(d,N),t(N,O),c(b,T,U),x(S,b,U),k=!0},p:os,i(b){k||(j(S.$$.fragment,b),k=!0)},o(b){q(S.$$.fragment,b),k=!1},d(b){b&&a(d),b&&a(T),P(S,b)}}}function tp(R){let d,$;return d=new ss({props:{$$slots:{default:[ep]},$$scope:{ctx:R}}}),{c(){w(d.$$.fragment)},l(f){z(d.$$.fragment,f)},m(f,v){x(d,f,v),$=!0},p(f,v){const A={};v&2&&(A.$$scope={dirty:v,ctx:f}),d.$set(A)},i(f){$||(j(d.$$.fragment,f),$=!0)},o(f){q(d.$$.fragment,f),$=!1},d(f){P(d,f)}}}function ap(R){let d,$,f,v,A,y,N,O,T,S,k,b,U,H,I,L,M,E,g,G,D,C,X,Et,De,J,bt,Se,is,ns,Ie,ls,us,Sr,yt,cs,Ir,V,ps,Ne,ms,ds,Oe,fs,_s,Nr,Q,hs,Fe,vs,gs,He,$s,Es,Or,re,me,_a,Me,bs,ha,ys,Fr,de,ws,va,zs,xs,Hr,Re,Mr,wt,js,Rr,fe,ga,qs,Ps,_,$a,zt,As,ks,Ea,xt,Ts,Ls,ba,jt,Cs,Us,ya,qt,Ds,Ss,wa,Pt,Is,Ns,za,At,Os,Fs,xa,kt,Hs,Ms,ja,Tt,Rs,Gs,qa,Lt,Js,Xs,Pa,Ct,Bs,Ks,Aa,Ut,Vs,Qs,ka,Dt,Ys,Ws,Ta,St,Zs,ei,La,It,ti,ai,Ca,Nt,ri,oi,Ua,Ot,si,ii,Da,Ft,ni,li,Sa,Ht,ui,ci,Ia,Mt,pi,mi,Na,Rt,di,fi,Oa,Gt,_i,hi,Fa,Jt,vi,gi,Ha,Xt,$i,Ei,Ma,Bt,bi,yi,Ra,Kt,wi,zi,Ga,Vt,xi,ji,Ja,Qt,qi,Gr,Yt,Pi,Jr,Ge,Xr,Wt,Ai,Br,Je,Kr,oe,_e,Xa,Xe,ki,Ba,Ti,Vr,he,Qr,se,ve,Ka,Be,Li,Va,Ci,Yr,Ke,Ve,Ui,Di,Wr,ge,Qe,Si,Qa,Ii,Ni,Oi,Ye,Fi,Ya,Hi,Mi,Zr,We,eo,$e,Ri,Ze,Wa,Gi,Ji,to,ie,Ee,Za,et,Xi,er,Bi,ao,be,ro,ne,ye,tr,tt,Ki,ar,Vi,oo,we,Qi,at,Yi,Wi,so,ze,rr,Zi,en,rt,io,B,tn,or,an,rn,sr,on,sn,ir,nn,ln,no,ot,lo,Zt,un,uo,st,co,ea,cn,po,it,mo,le,xe,nr,nt,pn,lr,mn,fo,ta,dn,_o,Y,je,ur,fn,_n,cr,hn,vn,gn,aa,pr,$n,En,bn,ra,mr,yn,wn,ho,oa,zn,vo,lt,go,ue,qe,dr,ut,xn,fr,jn,$o,sa,qn,Eo,W,_r,hr,Pn,An,vr,gr,kn,Tn,$r,Er,Ln,bo,ct,yo,Z,Cn,br,Un,Dn,yr,Sn,In,wo,pt,zo,ce,Pe,wr,mt,Nn,zr,On,xo,ia,Fn,jo,K,Hn,xr,Mn,Rn,jr,Gn,Jn,qr,Xn,Bn,qo,dt,Po,Ae,Kn,Pr,Vn,Qn,Ao,ft,ko,pe,ke,Ar,_t,Yn,kr,Wn,To,Te,Zn,ht,el,tl,Lo,vt,Co,ee,al,Tr,rl,ol,Lr,sl,il,Uo,Le,nl,Cr,ll,ul,Do,na,cl,So,gt,Io;return y=new ae({}),Me=new ae({}),Re=new F({props:{code:`git clone https://github.com/huggingface/transformers
cd transformers
pip install .`,highlighted:`git <span class="hljs-built_in">clone</span> https://github.com/huggingface/transformers
<span class="hljs-built_in">cd</span> transformers
pip install .`}}),Ge=new F({props:{code:"git checkout tags/v3.5.1",highlighted:"git checkout tags/v3.5.1"}}),Je=new F({props:{code:"pip install -r requirements.txt",highlighted:"pip install -r requirements.txt"}}),Xe=new ae({}),he=new Mc({props:{pytorch:!0,tensorflow:!0,jax:!1,$$slots:{tensorflow:[Yc],pytorch:[Vc]},$$scope:{ctx:R}}}),Be=new ae({}),We=new F({props:{code:`python -m torch.distributed.launch \\
    --nproc_per_node 8 pytorch/summarization/run_summarization.py \\
    --fp16 \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`,highlighted:`python -m torch.distributed.launch \\
    --nproc_per_node 8 pytorch/summarization/run_summarization.py \\
    --fp16 \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`}}),et=new ae({}),be=new Mc({props:{pytorch:!0,tensorflow:!0,jax:!1,$$slots:{tensorflow:[tp],pytorch:[Zc]},$$scope:{ctx:R}}}),tt=new ae({}),rt=new F({props:{code:"pip install git+https://github.com/huggingface/accelerate",highlighted:"pip install git+https://github.com/huggingface/accelerate"}}),ot=new F({props:{code:"accelerate config",highlighted:"accelerate config"}}),st=new F({props:{code:"accelerate test",highlighted:'accelerate <span class="hljs-built_in">test</span>'}}),it=new F({props:{code:`accelerate launch run_summarization_no_trainer.py \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir ~/tmp/tst-summarization`,highlighted:`accelerate launch run_summarization_no_trainer.py \\
    --model_name_or_path t5-small \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir ~/tmp/tst-summarization`}}),nt=new ae({}),lt=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --train_file path_to_csv_or_jsonlines_file \\
    --validation_file path_to_csv_or_jsonlines_file \\
    --text_column text_column_name \\
    --summary_column summary_column_name \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --overwrite_output_dir \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --train_file path_to_csv_or_jsonlines_file \\
    --validation_file path_to_csv_or_jsonlines_file \\
    --text_column text_column_name \\
    --summary_column summary_column_name \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --overwrite_output_dir \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --predict_with_generate`}}),ut=new ae({}),ct=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --max_train_samples 50 \\
    --max_eval_samples 50 \\
    --max_predict_samples 50 \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py \\
    --model_name_or_path t5-small \\
    --max_train_samples 50 \\
    --max_eval_samples 50 \\
    --max_predict_samples 50 \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`}}),pt=new F({props:{code:"examples/pytorch/summarization/run_summarization.py -h",highlighted:"examples/pytorch/summarization/run_summarization.py -h"}}),mt=new ae({}),dt=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --output_dir previous_output_dir \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --output_dir previous_output_dir \\
    --predict_with_generate`}}),ft=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --resume_from_checkpoint path_to_specific_checkpoint \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --resume_from_checkpoint path_to_specific_checkpoint \\
    --predict_with_generate`}}),_t=new ae({}),vt=new F({props:{code:"huggingface-cli login",highlighted:"huggingface-cli login"}}),gt=new F({props:{code:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config "3.0.0" \\
    --source_prefix "summarize: " \\
    --push_to_hub \\
    --push_to_hub_model_id finetuned-t5-cnn_dailymail \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`,highlighted:`python examples/pytorch/summarization/run_summarization.py
    --model_name_or_path t5-small \\
    --do_train \\
    --do_eval \\
    --dataset_name cnn_dailymail \\
    --dataset_config <span class="hljs-string">&quot;3.0.0&quot;</span> \\
    --source_prefix <span class="hljs-string">&quot;summarize: &quot;</span> \\
    --push_to_hub \\
    --push_to_hub_model_id finetuned-t5-cnn_dailymail \\
    --output_dir /tmp/tst-summarization \\
    --per_device_train_batch_size=4 \\
    --per_device_eval_batch_size=4 \\
    --overwrite_output_dir \\
    --predict_with_generate`}}),{c(){d=r("meta"),$=p(),f=r("h1"),v=r("a"),A=r("span"),w(y.$$.fragment),N=p(),O=r("span"),T=i("Entrenamiento con scripts"),S=p(),k=r("p"),b=i("Junto con los "),U=r("a"),H=i("notebooks"),I=i(" de \u{1F917} Transformers, tambi\xE9n hay scripts con ejemplos que muestran c\xF3mo entrenar un modelo para una tarea en "),L=r("a"),M=i("PyTorch"),E=i(", "),g=r("a"),G=i("TensorFlow"),D=i(", o "),C=r("a"),X=i("JAX/Flax"),Et=i("."),De=p(),J=r("p"),bt=i("Tambi\xE9n encontrar\xE1s scripts que hemos usado en nuestros "),Se=r("a"),is=i("proyectos de investigaci\xF3n"),ns=i(" y "),Ie=r("a"),ls=i("ejemplos pasados"),us=i(" que en su mayor\xEDa son aportados por la comunidad. Estos scripts no se mantienen activamente y requieren una versi\xF3n espec\xEDfica de \u{1F917} Transformers que probablemente sea incompatible con la \xFAltima versi\xF3n de la biblioteca."),Sr=p(),yt=r("p"),cs=i("No se espera que los scripts de ejemplo funcionen de inmediato en todos los problemas, y es posible que debas adaptar el script al problema que est\xE1s tratando de resolver. Para ayudarte con esto, la mayor\xEDa de los scripts exponen completamente c\xF3mo se preprocesan los datos, lo que te permite editarlos seg\xFAn sea necesario para tu caso de uso."),Ir=p(),V=r("p"),ps=i("Para cualquier caracter\xEDstica que te gustar\xEDa implementar en un script de ejemplo, por favor disc\xFAtelo en el "),Ne=r("a"),ms=i("foro"),ds=i(" o con un "),Oe=r("a"),fs=i("issue"),_s=i(" antes de enviar un Pull Request. Si bien agradecemos las correcciones de errores, es poco probable que fusionemos un Pull Request que agregue m\xE1s funcionalidad a costa de la legibilidad."),Nr=p(),Q=r("p"),hs=i("Esta gu\xEDa te mostrar\xE1 c\xF3mo ejecutar un ejemplo de un script de entrenamiento para resumir texto en "),Fe=r("a"),vs=i("PyTorch"),gs=i(" y "),He=r("a"),$s=i("TensorFlow"),Es=i(". Se espera que todos los ejemplos funcionen con ambos frameworks a menos que se especifique lo contrario."),Or=p(),re=r("h2"),me=r("a"),_a=r("span"),w(Me.$$.fragment),bs=p(),ha=r("span"),ys=i("Configuraci\xF3n"),Fr=p(),de=r("p"),ws=i("Para ejecutar con \xE9xito la \xFAltima versi\xF3n de los scripts de ejemplo debes "),va=r("strong"),zs=i("instalar \u{1F917} Transformers desde su fuente"),xs=i(" en un nuevo entorno virtual:"),Hr=p(),w(Re.$$.fragment),Mr=p(),wt=r("p"),js=i("Para versiones anteriores de los scripts de ejemplo, haz clic en alguno de los siguientes links:"),Rr=p(),fe=r("details"),ga=r("summary"),qs=i("Ejemplos de versiones anteriores de \u{1F917} Transformers"),Ps=p(),_=r("ul"),$a=r("li"),zt=r("a"),As=i("v4.5.1"),ks=p(),Ea=r("li"),xt=r("a"),Ts=i("v4.4.2"),Ls=p(),ba=r("li"),jt=r("a"),Cs=i("v4.3.3"),Us=p(),ya=r("li"),qt=r("a"),Ds=i("v4.2.2"),Ss=p(),wa=r("li"),Pt=r("a"),Is=i("v4.1.1"),Ns=p(),za=r("li"),At=r("a"),Os=i("v4.0.1"),Fs=p(),xa=r("li"),kt=r("a"),Hs=i("v3.5.1"),Ms=p(),ja=r("li"),Tt=r("a"),Rs=i("v3.4.0"),Gs=p(),qa=r("li"),Lt=r("a"),Js=i("v3.3.1"),Xs=p(),Pa=r("li"),Ct=r("a"),Bs=i("v3.2.0"),Ks=p(),Aa=r("li"),Ut=r("a"),Vs=i("v3.1.0"),Qs=p(),ka=r("li"),Dt=r("a"),Ys=i("v3.0.2"),Ws=p(),Ta=r("li"),St=r("a"),Zs=i("v2.11.0"),ei=p(),La=r("li"),It=r("a"),ti=i("v2.10.0"),ai=p(),Ca=r("li"),Nt=r("a"),ri=i("v2.9.1"),oi=p(),Ua=r("li"),Ot=r("a"),si=i("v2.8.0"),ii=p(),Da=r("li"),Ft=r("a"),ni=i("v2.7.0"),li=p(),Sa=r("li"),Ht=r("a"),ui=i("v2.6.0"),ci=p(),Ia=r("li"),Mt=r("a"),pi=i("v2.5.1"),mi=p(),Na=r("li"),Rt=r("a"),di=i("v2.4.0"),fi=p(),Oa=r("li"),Gt=r("a"),_i=i("v2.3.0"),hi=p(),Fa=r("li"),Jt=r("a"),vi=i("v2.2.0"),gi=p(),Ha=r("li"),Xt=r("a"),$i=i("v2.1.1"),Ei=p(),Ma=r("li"),Bt=r("a"),bi=i("v2.0.0"),yi=p(),Ra=r("li"),Kt=r("a"),wi=i("v1.2.0"),zi=p(),Ga=r("li"),Vt=r("a"),xi=i("v1.1.0"),ji=p(),Ja=r("li"),Qt=r("a"),qi=i("v1.0.0"),Gr=p(),Yt=r("p"),Pi=i("Luego cambia tu clon actual de \u{1F917} Transformers a una versi\xF3n espec\xEDfica, por ejemplo v3.5.1:"),Jr=p(),w(Ge.$$.fragment),Xr=p(),Wt=r("p"),Ai=i("Una vez que hayas configurado la versi\xF3n correcta de la biblioteca, ve a la carpeta de ejemplo de tu elecci\xF3n e instala los requisitos espec\xEDficos del ejemplo:"),Br=p(),w(Je.$$.fragment),Kr=p(),oe=r("h2"),_e=r("a"),Xa=r("span"),w(Xe.$$.fragment),ki=p(),Ba=r("span"),Ti=i("Ejecutar un script"),Vr=p(),w(he.$$.fragment),Qr=p(),se=r("h2"),ve=r("a"),Ka=r("span"),w(Be.$$.fragment),Li=p(),Va=r("span"),Ci=i("Entrenamiento distribuido y de precisi\xF3n mixta"),Yr=p(),Ke=r("p"),Ve=r("a"),Ui=i("Trainer"),Di=i(" admite un entrenamiento distribuido y de precisi\xF3n mixta, lo que significa que tambi\xE9n puedes usarlo en un script. Para habilitar ambas caracter\xEDsticas:"),Wr=p(),ge=r("ul"),Qe=r("li"),Si=i("Agrega el argumento "),Qa=r("code"),Ii=i("fp16"),Ni=i(" para habilitar la precisi\xF3n mixta."),Oi=p(),Ye=r("li"),Fi=i("Establece la cantidad de GPU que se usar\xE1 con el argumento "),Ya=r("code"),Hi=i("nproc_per_node"),Mi=i("."),Zr=p(),w(We.$$.fragment),eo=p(),$e=r("p"),Ri=i("Los scripts de TensorFlow utilizan "),Ze=r("a"),Wa=r("code"),Gi=i("MirroredStrategy"),Ji=i(" para el entrenamiento distribuido, y no es necesario agregar argumentos adicionales al script de entrenamiento. El script de TensorFlow utilizar\xE1 m\xFAltiples GPUs de forma predeterminada si est\xE1n disponibles."),to=p(),ie=r("h2"),Ee=r("a"),Za=r("span"),w(et.$$.fragment),Xi=p(),er=r("span"),Bi=i("Ejecutar un script en una TPU"),ao=p(),w(be.$$.fragment),ro=p(),ne=r("h2"),ye=r("a"),tr=r("span"),w(tt.$$.fragment),Ki=p(),ar=r("span"),Vi=i("Ejecutar un script con \u{1F917} Accelerate"),oo=p(),we=r("p"),Qi=i("\u{1F917} "),at=r("a"),Yi=i("Accelerate"),Wi=i(" es una biblioteca exclusiva de PyTorch que ofrece un m\xE9todo unificado para entrenar un modelo en varios tipos de configuraciones (solo CPU, GPU m\xFAltiples, TPU) mientras mantiene una visibilidad completa en el ciclo de entrenamiento de PyTorch. Aseg\xFArate de tener \u{1F917} Accelerate instalado si a\xFAn no lo tienes:"),so=p(),ze=r("blockquote"),rr=r("p"),Zi=i("Nota: Como Accelerate se est\xE1 desarrollando r\xE1pidamente, debes instalar la versi\xF3n git de Accelerate para ejecutar los scripts"),en=p(),w(rt.$$.fragment),io=p(),B=r("p"),tn=i("En lugar del script "),or=r("code"),an=i("run_summarization.py"),rn=i(", debes usar el script "),sr=r("code"),on=i("run_summarization_no_trainer.py"),sn=i(". Los scripts compatibles con \u{1F917} Accelerate tendr\xE1n un archivo "),ir=r("code"),nn=i("task_no_trainer.py"),ln=i(" en la carpeta. Comienza ejecutando el siguiente comando para crear y guardar un archivo de configuraci\xF3n:"),no=p(),w(ot.$$.fragment),lo=p(),Zt=r("p"),un=i("Prueba tu configuraci\xF3n para asegurarte que est\xE1 configurada correctamente:"),uo=p(),w(st.$$.fragment),co=p(),ea=r("p"),cn=i("Todo listo para iniciar el entrenamiento:"),po=p(),w(it.$$.fragment),mo=p(),le=r("h2"),xe=r("a"),nr=r("span"),w(nt.$$.fragment),pn=p(),lr=r("span"),mn=i("Usar un conjunto de datos personalizado"),fo=p(),ta=r("p"),dn=i("El script de la tarea resumir admite conjuntos de datos personalizados siempre que sean un archivo CSV o JSON Line. Cuando uses tu propio conjunto de datos, necesitas especificar varios argumentos adicionales:"),_o=p(),Y=r("ul"),je=r("li"),ur=r("code"),fn=i("train_file"),_n=i(" y "),cr=r("code"),hn=i("validation_file"),vn=i(" especifican la ruta a tus archivos de entrenamiento y validaci\xF3n."),gn=p(),aa=r("li"),pr=r("code"),$n=i("text_column"),En=i(" es el texto de entrada para resumir."),bn=p(),ra=r("li"),mr=r("code"),yn=i("summary_column"),wn=i(" es el texto de destino para la salida."),ho=p(),oa=r("p"),zn=i("Un script para resumir que utiliza un conjunto de datos personalizado se vera as\xED:"),vo=p(),w(lt.$$.fragment),go=p(),ue=r("h2"),qe=r("a"),dr=r("span"),w(ut.$$.fragment),xn=p(),fr=r("span"),jn=i("Prueba un script"),$o=p(),sa=r("p"),qn=i("A veces, es una buena idea ejecutar tu secuencia de comandos en una cantidad menor de ejemplos para asegurarte de que todo funciona como se espera antes de comprometerte con un conjunto de datos completo, lo que puede demorar horas en completarse. Utiliza los siguientes argumentos para truncar el conjunto de datos a un n\xFAmero m\xE1ximo de muestras:"),Eo=p(),W=r("ul"),_r=r("li"),hr=r("code"),Pn=i("max_train_samples"),An=p(),vr=r("li"),gr=r("code"),kn=i("max_eval_samples"),Tn=p(),$r=r("li"),Er=r("code"),Ln=i("max_predict_samples"),bo=p(),w(ct.$$.fragment),yo=p(),Z=r("p"),Cn=i("No todos los scripts de ejemplo admiten el argumento "),br=r("code"),Un=i("max_predict_samples"),Dn=i(". Puede que desconozcas si la secuencia de comandos admite este argumento, agrega "),yr=r("code"),Sn=i("-h"),In=i(" para verificar:"),wo=p(),w(pt.$$.fragment),zo=p(),ce=r("h2"),Pe=r("a"),wr=r("span"),w(mt.$$.fragment),Nn=p(),zr=r("span"),On=i("Reanudar el entrenamiento desde el punto de control"),xo=p(),ia=r("p"),Fn=i("Otra opci\xF3n \xFAtil para habilitar es reanudar el entrenamiento desde un punto de control anterior. Esto asegurar\xE1 que puedas continuar donde lo dejaste sin comenzar de nuevo si tu entrenamiento se interrumpe. Hay dos m\xE9todos para reanudar el entrenamiento desde un punto de control."),jo=p(),K=r("p"),Hn=i("El primer m\xE9todo utiliza el argumento "),xr=r("code"),Mn=i("output_dir previous_output_dir"),Rn=i(" para reanudar el entrenamiento desde el \xFAltimo punto de control almacenado en "),jr=r("code"),Gn=i("output_dir"),Jn=i(". En este caso, debes eliminar "),qr=r("code"),Xn=i("overwrite_output_dir"),Bn=i(":"),qo=p(),w(dt.$$.fragment),Po=p(),Ae=r("p"),Kn=i("El segundo m\xE9todo utiliza el argumento "),Pr=r("code"),Vn=i("resume_from_checkpoint path_to_specific_checkpoint"),Qn=i(" para reanudar el entrenamiento desde una carpeta de punto de control espec\xEDfica."),Ao=p(),w(ft.$$.fragment),ko=p(),pe=r("h2"),ke=r("a"),Ar=r("span"),w(_t.$$.fragment),Yn=p(),kr=r("span"),Wn=i("Comparte tu modelo"),To=p(),Te=r("p"),Zn=i("Todos los scripts pueden cargar tu modelo final en el "),ht=r("a"),el=i("Model Hub"),tl=i(". Aseg\xFArate de haber iniciado sesi\xF3n en Hugging Face antes de comenzar:"),Lo=p(),w(vt.$$.fragment),Co=p(),ee=r("p"),al=i("Luego agrega el argumento "),Tr=r("code"),rl=i("push_to_hub"),ol=i(" al script. Este argumento crear\xE1 un repositorio con tu nombre de usuario Hugging Face y el nombre de la carpeta especificado en "),Lr=r("code"),sl=i("output_dir"),il=i("."),Uo=p(),Le=r("p"),nl=i("Para darle a tu repositorio un nombre espec\xEDfico, usa el argumento "),Cr=r("code"),ll=i("push_to_hub_model_id"),ul=i(" para a\xF1adirlo. El repositorio se incluir\xE1 autom\xE1ticamente en tu namespace."),Do=p(),na=r("p"),cl=i("El siguiente ejemplo muestra c\xF3mo cargar un modelo con un nombre de repositorio espec\xEDfico:"),So=p(),w(gt.$$.fragment),this.h()},l(e){const l=Xc('[data-svelte="svelte-1phssyn"]',document.head);d=o(l,"META",{name:!0,content:!0}),l.forEach(a),$=m(e),f=o(e,"H1",{class:!0});var $t=s(f);v=o($t,"A",{id:!0,class:!0,href:!0});var Ur=s(v);A=o(Ur,"SPAN",{});var fl=s(A);z(y.$$.fragment,fl),fl.forEach(a),Ur.forEach(a),N=m($t),O=o($t,"SPAN",{});var _l=s(O);T=n(_l,"Entrenamiento con scripts"),_l.forEach(a),$t.forEach(a),S=m(e),k=o(e,"P",{});var te=s(k);b=n(te,"Junto con los "),U=o(te,"A",{href:!0});var hl=s(U);H=n(hl,"notebooks"),hl.forEach(a),I=n(te," de \u{1F917} Transformers, tambi\xE9n hay scripts con ejemplos que muestran c\xF3mo entrenar un modelo para una tarea en "),L=o(te,"A",{href:!0,rel:!0});var vl=s(L);M=n(vl,"PyTorch"),vl.forEach(a),E=n(te,", "),g=o(te,"A",{href:!0,rel:!0});var gl=s(g);G=n(gl,"TensorFlow"),gl.forEach(a),D=n(te,", o "),C=o(te,"A",{href:!0,rel:!0});var $l=s(C);X=n($l,"JAX/Flax"),$l.forEach(a),Et=n(te,"."),te.forEach(a),De=m(e),J=o(e,"P",{});var la=s(J);bt=n(la,"Tambi\xE9n encontrar\xE1s scripts que hemos usado en nuestros "),Se=o(la,"A",{href:!0,rel:!0});var El=s(Se);is=n(El,"proyectos de investigaci\xF3n"),El.forEach(a),ns=n(la," y "),Ie=o(la,"A",{href:!0,rel:!0});var bl=s(Ie);ls=n(bl,"ejemplos pasados"),bl.forEach(a),us=n(la," que en su mayor\xEDa son aportados por la comunidad. Estos scripts no se mantienen activamente y requieren una versi\xF3n espec\xEDfica de \u{1F917} Transformers que probablemente sea incompatible con la \xFAltima versi\xF3n de la biblioteca."),la.forEach(a),Sr=m(e),yt=o(e,"P",{});var yl=s(yt);cs=n(yl,"No se espera que los scripts de ejemplo funcionen de inmediato en todos los problemas, y es posible que debas adaptar el script al problema que est\xE1s tratando de resolver. Para ayudarte con esto, la mayor\xEDa de los scripts exponen completamente c\xF3mo se preprocesan los datos, lo que te permite editarlos seg\xFAn sea necesario para tu caso de uso."),yl.forEach(a),Ir=m(e),V=o(e,"P",{});var ua=s(V);ps=n(ua,"Para cualquier caracter\xEDstica que te gustar\xEDa implementar en un script de ejemplo, por favor disc\xFAtelo en el "),Ne=o(ua,"A",{href:!0,rel:!0});var wl=s(Ne);ms=n(wl,"foro"),wl.forEach(a),ds=n(ua," o con un "),Oe=o(ua,"A",{href:!0,rel:!0});var zl=s(Oe);fs=n(zl,"issue"),zl.forEach(a),_s=n(ua," antes de enviar un Pull Request. Si bien agradecemos las correcciones de errores, es poco probable que fusionemos un Pull Request que agregue m\xE1s funcionalidad a costa de la legibilidad."),ua.forEach(a),Nr=m(e),Q=o(e,"P",{});var ca=s(Q);hs=n(ca,"Esta gu\xEDa te mostrar\xE1 c\xF3mo ejecutar un ejemplo de un script de entrenamiento para resumir texto en "),Fe=o(ca,"A",{href:!0,rel:!0});var xl=s(Fe);vs=n(xl,"PyTorch"),xl.forEach(a),gs=n(ca," y "),He=o(ca,"A",{href:!0,rel:!0});var jl=s(He);$s=n(jl,"TensorFlow"),jl.forEach(a),Es=n(ca,". Se espera que todos los ejemplos funcionen con ambos frameworks a menos que se especifique lo contrario."),ca.forEach(a),Or=m(e),re=o(e,"H2",{class:!0});var No=s(re);me=o(No,"A",{id:!0,class:!0,href:!0});var ql=s(me);_a=o(ql,"SPAN",{});var Pl=s(_a);z(Me.$$.fragment,Pl),Pl.forEach(a),ql.forEach(a),bs=m(No),ha=o(No,"SPAN",{});var Al=s(ha);ys=n(Al,"Configuraci\xF3n"),Al.forEach(a),No.forEach(a),Fr=m(e),de=o(e,"P",{});var Oo=s(de);ws=n(Oo,"Para ejecutar con \xE9xito la \xFAltima versi\xF3n de los scripts de ejemplo debes "),va=o(Oo,"STRONG",{});var kl=s(va);zs=n(kl,"instalar \u{1F917} Transformers desde su fuente"),kl.forEach(a),xs=n(Oo," en un nuevo entorno virtual:"),Oo.forEach(a),Hr=m(e),z(Re.$$.fragment,e),Mr=m(e),wt=o(e,"P",{});var Tl=s(wt);js=n(Tl,"Para versiones anteriores de los scripts de ejemplo, haz clic en alguno de los siguientes links:"),Tl.forEach(a),Rr=m(e),fe=o(e,"DETAILS",{});var Fo=s(fe);ga=o(Fo,"SUMMARY",{});var Ll=s(ga);qs=n(Ll,"Ejemplos de versiones anteriores de \u{1F917} Transformers"),Ll.forEach(a),Ps=m(Fo),_=o(Fo,"UL",{});var h=s(_);$a=o(h,"LI",{});var Cl=s($a);zt=o(Cl,"A",{href:!0});var Ul=s(zt);As=n(Ul,"v4.5.1"),Ul.forEach(a),Cl.forEach(a),ks=m(h),Ea=o(h,"LI",{});var Dl=s(Ea);xt=o(Dl,"A",{href:!0});var Sl=s(xt);Ts=n(Sl,"v4.4.2"),Sl.forEach(a),Dl.forEach(a),Ls=m(h),ba=o(h,"LI",{});var Il=s(ba);jt=o(Il,"A",{href:!0});var Nl=s(jt);Cs=n(Nl,"v4.3.3"),Nl.forEach(a),Il.forEach(a),Us=m(h),ya=o(h,"LI",{});var Ol=s(ya);qt=o(Ol,"A",{href:!0});var Fl=s(qt);Ds=n(Fl,"v4.2.2"),Fl.forEach(a),Ol.forEach(a),Ss=m(h),wa=o(h,"LI",{});var Hl=s(wa);Pt=o(Hl,"A",{href:!0});var Ml=s(Pt);Is=n(Ml,"v4.1.1"),Ml.forEach(a),Hl.forEach(a),Ns=m(h),za=o(h,"LI",{});var Rl=s(za);At=o(Rl,"A",{href:!0});var Gl=s(At);Os=n(Gl,"v4.0.1"),Gl.forEach(a),Rl.forEach(a),Fs=m(h),xa=o(h,"LI",{});var Jl=s(xa);kt=o(Jl,"A",{href:!0});var Xl=s(kt);Hs=n(Xl,"v3.5.1"),Xl.forEach(a),Jl.forEach(a),Ms=m(h),ja=o(h,"LI",{});var Bl=s(ja);Tt=o(Bl,"A",{href:!0});var Kl=s(Tt);Rs=n(Kl,"v3.4.0"),Kl.forEach(a),Bl.forEach(a),Gs=m(h),qa=o(h,"LI",{});var Vl=s(qa);Lt=o(Vl,"A",{href:!0});var Ql=s(Lt);Js=n(Ql,"v3.3.1"),Ql.forEach(a),Vl.forEach(a),Xs=m(h),Pa=o(h,"LI",{});var Yl=s(Pa);Ct=o(Yl,"A",{href:!0});var Wl=s(Ct);Bs=n(Wl,"v3.2.0"),Wl.forEach(a),Yl.forEach(a),Ks=m(h),Aa=o(h,"LI",{});var Zl=s(Aa);Ut=o(Zl,"A",{href:!0});var eu=s(Ut);Vs=n(eu,"v3.1.0"),eu.forEach(a),Zl.forEach(a),Qs=m(h),ka=o(h,"LI",{});var tu=s(ka);Dt=o(tu,"A",{href:!0});var au=s(Dt);Ys=n(au,"v3.0.2"),au.forEach(a),tu.forEach(a),Ws=m(h),Ta=o(h,"LI",{});var ru=s(Ta);St=o(ru,"A",{href:!0});var ou=s(St);Zs=n(ou,"v2.11.0"),ou.forEach(a),ru.forEach(a),ei=m(h),La=o(h,"LI",{});var su=s(La);It=o(su,"A",{href:!0});var iu=s(It);ti=n(iu,"v2.10.0"),iu.forEach(a),su.forEach(a),ai=m(h),Ca=o(h,"LI",{});var nu=s(Ca);Nt=o(nu,"A",{href:!0});var lu=s(Nt);ri=n(lu,"v2.9.1"),lu.forEach(a),nu.forEach(a),oi=m(h),Ua=o(h,"LI",{});var uu=s(Ua);Ot=o(uu,"A",{href:!0});var cu=s(Ot);si=n(cu,"v2.8.0"),cu.forEach(a),uu.forEach(a),ii=m(h),Da=o(h,"LI",{});var pu=s(Da);Ft=o(pu,"A",{href:!0});var mu=s(Ft);ni=n(mu,"v2.7.0"),mu.forEach(a),pu.forEach(a),li=m(h),Sa=o(h,"LI",{});var du=s(Sa);Ht=o(du,"A",{href:!0});var fu=s(Ht);ui=n(fu,"v2.6.0"),fu.forEach(a),du.forEach(a),ci=m(h),Ia=o(h,"LI",{});var _u=s(Ia);Mt=o(_u,"A",{href:!0});var hu=s(Mt);pi=n(hu,"v2.5.1"),hu.forEach(a),_u.forEach(a),mi=m(h),Na=o(h,"LI",{});var vu=s(Na);Rt=o(vu,"A",{href:!0});var gu=s(Rt);di=n(gu,"v2.4.0"),gu.forEach(a),vu.forEach(a),fi=m(h),Oa=o(h,"LI",{});var $u=s(Oa);Gt=o($u,"A",{href:!0});var Eu=s(Gt);_i=n(Eu,"v2.3.0"),Eu.forEach(a),$u.forEach(a),hi=m(h),Fa=o(h,"LI",{});var bu=s(Fa);Jt=o(bu,"A",{href:!0});var yu=s(Jt);vi=n(yu,"v2.2.0"),yu.forEach(a),bu.forEach(a),gi=m(h),Ha=o(h,"LI",{});var wu=s(Ha);Xt=o(wu,"A",{href:!0});var zu=s(Xt);$i=n(zu,"v2.1.1"),zu.forEach(a),wu.forEach(a),Ei=m(h),Ma=o(h,"LI",{});var xu=s(Ma);Bt=o(xu,"A",{href:!0});var ju=s(Bt);bi=n(ju,"v2.0.0"),ju.forEach(a),xu.forEach(a),yi=m(h),Ra=o(h,"LI",{});var qu=s(Ra);Kt=o(qu,"A",{href:!0});var Pu=s(Kt);wi=n(Pu,"v1.2.0"),Pu.forEach(a),qu.forEach(a),zi=m(h),Ga=o(h,"LI",{});var Au=s(Ga);Vt=o(Au,"A",{href:!0});var ku=s(Vt);xi=n(ku,"v1.1.0"),ku.forEach(a),Au.forEach(a),ji=m(h),Ja=o(h,"LI",{});var Tu=s(Ja);Qt=o(Tu,"A",{href:!0});var Lu=s(Qt);qi=n(Lu,"v1.0.0"),Lu.forEach(a),Tu.forEach(a),h.forEach(a),Fo.forEach(a),Gr=m(e),Yt=o(e,"P",{});var Cu=s(Yt);Pi=n(Cu,"Luego cambia tu clon actual de \u{1F917} Transformers a una versi\xF3n espec\xEDfica, por ejemplo v3.5.1:"),Cu.forEach(a),Jr=m(e),z(Ge.$$.fragment,e),Xr=m(e),Wt=o(e,"P",{});var Uu=s(Wt);Ai=n(Uu,"Una vez que hayas configurado la versi\xF3n correcta de la biblioteca, ve a la carpeta de ejemplo de tu elecci\xF3n e instala los requisitos espec\xEDficos del ejemplo:"),Uu.forEach(a),Br=m(e),z(Je.$$.fragment,e),Kr=m(e),oe=o(e,"H2",{class:!0});var Ho=s(oe);_e=o(Ho,"A",{id:!0,class:!0,href:!0});var Du=s(_e);Xa=o(Du,"SPAN",{});var Su=s(Xa);z(Xe.$$.fragment,Su),Su.forEach(a),Du.forEach(a),ki=m(Ho),Ba=o(Ho,"SPAN",{});var Iu=s(Ba);Ti=n(Iu,"Ejecutar un script"),Iu.forEach(a),Ho.forEach(a),Vr=m(e),z(he.$$.fragment,e),Qr=m(e),se=o(e,"H2",{class:!0});var Mo=s(se);ve=o(Mo,"A",{id:!0,class:!0,href:!0});var Nu=s(ve);Ka=o(Nu,"SPAN",{});var Ou=s(Ka);z(Be.$$.fragment,Ou),Ou.forEach(a),Nu.forEach(a),Li=m(Mo),Va=o(Mo,"SPAN",{});var Fu=s(Va);Ci=n(Fu,"Entrenamiento distribuido y de precisi\xF3n mixta"),Fu.forEach(a),Mo.forEach(a),Yr=m(e),Ke=o(e,"P",{});var pl=s(Ke);Ve=o(pl,"A",{href:!0,rel:!0});var Hu=s(Ve);Ui=n(Hu,"Trainer"),Hu.forEach(a),Di=n(pl," admite un entrenamiento distribuido y de precisi\xF3n mixta, lo que significa que tambi\xE9n puedes usarlo en un script. Para habilitar ambas caracter\xEDsticas:"),pl.forEach(a),Wr=m(e),ge=o(e,"UL",{});var Ro=s(ge);Qe=o(Ro,"LI",{});var Go=s(Qe);Si=n(Go,"Agrega el argumento "),Qa=o(Go,"CODE",{});var Mu=s(Qa);Ii=n(Mu,"fp16"),Mu.forEach(a),Ni=n(Go," para habilitar la precisi\xF3n mixta."),Go.forEach(a),Oi=m(Ro),Ye=o(Ro,"LI",{});var Jo=s(Ye);Fi=n(Jo,"Establece la cantidad de GPU que se usar\xE1 con el argumento "),Ya=o(Jo,"CODE",{});var Ru=s(Ya);Hi=n(Ru,"nproc_per_node"),Ru.forEach(a),Mi=n(Jo,"."),Jo.forEach(a),Ro.forEach(a),Zr=m(e),z(We.$$.fragment,e),eo=m(e),$e=o(e,"P",{});var Xo=s($e);Ri=n(Xo,"Los scripts de TensorFlow utilizan "),Ze=o(Xo,"A",{href:!0,rel:!0});var Gu=s(Ze);Wa=o(Gu,"CODE",{});var Ju=s(Wa);Gi=n(Ju,"MirroredStrategy"),Ju.forEach(a),Gu.forEach(a),Ji=n(Xo," para el entrenamiento distribuido, y no es necesario agregar argumentos adicionales al script de entrenamiento. El script de TensorFlow utilizar\xE1 m\xFAltiples GPUs de forma predeterminada si est\xE1n disponibles."),Xo.forEach(a),to=m(e),ie=o(e,"H2",{class:!0});var Bo=s(ie);Ee=o(Bo,"A",{id:!0,class:!0,href:!0});var Xu=s(Ee);Za=o(Xu,"SPAN",{});var Bu=s(Za);z(et.$$.fragment,Bu),Bu.forEach(a),Xu.forEach(a),Xi=m(Bo),er=o(Bo,"SPAN",{});var Ku=s(er);Bi=n(Ku,"Ejecutar un script en una TPU"),Ku.forEach(a),Bo.forEach(a),ao=m(e),z(be.$$.fragment,e),ro=m(e),ne=o(e,"H2",{class:!0});var Ko=s(ne);ye=o(Ko,"A",{id:!0,class:!0,href:!0});var Vu=s(ye);tr=o(Vu,"SPAN",{});var Qu=s(tr);z(tt.$$.fragment,Qu),Qu.forEach(a),Vu.forEach(a),Ki=m(Ko),ar=o(Ko,"SPAN",{});var Yu=s(ar);Vi=n(Yu,"Ejecutar un script con \u{1F917} Accelerate"),Yu.forEach(a),Ko.forEach(a),oo=m(e),we=o(e,"P",{});var Vo=s(we);Qi=n(Vo,"\u{1F917} "),at=o(Vo,"A",{href:!0,rel:!0});var Wu=s(at);Yi=n(Wu,"Accelerate"),Wu.forEach(a),Wi=n(Vo," es una biblioteca exclusiva de PyTorch que ofrece un m\xE9todo unificado para entrenar un modelo en varios tipos de configuraciones (solo CPU, GPU m\xFAltiples, TPU) mientras mantiene una visibilidad completa en el ciclo de entrenamiento de PyTorch. Aseg\xFArate de tener \u{1F917} Accelerate instalado si a\xFAn no lo tienes:"),Vo.forEach(a),so=m(e),ze=o(e,"BLOCKQUOTE",{});var Qo=s(ze);rr=o(Qo,"P",{});var Zu=s(rr);Zi=n(Zu,"Nota: Como Accelerate se est\xE1 desarrollando r\xE1pidamente, debes instalar la versi\xF3n git de Accelerate para ejecutar los scripts"),Zu.forEach(a),en=m(Qo),z(rt.$$.fragment,Qo),Qo.forEach(a),io=m(e),B=o(e,"P",{});var Ce=s(B);tn=n(Ce,"En lugar del script "),or=o(Ce,"CODE",{});var ec=s(or);an=n(ec,"run_summarization.py"),ec.forEach(a),rn=n(Ce,", debes usar el script "),sr=o(Ce,"CODE",{});var tc=s(sr);on=n(tc,"run_summarization_no_trainer.py"),tc.forEach(a),sn=n(Ce,". Los scripts compatibles con \u{1F917} Accelerate tendr\xE1n un archivo "),ir=o(Ce,"CODE",{});var ac=s(ir);nn=n(ac,"task_no_trainer.py"),ac.forEach(a),ln=n(Ce," en la carpeta. Comienza ejecutando el siguiente comando para crear y guardar un archivo de configuraci\xF3n:"),Ce.forEach(a),no=m(e),z(ot.$$.fragment,e),lo=m(e),Zt=o(e,"P",{});var rc=s(Zt);un=n(rc,"Prueba tu configuraci\xF3n para asegurarte que est\xE1 configurada correctamente:"),rc.forEach(a),uo=m(e),z(st.$$.fragment,e),co=m(e),ea=o(e,"P",{});var oc=s(ea);cn=n(oc,"Todo listo para iniciar el entrenamiento:"),oc.forEach(a),po=m(e),z(it.$$.fragment,e),mo=m(e),le=o(e,"H2",{class:!0});var Yo=s(le);xe=o(Yo,"A",{id:!0,class:!0,href:!0});var sc=s(xe);nr=o(sc,"SPAN",{});var ic=s(nr);z(nt.$$.fragment,ic),ic.forEach(a),sc.forEach(a),pn=m(Yo),lr=o(Yo,"SPAN",{});var nc=s(lr);mn=n(nc,"Usar un conjunto de datos personalizado"),nc.forEach(a),Yo.forEach(a),fo=m(e),ta=o(e,"P",{});var lc=s(ta);dn=n(lc,"El script de la tarea resumir admite conjuntos de datos personalizados siempre que sean un archivo CSV o JSON Line. Cuando uses tu propio conjunto de datos, necesitas especificar varios argumentos adicionales:"),lc.forEach(a),_o=m(e),Y=o(e,"UL",{});var pa=s(Y);je=o(pa,"LI",{});var Dr=s(je);ur=o(Dr,"CODE",{});var uc=s(ur);fn=n(uc,"train_file"),uc.forEach(a),_n=n(Dr," y "),cr=o(Dr,"CODE",{});var cc=s(cr);hn=n(cc,"validation_file"),cc.forEach(a),vn=n(Dr," especifican la ruta a tus archivos de entrenamiento y validaci\xF3n."),Dr.forEach(a),gn=m(pa),aa=o(pa,"LI",{});var ml=s(aa);pr=o(ml,"CODE",{});var pc=s(pr);$n=n(pc,"text_column"),pc.forEach(a),En=n(ml," es el texto de entrada para resumir."),ml.forEach(a),bn=m(pa),ra=o(pa,"LI",{});var dl=s(ra);mr=o(dl,"CODE",{});var mc=s(mr);yn=n(mc,"summary_column"),mc.forEach(a),wn=n(dl," es el texto de destino para la salida."),dl.forEach(a),pa.forEach(a),ho=m(e),oa=o(e,"P",{});var dc=s(oa);zn=n(dc,"Un script para resumir que utiliza un conjunto de datos personalizado se vera as\xED:"),dc.forEach(a),vo=m(e),z(lt.$$.fragment,e),go=m(e),ue=o(e,"H2",{class:!0});var Wo=s(ue);qe=o(Wo,"A",{id:!0,class:!0,href:!0});var fc=s(qe);dr=o(fc,"SPAN",{});var _c=s(dr);z(ut.$$.fragment,_c),_c.forEach(a),fc.forEach(a),xn=m(Wo),fr=o(Wo,"SPAN",{});var hc=s(fr);jn=n(hc,"Prueba un script"),hc.forEach(a),Wo.forEach(a),$o=m(e),sa=o(e,"P",{});var vc=s(sa);qn=n(vc,"A veces, es una buena idea ejecutar tu secuencia de comandos en una cantidad menor de ejemplos para asegurarte de que todo funciona como se espera antes de comprometerte con un conjunto de datos completo, lo que puede demorar horas en completarse. Utiliza los siguientes argumentos para truncar el conjunto de datos a un n\xFAmero m\xE1ximo de muestras:"),vc.forEach(a),Eo=m(e),W=o(e,"UL",{});var ma=s(W);_r=o(ma,"LI",{});var gc=s(_r);hr=o(gc,"CODE",{});var $c=s(hr);Pn=n($c,"max_train_samples"),$c.forEach(a),gc.forEach(a),An=m(ma),vr=o(ma,"LI",{});var Ec=s(vr);gr=o(Ec,"CODE",{});var bc=s(gr);kn=n(bc,"max_eval_samples"),bc.forEach(a),Ec.forEach(a),Tn=m(ma),$r=o(ma,"LI",{});var yc=s($r);Er=o(yc,"CODE",{});var wc=s(Er);Ln=n(wc,"max_predict_samples"),wc.forEach(a),yc.forEach(a),ma.forEach(a),bo=m(e),z(ct.$$.fragment,e),yo=m(e),Z=o(e,"P",{});var da=s(Z);Cn=n(da,"No todos los scripts de ejemplo admiten el argumento "),br=o(da,"CODE",{});var zc=s(br);Un=n(zc,"max_predict_samples"),zc.forEach(a),Dn=n(da,". Puede que desconozcas si la secuencia de comandos admite este argumento, agrega "),yr=o(da,"CODE",{});var xc=s(yr);Sn=n(xc,"-h"),xc.forEach(a),In=n(da," para verificar:"),da.forEach(a),wo=m(e),z(pt.$$.fragment,e),zo=m(e),ce=o(e,"H2",{class:!0});var Zo=s(ce);Pe=o(Zo,"A",{id:!0,class:!0,href:!0});var jc=s(Pe);wr=o(jc,"SPAN",{});var qc=s(wr);z(mt.$$.fragment,qc),qc.forEach(a),jc.forEach(a),Nn=m(Zo),zr=o(Zo,"SPAN",{});var Pc=s(zr);On=n(Pc,"Reanudar el entrenamiento desde el punto de control"),Pc.forEach(a),Zo.forEach(a),xo=m(e),ia=o(e,"P",{});var Ac=s(ia);Fn=n(Ac,"Otra opci\xF3n \xFAtil para habilitar es reanudar el entrenamiento desde un punto de control anterior. Esto asegurar\xE1 que puedas continuar donde lo dejaste sin comenzar de nuevo si tu entrenamiento se interrumpe. Hay dos m\xE9todos para reanudar el entrenamiento desde un punto de control."),Ac.forEach(a),jo=m(e),K=o(e,"P",{});var Ue=s(K);Hn=n(Ue,"El primer m\xE9todo utiliza el argumento "),xr=o(Ue,"CODE",{});var kc=s(xr);Mn=n(kc,"output_dir previous_output_dir"),kc.forEach(a),Rn=n(Ue," para reanudar el entrenamiento desde el \xFAltimo punto de control almacenado en "),jr=o(Ue,"CODE",{});var Tc=s(jr);Gn=n(Tc,"output_dir"),Tc.forEach(a),Jn=n(Ue,". En este caso, debes eliminar "),qr=o(Ue,"CODE",{});var Lc=s(qr);Xn=n(Lc,"overwrite_output_dir"),Lc.forEach(a),Bn=n(Ue,":"),Ue.forEach(a),qo=m(e),z(dt.$$.fragment,e),Po=m(e),Ae=o(e,"P",{});var es=s(Ae);Kn=n(es,"El segundo m\xE9todo utiliza el argumento "),Pr=o(es,"CODE",{});var Cc=s(Pr);Vn=n(Cc,"resume_from_checkpoint path_to_specific_checkpoint"),Cc.forEach(a),Qn=n(es," para reanudar el entrenamiento desde una carpeta de punto de control espec\xEDfica."),es.forEach(a),Ao=m(e),z(ft.$$.fragment,e),ko=m(e),pe=o(e,"H2",{class:!0});var ts=s(pe);ke=o(ts,"A",{id:!0,class:!0,href:!0});var Uc=s(ke);Ar=o(Uc,"SPAN",{});var Dc=s(Ar);z(_t.$$.fragment,Dc),Dc.forEach(a),Uc.forEach(a),Yn=m(ts),kr=o(ts,"SPAN",{});var Sc=s(kr);Wn=n(Sc,"Comparte tu modelo"),Sc.forEach(a),ts.forEach(a),To=m(e),Te=o(e,"P",{});var as=s(Te);Zn=n(as,"Todos los scripts pueden cargar tu modelo final en el "),ht=o(as,"A",{href:!0,rel:!0});var Ic=s(ht);el=n(Ic,"Model Hub"),Ic.forEach(a),tl=n(as,". Aseg\xFArate de haber iniciado sesi\xF3n en Hugging Face antes de comenzar:"),as.forEach(a),Lo=m(e),z(vt.$$.fragment,e),Co=m(e),ee=o(e,"P",{});var fa=s(ee);al=n(fa,"Luego agrega el argumento "),Tr=o(fa,"CODE",{});var Nc=s(Tr);rl=n(Nc,"push_to_hub"),Nc.forEach(a),ol=n(fa," al script. Este argumento crear\xE1 un repositorio con tu nombre de usuario Hugging Face y el nombre de la carpeta especificado en "),Lr=o(fa,"CODE",{});var Oc=s(Lr);sl=n(Oc,"output_dir"),Oc.forEach(a),il=n(fa,"."),fa.forEach(a),Uo=m(e),Le=o(e,"P",{});var rs=s(Le);nl=n(rs,"Para darle a tu repositorio un nombre espec\xEDfico, usa el argumento "),Cr=o(rs,"CODE",{});var Fc=s(Cr);ll=n(Fc,"push_to_hub_model_id"),Fc.forEach(a),ul=n(rs," para a\xF1adirlo. El repositorio se incluir\xE1 autom\xE1ticamente en tu namespace."),rs.forEach(a),Do=m(e),na=o(e,"P",{});var Hc=s(na);cl=n(Hc,"El siguiente ejemplo muestra c\xF3mo cargar un modelo con un nombre de repositorio espec\xEDfico:"),Hc.forEach(a),So=m(e),z(gt.$$.fragment,e),this.h()},h(){u(d,"name","hf:doc:metadata"),u(d,"content",JSON.stringify(rp)),u(v,"id","entrenamiento-con-scripts"),u(v,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(v,"href","#entrenamiento-con-scripts"),u(f,"class","relative group"),u(U,"href","./noteboks/README"),u(L,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch"),u(L,"rel","nofollow"),u(g,"href","https://github.com/huggingface/transformers/tree/main/examples/tensorflow"),u(g,"rel","nofollow"),u(C,"href","https://github.com/huggingface/transformers/tree/main/examples/flax"),u(C,"rel","nofollow"),u(Se,"href","https://github.com/huggingface/transformers/tree/main/examples/research_projects"),u(Se,"rel","nofollow"),u(Ie,"href","https://github.com/huggingface/transformers/tree/main/examples/legacy"),u(Ie,"rel","nofollow"),u(Ne,"href","https://discuss.huggingface.co/"),u(Ne,"rel","nofollow"),u(Oe,"href","https://github.com/huggingface/transformers/issues"),u(Oe,"rel","nofollow"),u(Fe,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch/summarization"),u(Fe,"rel","nofollow"),u(He,"href","https://github.com/huggingface/transformers/tree/main/examples/tensorflow/summarization"),u(He,"rel","nofollow"),u(me,"id","configuracin"),u(me,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(me,"href","#configuracin"),u(re,"class","relative group"),u(zt,"href","https://github.com/huggingface/transformers/tree/v4.5.1/examples"),u(xt,"href","https://github.com/huggingface/transformers/tree/v4.4.2/examples"),u(jt,"href","https://github.com/huggingface/transformers/tree/v4.3.3/examples"),u(qt,"href","https://github.com/huggingface/transformers/tree/v4.2.2/examples"),u(Pt,"href","https://github.com/huggingface/transformers/tree/v4.1.1/examples"),u(At,"href","https://github.com/huggingface/transformers/tree/v4.0.1/examples"),u(kt,"href","https://github.com/huggingface/transformers/tree/v3.5.1/examples"),u(Tt,"href","https://github.com/huggingface/transformers/tree/v3.4.0/examples"),u(Lt,"href","https://github.com/huggingface/transformers/tree/v3.3.1/examples"),u(Ct,"href","https://github.com/huggingface/transformers/tree/v3.2.0/examples"),u(Ut,"href","https://github.com/huggingface/transformers/tree/v3.1.0/examples"),u(Dt,"href","https://github.com/huggingface/transformers/tree/v3.0.2/examples"),u(St,"href","https://github.com/huggingface/transformers/tree/v2.11.0/examples"),u(It,"href","https://github.com/huggingface/transformers/tree/v2.10.0/examples"),u(Nt,"href","https://github.com/huggingface/transformers/tree/v2.9.1/examples"),u(Ot,"href","https://github.com/huggingface/transformers/tree/v2.8.0/examples"),u(Ft,"href","https://github.com/huggingface/transformers/tree/v2.7.0/examples"),u(Ht,"href","https://github.com/huggingface/transformers/tree/v2.6.0/examples"),u(Mt,"href","https://github.com/huggingface/transformers/tree/v2.5.1/examples"),u(Rt,"href","https://github.com/huggingface/transformers/tree/v2.4.0/examples"),u(Gt,"href","https://github.com/huggingface/transformers/tree/v2.3.0/examples"),u(Jt,"href","https://github.com/huggingface/transformers/tree/v2.2.0/examples"),u(Xt,"href","https://github.com/huggingface/transformers/tree/v2.1.0/examples"),u(Bt,"href","https://github.com/huggingface/transformers/tree/v2.0.0/examples"),u(Kt,"href","https://github.com/huggingface/transformers/tree/v1.2.0/examples"),u(Vt,"href","https://github.com/huggingface/transformers/tree/v1.1.0/examples"),u(Qt,"href","https://github.com/huggingface/transformers/tree/v1.0.0/examples"),u(_e,"id","ejecutar-un-script"),u(_e,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(_e,"href","#ejecutar-un-script"),u(oe,"class","relative group"),u(ve,"id","entrenamiento-distribuido-y-de-precisin-mixta"),u(ve,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(ve,"href","#entrenamiento-distribuido-y-de-precisin-mixta"),u(se,"class","relative group"),u(Ve,"href","https://huggingface.co/docs/transformers/main_classes/trainer"),u(Ve,"rel","nofollow"),u(Ze,"href","https://www.tensorflow.org/guide/distributed_training#mirroredstrategy"),u(Ze,"rel","nofollow"),u(Ee,"id","ejecutar-un-script-en-una-tpu"),u(Ee,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(Ee,"href","#ejecutar-un-script-en-una-tpu"),u(ie,"class","relative group"),u(ye,"id","ejecutar-un-script-con-accelerate"),u(ye,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(ye,"href","#ejecutar-un-script-con-accelerate"),u(ne,"class","relative group"),u(at,"href","https://huggingface.co/docs/accelerate"),u(at,"rel","nofollow"),u(xe,"id","usar-un-conjunto-de-datos-personalizado"),u(xe,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(xe,"href","#usar-un-conjunto-de-datos-personalizado"),u(le,"class","relative group"),u(qe,"id","prueba-un-script"),u(qe,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(qe,"href","#prueba-un-script"),u(ue,"class","relative group"),u(Pe,"id","reanudar-el-entrenamiento-desde-el-punto-de-control"),u(Pe,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(Pe,"href","#reanudar-el-entrenamiento-desde-el-punto-de-control"),u(ce,"class","relative group"),u(ke,"id","comparte-tu-modelo"),u(ke,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),u(ke,"href","#comparte-tu-modelo"),u(pe,"class","relative group"),u(ht,"href","https://huggingface.co/models"),u(ht,"rel","nofollow")},m(e,l){t(document.head,d),c(e,$,l),c(e,f,l),t(f,v),t(v,A),x(y,A,null),t(f,N),t(f,O),t(O,T),c(e,S,l),c(e,k,l),t(k,b),t(k,U),t(U,H),t(k,I),t(k,L),t(L,M),t(k,E),t(k,g),t(g,G),t(k,D),t(k,C),t(C,X),t(k,Et),c(e,De,l),c(e,J,l),t(J,bt),t(J,Se),t(Se,is),t(J,ns),t(J,Ie),t(Ie,ls),t(J,us),c(e,Sr,l),c(e,yt,l),t(yt,cs),c(e,Ir,l),c(e,V,l),t(V,ps),t(V,Ne),t(Ne,ms),t(V,ds),t(V,Oe),t(Oe,fs),t(V,_s),c(e,Nr,l),c(e,Q,l),t(Q,hs),t(Q,Fe),t(Fe,vs),t(Q,gs),t(Q,He),t(He,$s),t(Q,Es),c(e,Or,l),c(e,re,l),t(re,me),t(me,_a),x(Me,_a,null),t(re,bs),t(re,ha),t(ha,ys),c(e,Fr,l),c(e,de,l),t(de,ws),t(de,va),t(va,zs),t(de,xs),c(e,Hr,l),x(Re,e,l),c(e,Mr,l),c(e,wt,l),t(wt,js),c(e,Rr,l),c(e,fe,l),t(fe,ga),t(ga,qs),t(fe,Ps),t(fe,_),t(_,$a),t($a,zt),t(zt,As),t(_,ks),t(_,Ea),t(Ea,xt),t(xt,Ts),t(_,Ls),t(_,ba),t(ba,jt),t(jt,Cs),t(_,Us),t(_,ya),t(ya,qt),t(qt,Ds),t(_,Ss),t(_,wa),t(wa,Pt),t(Pt,Is),t(_,Ns),t(_,za),t(za,At),t(At,Os),t(_,Fs),t(_,xa),t(xa,kt),t(kt,Hs),t(_,Ms),t(_,ja),t(ja,Tt),t(Tt,Rs),t(_,Gs),t(_,qa),t(qa,Lt),t(Lt,Js),t(_,Xs),t(_,Pa),t(Pa,Ct),t(Ct,Bs),t(_,Ks),t(_,Aa),t(Aa,Ut),t(Ut,Vs),t(_,Qs),t(_,ka),t(ka,Dt),t(Dt,Ys),t(_,Ws),t(_,Ta),t(Ta,St),t(St,Zs),t(_,ei),t(_,La),t(La,It),t(It,ti),t(_,ai),t(_,Ca),t(Ca,Nt),t(Nt,ri),t(_,oi),t(_,Ua),t(Ua,Ot),t(Ot,si),t(_,ii),t(_,Da),t(Da,Ft),t(Ft,ni),t(_,li),t(_,Sa),t(Sa,Ht),t(Ht,ui),t(_,ci),t(_,Ia),t(Ia,Mt),t(Mt,pi),t(_,mi),t(_,Na),t(Na,Rt),t(Rt,di),t(_,fi),t(_,Oa),t(Oa,Gt),t(Gt,_i),t(_,hi),t(_,Fa),t(Fa,Jt),t(Jt,vi),t(_,gi),t(_,Ha),t(Ha,Xt),t(Xt,$i),t(_,Ei),t(_,Ma),t(Ma,Bt),t(Bt,bi),t(_,yi),t(_,Ra),t(Ra,Kt),t(Kt,wi),t(_,zi),t(_,Ga),t(Ga,Vt),t(Vt,xi),t(_,ji),t(_,Ja),t(Ja,Qt),t(Qt,qi),c(e,Gr,l),c(e,Yt,l),t(Yt,Pi),c(e,Jr,l),x(Ge,e,l),c(e,Xr,l),c(e,Wt,l),t(Wt,Ai),c(e,Br,l),x(Je,e,l),c(e,Kr,l),c(e,oe,l),t(oe,_e),t(_e,Xa),x(Xe,Xa,null),t(oe,ki),t(oe,Ba),t(Ba,Ti),c(e,Vr,l),x(he,e,l),c(e,Qr,l),c(e,se,l),t(se,ve),t(ve,Ka),x(Be,Ka,null),t(se,Li),t(se,Va),t(Va,Ci),c(e,Yr,l),c(e,Ke,l),t(Ke,Ve),t(Ve,Ui),t(Ke,Di),c(e,Wr,l),c(e,ge,l),t(ge,Qe),t(Qe,Si),t(Qe,Qa),t(Qa,Ii),t(Qe,Ni),t(ge,Oi),t(ge,Ye),t(Ye,Fi),t(Ye,Ya),t(Ya,Hi),t(Ye,Mi),c(e,Zr,l),x(We,e,l),c(e,eo,l),c(e,$e,l),t($e,Ri),t($e,Ze),t(Ze,Wa),t(Wa,Gi),t($e,Ji),c(e,to,l),c(e,ie,l),t(ie,Ee),t(Ee,Za),x(et,Za,null),t(ie,Xi),t(ie,er),t(er,Bi),c(e,ao,l),x(be,e,l),c(e,ro,l),c(e,ne,l),t(ne,ye),t(ye,tr),x(tt,tr,null),t(ne,Ki),t(ne,ar),t(ar,Vi),c(e,oo,l),c(e,we,l),t(we,Qi),t(we,at),t(at,Yi),t(we,Wi),c(e,so,l),c(e,ze,l),t(ze,rr),t(rr,Zi),t(ze,en),x(rt,ze,null),c(e,io,l),c(e,B,l),t(B,tn),t(B,or),t(or,an),t(B,rn),t(B,sr),t(sr,on),t(B,sn),t(B,ir),t(ir,nn),t(B,ln),c(e,no,l),x(ot,e,l),c(e,lo,l),c(e,Zt,l),t(Zt,un),c(e,uo,l),x(st,e,l),c(e,co,l),c(e,ea,l),t(ea,cn),c(e,po,l),x(it,e,l),c(e,mo,l),c(e,le,l),t(le,xe),t(xe,nr),x(nt,nr,null),t(le,pn),t(le,lr),t(lr,mn),c(e,fo,l),c(e,ta,l),t(ta,dn),c(e,_o,l),c(e,Y,l),t(Y,je),t(je,ur),t(ur,fn),t(je,_n),t(je,cr),t(cr,hn),t(je,vn),t(Y,gn),t(Y,aa),t(aa,pr),t(pr,$n),t(aa,En),t(Y,bn),t(Y,ra),t(ra,mr),t(mr,yn),t(ra,wn),c(e,ho,l),c(e,oa,l),t(oa,zn),c(e,vo,l),x(lt,e,l),c(e,go,l),c(e,ue,l),t(ue,qe),t(qe,dr),x(ut,dr,null),t(ue,xn),t(ue,fr),t(fr,jn),c(e,$o,l),c(e,sa,l),t(sa,qn),c(e,Eo,l),c(e,W,l),t(W,_r),t(_r,hr),t(hr,Pn),t(W,An),t(W,vr),t(vr,gr),t(gr,kn),t(W,Tn),t(W,$r),t($r,Er),t(Er,Ln),c(e,bo,l),x(ct,e,l),c(e,yo,l),c(e,Z,l),t(Z,Cn),t(Z,br),t(br,Un),t(Z,Dn),t(Z,yr),t(yr,Sn),t(Z,In),c(e,wo,l),x(pt,e,l),c(e,zo,l),c(e,ce,l),t(ce,Pe),t(Pe,wr),x(mt,wr,null),t(ce,Nn),t(ce,zr),t(zr,On),c(e,xo,l),c(e,ia,l),t(ia,Fn),c(e,jo,l),c(e,K,l),t(K,Hn),t(K,xr),t(xr,Mn),t(K,Rn),t(K,jr),t(jr,Gn),t(K,Jn),t(K,qr),t(qr,Xn),t(K,Bn),c(e,qo,l),x(dt,e,l),c(e,Po,l),c(e,Ae,l),t(Ae,Kn),t(Ae,Pr),t(Pr,Vn),t(Ae,Qn),c(e,Ao,l),x(ft,e,l),c(e,ko,l),c(e,pe,l),t(pe,ke),t(ke,Ar),x(_t,Ar,null),t(pe,Yn),t(pe,kr),t(kr,Wn),c(e,To,l),c(e,Te,l),t(Te,Zn),t(Te,ht),t(ht,el),t(Te,tl),c(e,Lo,l),x(vt,e,l),c(e,Co,l),c(e,ee,l),t(ee,al),t(ee,Tr),t(Tr,rl),t(ee,ol),t(ee,Lr),t(Lr,sl),t(ee,il),c(e,Uo,l),c(e,Le,l),t(Le,nl),t(Le,Cr),t(Cr,ll),t(Le,ul),c(e,Do,l),c(e,na,l),t(na,cl),c(e,So,l),x(gt,e,l),Io=!0},p(e,[l]){const $t={};l&2&&($t.$$scope={dirty:l,ctx:e}),he.$set($t);const Ur={};l&2&&(Ur.$$scope={dirty:l,ctx:e}),be.$set(Ur)},i(e){Io||(j(y.$$.fragment,e),j(Me.$$.fragment,e),j(Re.$$.fragment,e),j(Ge.$$.fragment,e),j(Je.$$.fragment,e),j(Xe.$$.fragment,e),j(he.$$.fragment,e),j(Be.$$.fragment,e),j(We.$$.fragment,e),j(et.$$.fragment,e),j(be.$$.fragment,e),j(tt.$$.fragment,e),j(rt.$$.fragment,e),j(ot.$$.fragment,e),j(st.$$.fragment,e),j(it.$$.fragment,e),j(nt.$$.fragment,e),j(lt.$$.fragment,e),j(ut.$$.fragment,e),j(ct.$$.fragment,e),j(pt.$$.fragment,e),j(mt.$$.fragment,e),j(dt.$$.fragment,e),j(ft.$$.fragment,e),j(_t.$$.fragment,e),j(vt.$$.fragment,e),j(gt.$$.fragment,e),Io=!0)},o(e){q(y.$$.fragment,e),q(Me.$$.fragment,e),q(Re.$$.fragment,e),q(Ge.$$.fragment,e),q(Je.$$.fragment,e),q(Xe.$$.fragment,e),q(he.$$.fragment,e),q(Be.$$.fragment,e),q(We.$$.fragment,e),q(et.$$.fragment,e),q(be.$$.fragment,e),q(tt.$$.fragment,e),q(rt.$$.fragment,e),q(ot.$$.fragment,e),q(st.$$.fragment,e),q(it.$$.fragment,e),q(nt.$$.fragment,e),q(lt.$$.fragment,e),q(ut.$$.fragment,e),q(ct.$$.fragment,e),q(pt.$$.fragment,e),q(mt.$$.fragment,e),q(dt.$$.fragment,e),q(ft.$$.fragment,e),q(_t.$$.fragment,e),q(vt.$$.fragment,e),q(gt.$$.fragment,e),Io=!1},d(e){a(d),e&&a($),e&&a(f),P(y),e&&a(S),e&&a(k),e&&a(De),e&&a(J),e&&a(Sr),e&&a(yt),e&&a(Ir),e&&a(V),e&&a(Nr),e&&a(Q),e&&a(Or),e&&a(re),P(Me),e&&a(Fr),e&&a(de),e&&a(Hr),P(Re,e),e&&a(Mr),e&&a(wt),e&&a(Rr),e&&a(fe),e&&a(Gr),e&&a(Yt),e&&a(Jr),P(Ge,e),e&&a(Xr),e&&a(Wt),e&&a(Br),P(Je,e),e&&a(Kr),e&&a(oe),P(Xe),e&&a(Vr),P(he,e),e&&a(Qr),e&&a(se),P(Be),e&&a(Yr),e&&a(Ke),e&&a(Wr),e&&a(ge),e&&a(Zr),P(We,e),e&&a(eo),e&&a($e),e&&a(to),e&&a(ie),P(et),e&&a(ao),P(be,e),e&&a(ro),e&&a(ne),P(tt),e&&a(oo),e&&a(we),e&&a(so),e&&a(ze),P(rt),e&&a(io),e&&a(B),e&&a(no),P(ot,e),e&&a(lo),e&&a(Zt),e&&a(uo),P(st,e),e&&a(co),e&&a(ea),e&&a(po),P(it,e),e&&a(mo),e&&a(le),P(nt),e&&a(fo),e&&a(ta),e&&a(_o),e&&a(Y),e&&a(ho),e&&a(oa),e&&a(vo),P(lt,e),e&&a(go),e&&a(ue),P(ut),e&&a($o),e&&a(sa),e&&a(Eo),e&&a(W),e&&a(bo),P(ct,e),e&&a(yo),e&&a(Z),e&&a(wo),P(pt,e),e&&a(zo),e&&a(ce),P(mt),e&&a(xo),e&&a(ia),e&&a(jo),e&&a(K),e&&a(qo),P(dt,e),e&&a(Po),e&&a(Ae),e&&a(Ao),P(ft,e),e&&a(ko),e&&a(pe),P(_t),e&&a(To),e&&a(Te),e&&a(Lo),P(vt,e),e&&a(Co),e&&a(ee),e&&a(Uo),e&&a(Le),e&&a(Do),e&&a(na),e&&a(So),P(gt,e)}}}const rp={local:"entrenamiento-con-scripts",sections:[{local:"configuracin",title:"Configuraci\xF3n"},{local:"ejecutar-un-script",title:"Ejecutar un script"},{local:"entrenamiento-distribuido-y-de-precisin-mixta",title:"Entrenamiento distribuido y de precisi\xF3n mixta"},{local:"ejecutar-un-script-en-una-tpu",title:"Ejecutar un script en una TPU"},{local:"ejecutar-un-script-con-accelerate",title:"Ejecutar un script con \u{1F917} Accelerate"},{local:"usar-un-conjunto-de-datos-personalizado",title:"Usar un conjunto de datos personalizado"},{local:"prueba-un-script",title:"Prueba un script"},{local:"reanudar-el-entrenamiento-desde-el-punto-de-control",title:"Reanudar el entrenamiento desde el punto de control"},{local:"comparte-tu-modelo",title:"Comparte tu modelo"}],title:"Entrenamiento con scripts"};function op(R){return Bc(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class cp extends Rc{constructor(d){super();Gc(this,d,op,ap,Jc,{})}}export{cp as default,rp as metadata};
