import{S as kp,i as Yp,s as Pp,e as l,k as u,w as g,t as o,M as xp,c as r,d as a,m,a as i,x as T,h as s,b as c,G as t,g as p,y as U,q as b,o as A,B as j,v as Qp,L as ri}from"../chunks/vendor-hf-doc-builder.js";import{I as ae}from"../chunks/IconCopyLink-hf-doc-builder.js";import{C as B}from"../chunks/CodeBlock-hf-doc-builder.js";import{F as Sp,M as ii}from"../chunks/Markdown-hf-doc-builder.js";import"../chunks/IconTensorflow-hf-doc-builder.js";function Dp(S){let d,w,f,v,$,J,G,L,z,V,I,W,E,Z,R,X,F,y,_,k;return _=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfbmFtZSUyMGNubl9kYWlseW1haWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfY29uZmlnJTIwJTIyMy4wLjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXNvdXJjZV9wcmVmaXglMjAlMjJzdW1tYXJpemUlM0ElMjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW91dHB1dF9kaXIlMjAlMkZ0bXAlMkZ0c3Qtc3VtbWFyaXphdGlvbiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV90cmFpbl9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV9ldmFsX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdmVyd3JpdGVfb3V0cHV0X2RpciUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcHJlZGljdF93aXRoX2dlbmVyYXRl",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=l("p"),w=o("Lo script di esempio scarica e pre-processa un dataset dalla libreria \u{1F917} "),f=l("a"),v=o("Datasets"),$=o(". Successivamente, lo script esegue il fine-tuning su un dataset usando il "),J=l("a"),G=o("Trainer"),L=o(" su un\u2019architettura che supporta la summarization. Il seguente esempio mostra come eseguire il fine-tuning di "),z=l("a"),V=o("T5-small"),I=o(" sul dataset "),W=l("a"),E=o("CNN/DailyMail"),Z=o(". Il modello T5 richiede un parametro addizionale "),R=l("code"),X=o("source_prefix"),F=o(" a causa del modo in cui \xE8 stato addestrato. Questo prefisso permette a T5 di sapere che si tratta di un task di summarization."),y=u(),g(_.$$.fragment),this.h()},l(N){d=r(N,"P",{});var C=i(d);w=s(C,"Lo script di esempio scarica e pre-processa un dataset dalla libreria \u{1F917} "),f=r(C,"A",{href:!0,rel:!0});var P=i(f);v=s(P,"Datasets"),P.forEach(a),$=s(C,". Successivamente, lo script esegue il fine-tuning su un dataset usando il "),J=r(C,"A",{href:!0,rel:!0});var yt=i(J);G=s(yt,"Trainer"),yt.forEach(a),L=s(C," su un\u2019architettura che supporta la summarization. Il seguente esempio mostra come eseguire il fine-tuning di "),z=r(C,"A",{href:!0,rel:!0});var Ne=i(z);V=s(Ne,"T5-small"),Ne.forEach(a),I=s(C," sul dataset "),W=r(C,"A",{href:!0,rel:!0});var Y=i(W);E=s(Y,"CNN/DailyMail"),Y.forEach(a),Z=s(C,". Il modello T5 richiede un parametro addizionale "),R=r(C,"CODE",{});var Jt=i(R);X=s(Jt,"source_prefix"),Jt.forEach(a),F=s(C," a causa del modo in cui \xE8 stato addestrato. Questo prefisso permette a T5 di sapere che si tratta di un task di summarization."),C.forEach(a),y=m(N),T(_.$$.fragment,N),this.h()},h(){c(f,"href","https://huggingface.co/docs/datasets/"),c(f,"rel","nofollow"),c(J,"href","https://huggingface.co/docs/transformers/main_classes/trainer"),c(J,"rel","nofollow"),c(z,"href","https://huggingface.co/t5-small"),c(z,"rel","nofollow"),c(W,"href","https://huggingface.co/datasets/cnn_dailymail"),c(W,"rel","nofollow")},m(N,C){p(N,d,C),t(d,w),t(d,f),t(f,v),t(d,$),t(d,J),t(J,G),t(d,L),t(d,z),t(z,V),t(d,I),t(d,W),t(W,E),t(d,Z),t(d,R),t(R,X),t(d,F),p(N,y,C),U(_,N,C),k=!0},p:ri,i(N){k||(b(_.$$.fragment,N),k=!0)},o(N){A(_.$$.fragment,N),k=!1},d(N){N&&a(d),N&&a(y),j(_,N)}}}function Hp(S){let d,w;return d=new ii({props:{$$slots:{default:[Dp]},$$scope:{ctx:S}}}),{c(){g(d.$$.fragment)},l(f){T(d.$$.fragment,f)},m(f,v){U(d,f,v),w=!0},p(f,v){const $={};v&2&&($.$$scope={dirty:v,ctx:f}),d.$set($)},i(f){w||(b(d.$$.fragment,f),w=!0)},o(f){A(d.$$.fragment,f),w=!1},d(f){j(d,f)}}}function qp(S){let d,w,f,v,$,J,G,L,z,V,I,W,E,Z,R,X,F;return X=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZ0ZW5zb3JmbG93JTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9uYW1lJTIwY25uX2RhaWx5bWFpbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9jb25maWclMjAlMjIzLjAuMCUyMiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tb3V0cHV0X2RpciUyMCUyRnRtcCUyRnRzdC1zdW1tYXJpemF0aW9uJTIwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX3RyYWluX2JhdGNoX3NpemUlMjA4JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX2V2YWxfYmF0Y2hfc2l6ZSUyMDE2JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1udW1fdHJhaW5fZXBvY2hzJTIwMyUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWw=",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=l("p"),w=o("Lo script di esempio scarica e pre-processa un dataset dalla libreria \u{1F917} "),f=l("a"),v=o("Datasets"),$=o(". Successivamente, lo script esegue il fine-tuning su un dataset usando Keras su un\u2019architettura che supporta la summarization. Il seguente esempio mostra come eseguire il fine-tuning di "),J=l("a"),G=o("T5-small"),L=o(" sul dataset "),z=l("a"),V=o("CNN/DailyMail"),I=o(". Il modello T5 richiede un parametro addizionale "),W=l("code"),E=o("source_prefix"),Z=o(" a causa del modo in cui \xE8 stato addestrato. Questo prefisso permette a T5 di sapere che si tratta di un task di summarization."),R=u(),g(X.$$.fragment),this.h()},l(y){d=r(y,"P",{});var _=i(d);w=s(_,"Lo script di esempio scarica e pre-processa un dataset dalla libreria \u{1F917} "),f=r(_,"A",{href:!0,rel:!0});var k=i(f);v=s(k,"Datasets"),k.forEach(a),$=s(_,". Successivamente, lo script esegue il fine-tuning su un dataset usando Keras su un\u2019architettura che supporta la summarization. Il seguente esempio mostra come eseguire il fine-tuning di "),J=r(_,"A",{href:!0,rel:!0});var N=i(J);G=s(N,"T5-small"),N.forEach(a),L=s(_," sul dataset "),z=r(_,"A",{href:!0,rel:!0});var C=i(z);V=s(C,"CNN/DailyMail"),C.forEach(a),I=s(_,". Il modello T5 richiede un parametro addizionale "),W=r(_,"CODE",{});var P=i(W);E=s(P,"source_prefix"),P.forEach(a),Z=s(_," a causa del modo in cui \xE8 stato addestrato. Questo prefisso permette a T5 di sapere che si tratta di un task di summarization."),_.forEach(a),R=m(y),T(X.$$.fragment,y),this.h()},h(){c(f,"href","https://huggingface.co/docs/datasets/"),c(f,"rel","nofollow"),c(J,"href","https://huggingface.co/t5-small"),c(J,"rel","nofollow"),c(z,"href","https://huggingface.co/datasets/cnn_dailymail"),c(z,"rel","nofollow")},m(y,_){p(y,d,_),t(d,w),t(d,f),t(f,v),t(d,$),t(d,J),t(J,G),t(d,L),t(d,z),t(z,V),t(d,I),t(d,W),t(W,E),t(d,Z),p(y,R,_),U(X,y,_),F=!0},p:ri,i(y){F||(b(X.$$.fragment,y),F=!0)},o(y){A(X.$$.fragment,y),F=!1},d(y){y&&a(d),y&&a(R),j(X,y)}}}function Op(S){let d,w;return d=new ii({props:{$$slots:{default:[qp]},$$scope:{ctx:S}}}),{c(){g(d.$$.fragment)},l(f){T(d.$$.fragment,f)},m(f,v){U(d,f,v),w=!0},p(f,v){const $={};v&2&&($.$$scope={dirty:v,ctx:f}),d.$set($)},i(f){w||(b(d.$$.fragment,f),w=!0)},o(f){A(d.$$.fragment,f),w=!1},d(f){j(d,f)}}}function Kp(S){let d,w,f,v,$,J,G,L,z,V,I,W,E,Z,R,X,F;return X=new B({props:{code:"cHl0aG9uJTIweGxhX3NwYXduLnB5JTIwLS1udW1fY29yZXMlMjA4JTIwJTVDJTBBJTIwJTIwJTIwJTIwc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfbmFtZSUyMGNubl9kYWlseW1haWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfY29uZmlnJTIwJTIyMy4wLjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXNvdXJjZV9wcmVmaXglMjAlMjJzdW1tYXJpemUlM0ElMjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW91dHB1dF9kaXIlMjAlMkZ0bXAlMkZ0c3Qtc3VtbWFyaXphdGlvbiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV90cmFpbl9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV9ldmFsX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdmVyd3JpdGVfb3V0cHV0X2RpciUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcHJlZGljdF93aXRoX2dlbmVyYXRl",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=l("p"),w=o("Le Tensor Processing Units (TPU) sono state progettate per migliorare le prestazioni. PyTorch supporta le TPU con il compilatore per deep learning "),f=l("a"),v=o("XLA"),$=o(" (guarda "),J=l("a"),G=o("questo link"),L=o(" per maggiori dettagli). Per usare una TPU, avvia lo script "),z=l("code"),V=o("xla_spawn.py"),I=o(" e usa l\u2019argomento "),W=l("code"),E=o("num_cores"),Z=o(" per impostare il numero di core TPU che intendi usare."),R=u(),g(X.$$.fragment),this.h()},l(y){d=r(y,"P",{});var _=i(d);w=s(_,"Le Tensor Processing Units (TPU) sono state progettate per migliorare le prestazioni. PyTorch supporta le TPU con il compilatore per deep learning "),f=r(_,"A",{href:!0,rel:!0});var k=i(f);v=s(k,"XLA"),k.forEach(a),$=s(_," (guarda "),J=r(_,"A",{href:!0,rel:!0});var N=i(J);G=s(N,"questo link"),N.forEach(a),L=s(_," per maggiori dettagli). Per usare una TPU, avvia lo script "),z=r(_,"CODE",{});var C=i(z);V=s(C,"xla_spawn.py"),C.forEach(a),I=s(_," e usa l\u2019argomento "),W=r(_,"CODE",{});var P=i(W);E=s(P,"num_cores"),P.forEach(a),Z=s(_," per impostare il numero di core TPU che intendi usare."),_.forEach(a),R=m(y),T(X.$$.fragment,y),this.h()},h(){c(f,"href","https://www.tensorflow.org/xla"),c(f,"rel","nofollow"),c(J,"href","https://github.com/pytorch/xla/blob/master/README.md"),c(J,"rel","nofollow")},m(y,_){p(y,d,_),t(d,w),t(d,f),t(f,v),t(d,$),t(d,J),t(J,G),t(d,L),t(d,z),t(z,V),t(d,I),t(d,W),t(W,E),t(d,Z),p(y,R,_),U(X,y,_),F=!0},p:ri,i(y){F||(b(X.$$.fragment,y),F=!0)},o(y){A(X.$$.fragment,y),F=!1},d(y){y&&a(d),y&&a(R),j(X,y)}}}function eu(S){let d,w;return d=new ii({props:{$$slots:{default:[Kp]},$$scope:{ctx:S}}}),{c(){g(d.$$.fragment)},l(f){T(d.$$.fragment,f)},m(f,v){U(d,f,v),w=!0},p(f,v){const $={};v&2&&($.$$scope={dirty:v,ctx:f}),d.$set($)},i(f){w||(b(d.$$.fragment,f),w=!0)},o(f){A(d.$$.fragment,f),w=!1},d(f){j(d,f)}}}function tu(S){let d,w,f,v,$,J,G,L,z,V,I,W;return I=new B({props:{code:"cHl0aG9uJTIwcnVuX3N1bW1hcml6YXRpb24ucHklMjAlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRwdSUyMG5hbWVfb2ZfdHB1X3Jlc291cmNlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9uYW1lJTIwY25uX2RhaWx5bWFpbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9jb25maWclMjAlMjIzLjAuMCUyMiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tb3V0cHV0X2RpciUyMCUyRnRtcCUyRnRzdC1zdW1tYXJpemF0aW9uJTIwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX3RyYWluX2JhdGNoX3NpemUlMjA4JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX2V2YWxfYmF0Y2hfc2l6ZSUyMDE2JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1udW1fdHJhaW5fZXBvY2hzJTIwMyUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWw=",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=l("p"),w=o("Le Tensor Processing Units (TPU) sono state progettate per migliorare le prestazioni. Gli script TensorFlow utilizzano una "),f=l("a"),v=l("code"),$=o("TPUStrategy"),J=o(" per eseguire l\u2019addestramento su TPU. Per usare una TPU, passa il nome della risorsa TPU all\u2019argomento "),G=l("code"),L=o("tpu"),z=o("."),V=u(),g(I.$$.fragment),this.h()},l(E){d=r(E,"P",{});var Z=i(d);w=s(Z,"Le Tensor Processing Units (TPU) sono state progettate per migliorare le prestazioni. Gli script TensorFlow utilizzano una "),f=r(Z,"A",{href:!0,rel:!0});var R=i(f);v=r(R,"CODE",{});var X=i(v);$=s(X,"TPUStrategy"),X.forEach(a),R.forEach(a),J=s(Z," per eseguire l\u2019addestramento su TPU. Per usare una TPU, passa il nome della risorsa TPU all\u2019argomento "),G=r(Z,"CODE",{});var F=i(G);L=s(F,"tpu"),F.forEach(a),z=s(Z,"."),Z.forEach(a),V=m(E),T(I.$$.fragment,E),this.h()},h(){c(f,"href","https://www.tensorflow.org/guide/distributed_training#tpustrategy"),c(f,"rel","nofollow")},m(E,Z){p(E,d,Z),t(d,w),t(d,f),t(f,v),t(v,$),t(d,J),t(d,G),t(G,L),t(d,z),p(E,V,Z),U(I,E,Z),W=!0},p:ri,i(E){W||(b(I.$$.fragment,E),W=!0)},o(E){A(I.$$.fragment,E),W=!1},d(E){E&&a(d),E&&a(V),j(I,E)}}}function au(S){let d,w;return d=new ii({props:{$$slots:{default:[tu]},$$scope:{ctx:S}}}),{c(){g(d.$$.fragment)},l(f){T(d.$$.fragment,f)},m(f,v){U(d,f,v),w=!0},p(f,v){const $={};v&2&&($.$$scope={dirty:v,ctx:f}),d.$set($)},i(f){w||(b(d.$$.fragment,f),w=!0)},o(f){A(d.$$.fragment,f),w=!1},d(f){j(d,f)}}}function lu(S){let d,w,f,v,$,J,G,L,z,V,I,W,E,Z,R,X,F,y,_,k,N,C,P,yt,Ne,Y,Jt,Re,oi,si,Ge,ni,ci,Nl,gt,pi,Rl,D,ui,Le,mi,di,Ve,fi,hi,Gl,H,Mi,Fe,vi,_i,Be,wi,yi,Ll,le,me,ha,Se,Ji,Ma,gi,Vl,de,Ti,va,Ui,bi,Fl,ke,Bl,Tt,Ai,Sl,fe,_a,ji,Ii,h,wa,Ut,Ei,$i,ya,bt,Xi,Ci,Ja,At,zi,Wi,ga,jt,Zi,Ni,Ta,It,Ri,Gi,Ua,Et,Li,Vi,ba,$t,Fi,Bi,Aa,Xt,Si,ki,ja,Ct,Yi,Pi,Ia,zt,xi,Qi,Ea,Wt,Di,Hi,$a,Zt,qi,Oi,Xa,Nt,Ki,eo,Ca,Rt,to,ao,za,Gt,lo,ro,Wa,Lt,io,oo,Za,Vt,so,no,Na,Ft,co,po,Ra,Bt,uo,mo,Ga,St,fo,ho,La,kt,Mo,vo,Va,Yt,_o,wo,Fa,Pt,yo,Jo,Ba,xt,go,To,Sa,Qt,Uo,bo,ka,Dt,Ao,jo,Ya,Ht,Io,kl,qt,Eo,Yl,Ye,Pl,Ot,$o,xl,Pe,Ql,re,he,Pa,xe,Xo,xa,Co,Dl,Me,Hl,ie,ve,Qa,Qe,zo,Da,Wo,ql,_e,Zo,De,No,Ro,Ol,we,He,Go,Ha,Lo,Vo,Fo,qe,Bo,qa,So,ko,Kl,Oe,er,ye,Yo,Ke,Oa,Po,xo,tr,oe,Je,Ka,et,Qo,el,Do,ar,ge,lr,se,Te,tl,tt,Ho,al,qo,rr,Ue,Oo,at,Ko,es,ir,be,ll,ts,as,lt,or,x,ls,rl,rs,is,il,os,ss,ol,ns,cs,sr,rt,nr,Kt,ps,cr,it,pr,ea,us,ur,ot,mr,ne,Ae,sl,st,ms,nl,ds,dr,ta,fs,fr,q,je,cl,hs,Ms,pl,vs,_s,ws,aa,ul,ys,Js,gs,la,ml,Ts,Us,hr,ra,bs,Mr,nt,vr,ce,Ie,dl,ct,As,fl,js,_r,ia,Is,wr,O,hl,Ml,Es,$s,vl,_l,Xs,Cs,wl,yl,zs,yr,pt,Jr,K,Ws,Jl,Zs,Ns,gl,Rs,Gs,gr,ut,Tr,pe,Ee,Tl,mt,Ls,Ul,Vs,Ur,oa,Fs,br,Q,Bs,bl,Ss,ks,Al,Ys,Ps,jl,xs,Qs,Ar,dt,jr,$e,Ds,Il,Hs,qs,Ir,ft,Er,ue,Xe,El,ht,Os,$l,Ks,$r,Ce,en,Mt,tn,an,Xr,vt,Cr,ee,ln,Xl,rn,on,Cl,sn,nn,zr,ze,cn,zl,pn,un,Wr,sa,mn,Zr,_t,Nr;return J=new ae({}),Se=new ae({}),ke=new B({props:{code:"Z2l0JTIwY2xvbmUlMjBodHRwcyUzQSUyRiUyRmdpdGh1Yi5jb20lMkZodWdnaW5nZmFjZSUyRnRyYW5zZm9ybWVycyUwQWNkJTIwdHJhbnNmb3JtZXJzJTBBcGlwJTIwaW5zdGFsbCUyMC4=",highlighted:`git <span class="hljs-built_in">clone</span> https://github.com/huggingface/transformers
<span class="hljs-built_in">cd</span> transformers
pip install .`}}),Ye=new B({props:{code:"Z2l0JTIwY2hlY2tvdXQlMjB0YWdzJTJGdjMuNS4x",highlighted:"git checkout tags/v3.5.1"}}),Pe=new B({props:{code:"cGlwJTIwaW5zdGFsbCUyMC1yJTIwcmVxdWlyZW1lbnRzLnR4dA==",highlighted:"pip install -r requirements.txt"}}),xe=new ae({}),Me=new Sp({props:{pytorch:!0,tensorflow:!0,jax:!1,$$slots:{tensorflow:[Op],pytorch:[Hp]},$$scope:{ctx:S}}}),Qe=new ae({}),Oe=new B({props:{code:"cHl0aG9uJTIwLW0lMjB0b3JjaC5kaXN0cmlidXRlZC5sYXVuY2glMjAlNUMlMEElMjAlMjAlMjAlMjAtLW5wcm9jX3Blcl9ub2RlJTIwOCUyMHB5dG9yY2glMkZzdW1tYXJpemF0aW9uJTJGcnVuX3N1bW1hcml6YXRpb24ucHklMjAlNUMlMEElMjAlMjAlMjAlMjAtLWZwMTYlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW1vZGVsX25hbWVfb3JfcGF0aCUyMHQ1LXNtYWxsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kb190cmFpbiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fZXZhbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9uYW1lJTIwY25uX2RhaWx5bWFpbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldF9jb25maWclMjAlMjIzLjAuMCUyMiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tc291cmNlX3ByZWZpeCUyMCUyMnN1bW1hcml6ZSUzQSUyMCUyMiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tb3V0cHV0X2RpciUyMCUyRnRtcCUyRnRzdC1zdW1tYXJpemF0aW9uJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX3RyYWluX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX2V2YWxfYmF0Y2hfc2l6ZSUzRDQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW92ZXJ3cml0ZV9vdXRwdXRfZGlyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wcmVkaWN0X3dpdGhfZ2VuZXJhdGU=",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({}),ge=new Sp({props:{pytorch:!0,tensorflow:!0,jax:!1,$$slots:{tensorflow:[au],pytorch:[eu]},$$scope:{ctx:S}}}),tt=new ae({}),lt=new B({props:{code:"cGlwJTIwaW5zdGFsbCUyMGdpdCUyQmh0dHBzJTNBJTJGJTJGZ2l0aHViLmNvbSUyRmh1Z2dpbmdmYWNlJTJGYWNjZWxlcmF0ZQ==",highlighted:"pip install git+https://github.com/huggingface/accelerate"}}),rt=new B({props:{code:"YWNjZWxlcmF0ZSUyMGNvbmZpZw==",highlighted:"accelerate config"}}),it=new B({props:{code:"YWNjZWxlcmF0ZSUyMHRlc3Q=",highlighted:'accelerate <span class="hljs-built_in">test</span>'}}),ot=new B({props:{code:"YWNjZWxlcmF0ZSUyMGxhdW5jaCUyMHJ1bl9zdW1tYXJpemF0aW9uX25vX3RyYWluZXIucHklMjAlNUMlMEElMjAlMjAlMjAlMjAtLW1vZGVsX25hbWVfb3JfcGF0aCUyMHQ1LXNtYWxsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0X25hbWUlMjBjbm5fZGFpbHltYWlsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0X2NvbmZpZyUyMCUyMjMuMC4wJTIyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1zb3VyY2VfcHJlZml4JTIwJTIyc3VtbWFyaXplJTNBJTIwJTIyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTIwfiUyRnRtcCUyRnRzdC1zdW1tYXJpemF0aW9u",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`}}),st=new ae({}),nt=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRyYWluX2ZpbGUlMjBwYXRoX3RvX2Nzdl9vcl9qc29ubGluZXNfZmlsZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tdmFsaWRhdGlvbl9maWxlJTIwcGF0aF90b19jc3Zfb3JfanNvbmxpbmVzX2ZpbGUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRleHRfY29sdW1uJTIwdGV4dF9jb2x1bW5fbmFtZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tc3VtbWFyeV9jb2x1bW4lMjBzdW1tYXJ5X2NvbHVtbl9uYW1lJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1zb3VyY2VfcHJlZml4JTIwJTIyc3VtbWFyaXplJTNBJTIwJTIyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTIwJTJGdG1wJTJGdHN0LXN1bW1hcml6YXRpb24lMjAlNUMlMEElMjAlMjAlMjAlMjAtLW92ZXJ3cml0ZV9vdXRwdXRfZGlyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX3RyYWluX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wZXJfZGV2aWNlX2V2YWxfYmF0Y2hfc2l6ZSUzRDQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXByZWRpY3Rfd2l0aF9nZW5lcmF0ZQ==",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`}}),ct=new ae({}),pt=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tbWF4X3RyYWluX3NhbXBsZXMlMjA1MCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tbWF4X2V2YWxfc2FtcGxlcyUyMDUwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1tYXhfcHJlZGljdF9zYW1wbGVzJTIwNTAlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX3RyYWluJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kb19ldmFsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0X25hbWUlMjBjbm5fZGFpbHltYWlsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0X2NvbmZpZyUyMCUyMjMuMC4wJTIyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1zb3VyY2VfcHJlZml4JTIwJTIyc3VtbWFyaXplJTNBJTIwJTIyJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTIwJTJGdG1wJTJGdHN0LXN1bW1hcml6YXRpb24lMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBlcl9kZXZpY2VfdHJhaW5fYmF0Y2hfc2l6ZSUzRDQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBlcl9kZXZpY2VfZXZhbF9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tb3ZlcndyaXRlX291dHB1dF9kaXIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXByZWRpY3Rfd2l0aF9nZW5lcmF0ZQ==",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`}}),ut=new B({props:{code:"ZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTIwLWg=",highlighted:"examples/pytorch/summarization/run_summarization.py -h"}}),mt=new ae({}),dt=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfbmFtZSUyMGNubl9kYWlseW1haWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfY29uZmlnJTIwJTIyMy4wLjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXNvdXJjZV9wcmVmaXglMjAlMjJzdW1tYXJpemUlM0ElMjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW91dHB1dF9kaXIlMjAlMkZ0bXAlMkZ0c3Qtc3VtbWFyaXphdGlvbiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV90cmFpbl9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV9ldmFsX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTIwcHJldmlvdXNfb3V0cHV0X2RpciUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcHJlZGljdF93aXRoX2dlbmVyYXRl",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 B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfbmFtZSUyMGNubl9kYWlseW1haWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfY29uZmlnJTIwJTIyMy4wLjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXNvdXJjZV9wcmVmaXglMjAlMjJzdW1tYXJpemUlM0ElMjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLW91dHB1dF9kaXIlMjAlMkZ0bXAlMkZ0c3Qtc3VtbWFyaXphdGlvbiUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV90cmFpbl9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcGVyX2RldmljZV9ldmFsX2JhdGNoX3NpemUlM0Q0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdmVyd3JpdGVfb3V0cHV0X2RpciUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcmVzdW1lX2Zyb21fY2hlY2twb2ludCUyMHBhdGhfdG9fc3BlY2lmaWNfY2hlY2twb2ludCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcHJlZGljdF93aXRoX2dlbmVyYXRl",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`}}),ht=new ae({}),vt=new B({props:{code:"aHVnZ2luZ2ZhY2UtY2xpJTIwbG9naW4=",highlighted:"huggingface-cli login"}}),_t=new B({props:{code:"cHl0aG9uJTIwZXhhbXBsZXMlMkZweXRvcmNoJTJGc3VtbWFyaXphdGlvbiUyRnJ1bl9zdW1tYXJpemF0aW9uLnB5JTBBJTIwJTIwJTIwJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjB0NS1zbWFsbCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfbmFtZSUyMGNubl9kYWlseW1haWwlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXRfY29uZmlnJTIwJTIyMy4wLjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXNvdXJjZV9wcmVmaXglMjAlMjJzdW1tYXJpemUlM0ElMjAlMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXB1c2hfdG9faHViJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1wdXNoX3RvX2h1Yl9tb2RlbF9pZCUyMGZpbmV0dW5lZC10NS1jbm5fZGFpbHltYWlsJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1vdXRwdXRfZGlyJTIwJTJGdG1wJTJGdHN0LXN1bW1hcml6YXRpb24lMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBlcl9kZXZpY2VfdHJhaW5fYmF0Y2hfc2l6ZSUzRDQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXBlcl9kZXZpY2VfZXZhbF9iYXRjaF9zaXplJTNENCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tb3ZlcndyaXRlX291dHB1dF9kaXIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXByZWRpY3Rfd2l0aF9nZW5lcmF0ZQ==",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=l("meta"),w=u(),f=l("h1"),v=l("a"),$=l("span"),g(J.$$.fragment),G=u(),L=l("span"),z=o("Addestramento con script"),V=u(),I=l("p"),W=o("Insieme ai "),E=l("a"),Z=o("notebooks"),R=o(" \u{1F917} Transformers, ci sono anche esempi di script che dimostrano come addestrare un modello per un task con "),X=l("a"),F=o("PyTorch"),y=o(", "),_=l("a"),k=o("TensorFlow"),N=o(", o "),C=l("a"),P=o("JAX/Flax"),yt=o("."),Ne=u(),Y=l("p"),Jt=o("Troverai anche script che abbiamo usato nei nostri "),Re=l("a"),oi=o("progetti di ricerca"),si=o(" e "),Ge=l("a"),ni=o("precedenti esempi"),ci=o(" a cui contribuisce per lo pi\xF9 la comunit\xE0. Questi script non sono attivamente mantenuti e richiedono una specifica versione di \u{1F917} Transformers che sar\xE0 molto probabilmente incompatibile con l\u2019ultima versione della libreria."),Nl=u(),gt=l("p"),pi=o("Non \xE8 dato per scontato che gli script di esempio funzionino senza apportare modifiche per ogni problema, bens\xEC potrebbe essere necessario adattare lo script al tuo caso specifico. Per aiutarti in ci\xF2, la maggioranza degli script espone le modalit\xE0 di pre-processamento dei dati, consentendoti di modificare lo script come preferisci."),Rl=u(),D=l("p"),ui=o("Per qualsiasi feature che vorresti implementare in uno script d\u2019esempio, per favore discutine nel "),Le=l("a"),mi=o("forum"),di=o(" o in un\u2019"),Ve=l("a"),fi=o("issue"),hi=o(" prima di inviare una Pull Request. Mentre accogliamo con piacere la correzione di bug, \xE8 pi\xF9 improbabile che faremo la stessa con una PR che aggiunge funzionalit\xE0 sacrificando la leggibilit\xE0."),Gl=u(),H=l("p"),Mi=o("Questa guida ti mostrer\xE0 come eseguire uno script di esempio relativo al task di summarization in "),Fe=l("a"),vi=o("PyTorch"),_i=o(" e "),Be=l("a"),wi=o("TensorFlow"),yi=o(". Tutti gli esempi funzioneranno con entrambi i framework a meno che non sia specificato altrimenti."),Ll=u(),le=l("h2"),me=l("a"),ha=l("span"),g(Se.$$.fragment),Ji=u(),Ma=l("span"),gi=o("Installazione"),Vl=u(),de=l("p"),Ti=o("Per eseguire con successo l\u2019ultima versione degli script di esempio, devi "),va=l("strong"),Ui=o("installare \u{1F917} Transformers dalla fonte"),bi=o(" in un nuovo ambiente virtuale:"),Fl=u(),g(ke.$$.fragment),Bl=u(),Tt=l("p"),Ai=o("Per le precedenti versioni degli script di esempio, clicca sul pulsante di seguito:"),Sl=u(),fe=l("details"),_a=l("summary"),ji=o("Esempi per versioni precedenti di \u{1F917} Transformers"),Ii=u(),h=l("ul"),wa=l("li"),Ut=l("a"),Ei=o("v4.5.1"),$i=u(),ya=l("li"),bt=l("a"),Xi=o("v4.4.2"),Ci=u(),Ja=l("li"),At=l("a"),zi=o("v4.3.3"),Wi=u(),ga=l("li"),jt=l("a"),Zi=o("v4.2.2"),Ni=u(),Ta=l("li"),It=l("a"),Ri=o("v4.1.1"),Gi=u(),Ua=l("li"),Et=l("a"),Li=o("v4.0.1"),Vi=u(),ba=l("li"),$t=l("a"),Fi=o("v3.5.1"),Bi=u(),Aa=l("li"),Xt=l("a"),Si=o("v3.4.0"),ki=u(),ja=l("li"),Ct=l("a"),Yi=o("v3.3.1"),Pi=u(),Ia=l("li"),zt=l("a"),xi=o("v3.2.0"),Qi=u(),Ea=l("li"),Wt=l("a"),Di=o("v3.1.0"),Hi=u(),$a=l("li"),Zt=l("a"),qi=o("v3.0.2"),Oi=u(),Xa=l("li"),Nt=l("a"),Ki=o("v2.11.0"),eo=u(),Ca=l("li"),Rt=l("a"),to=o("v2.10.0"),ao=u(),za=l("li"),Gt=l("a"),lo=o("v2.9.1"),ro=u(),Wa=l("li"),Lt=l("a"),io=o("v2.8.0"),oo=u(),Za=l("li"),Vt=l("a"),so=o("v2.7.0"),no=u(),Na=l("li"),Ft=l("a"),co=o("v2.6.0"),po=u(),Ra=l("li"),Bt=l("a"),uo=o("v2.5.1"),mo=u(),Ga=l("li"),St=l("a"),fo=o("v2.4.0"),ho=u(),La=l("li"),kt=l("a"),Mo=o("v2.3.0"),vo=u(),Va=l("li"),Yt=l("a"),_o=o("v2.2.0"),wo=u(),Fa=l("li"),Pt=l("a"),yo=o("v2.1.1"),Jo=u(),Ba=l("li"),xt=l("a"),go=o("v2.0.0"),To=u(),Sa=l("li"),Qt=l("a"),Uo=o("v1.2.0"),bo=u(),ka=l("li"),Dt=l("a"),Ao=o("v1.1.0"),jo=u(),Ya=l("li"),Ht=l("a"),Io=o("v1.0.0"),kl=u(),qt=l("p"),Eo=o("Successivamente, cambia la tua attuale copia di \u{1F917} Transformers specificandone la versione, ad esempio v3.5.1:"),Yl=u(),g(Ye.$$.fragment),Pl=u(),Ot=l("p"),$o=o("Dopo aver configurato correttamente la versione della libreria, naviga nella cartella degli esempi di tua scelta e installa i requisiti:"),xl=u(),g(Pe.$$.fragment),Ql=u(),re=l("h2"),he=l("a"),Pa=l("span"),g(xe.$$.fragment),Xo=u(),xa=l("span"),Co=o("Esegui uno script"),Dl=u(),g(Me.$$.fragment),Hl=u(),ie=l("h2"),ve=l("a"),Qa=l("span"),g(Qe.$$.fragment),zo=u(),Da=l("span"),Wo=o("Addestramento distribuito e precisione mista"),ql=u(),_e=l("p"),Zo=o("Il "),De=l("a"),No=o("Trainer"),Ro=o(" supporta l\u2019addestramento distribuito e la precisione mista, che significa che puoi anche usarla in uno script. Per abilitare entrambe le funzionalit\xE0:"),Ol=u(),we=l("ul"),He=l("li"),Go=o("Aggiunto l\u2019argomento "),Ha=l("code"),Lo=o("fp16"),Vo=o(" per abilitare la precisione mista."),Fo=u(),qe=l("li"),Bo=o("Imposta un numero di GPU da usare con l\u2019argomento "),qa=l("code"),So=o("nproc_per_node"),ko=o("."),Kl=u(),g(Oe.$$.fragment),er=u(),ye=l("p"),Yo=o("Gli script TensorFlow utilizzano una "),Ke=l("a"),Oa=l("code"),Po=o("MirroredStrategy"),xo=o(" per il training distribuito e non devi aggiungere alcun argomento addizionale allo script di training. Lo script TensorFlow user\xE0 multiple GPU in modo predefinito se quest\u2019ultime sono disponibili:"),tr=u(),oe=l("h2"),Je=l("a"),Ka=l("span"),g(et.$$.fragment),Qo=u(),el=l("span"),Do=o("Esegui uno script su TPU"),ar=u(),g(ge.$$.fragment),lr=u(),se=l("h2"),Te=l("a"),tl=l("span"),g(tt.$$.fragment),Ho=u(),al=l("span"),qo=o("Esegui uno script con \u{1F917} Accelerate"),rr=u(),Ue=l("p"),Oo=o("\u{1F917} "),at=l("a"),Ko=o("Accelerate"),es=o(" \xE8 una libreria compatibile solo con PyTorch che offre un metodo unificato per addestrare modelli su diverse tipologie di configurazioni (CPU, multiple GPU, TPU) mantenendo una completa visibilit\xE0 rispetto al ciclo di training di PyTorch. Assicurati di aver effettuato l\u2019installazione di \u{1F917} Accelerate, nel caso non lo avessi fatto:"),ir=u(),be=l("blockquote"),ll=l("p"),ts=o("Nota: dato che Accelerate \xE8 in rapido sviluppo, \xE8 necessario installare la versione proveniente da git per eseguire gli script:"),as=u(),g(lt.$$.fragment),or=u(),x=l("p"),ls=o("Invece che usare lo script "),rl=l("code"),rs=o("run_summarization.py"),is=o(", devi usare lo script "),il=l("code"),os=o("run_summarization_no_trainer.py"),ss=o(". Gli script supportati in \u{1F917} Accelerate avranno un file chiamato "),ol=l("code"),ns=o("task_no_trainer.py"),cs=o(" nella rispettiva cartella. Per iniziare, esegui il seguente comando per creare e salvare un file di configurazione:"),sr=u(),g(rt.$$.fragment),nr=u(),Kt=l("p"),ps=o("Testa la tua configurazione per assicurarti della sua correttezza:"),cr=u(),g(it.$$.fragment),pr=u(),ea=l("p"),us=o("Ora sei pronto per avviare l\u2019addestramento:"),ur=u(),g(ot.$$.fragment),mr=u(),ne=l("h2"),Ae=l("a"),sl=l("span"),g(st.$$.fragment),ms=u(),nl=l("span"),ds=o("Uso di un dataset personalizzato"),dr=u(),ta=l("p"),fs=o("Lo script di summarization supporta dataset personalizzati purch\xE9 siano file CSV o JSON Line. Quando usi il tuo dataset, devi specificare diversi argomenti aggiuntivi:"),fr=u(),q=l("ul"),je=l("li"),cl=l("code"),hs=o("train_file"),Ms=o(" e "),pl=l("code"),vs=o("validation_file"),_s=o(" specificano dove si trovano i file di addestramento e validazione."),ws=u(),aa=l("li"),ul=l("code"),ys=o("text_column"),Js=o(" \xE8 il file di input da riassumere."),gs=u(),la=l("li"),ml=l("code"),Ts=o("summary_column"),Us=o(" \xE8 il file di destinazione per l\u2019output."),hr=u(),ra=l("p"),bs=o("Uno script di summarization usando un dataset personalizzato sarebbe simile a questo:"),Mr=u(),g(nt.$$.fragment),vr=u(),ce=l("h2"),Ie=l("a"),dl=l("span"),g(ct.$$.fragment),As=u(),fl=l("span"),js=o("Testare uno script"),_r=u(),ia=l("p"),Is=o("\xC8 spesso una buona idea avviare il tuo script su un numero inferiore di esempi tratti dal dataset, per assicurarti che tutto funzioni come previsto prima di eseguire lo script sull\u2019intero dataset, che potrebbe necessitare di ore. Usa i seguenti argomenti per limitare il dataset ad un massimo numero di esempi:"),wr=u(),O=l("ul"),hl=l("li"),Ml=l("code"),Es=o("max_train_samples"),$s=u(),vl=l("li"),_l=l("code"),Xs=o("max_eval_samples"),Cs=u(),wl=l("li"),yl=l("code"),zs=o("max_predict_samples"),yr=u(),g(pt.$$.fragment),Jr=u(),K=l("p"),Ws=o("Non tutti gli esempi di script supportano l\u2019argomento "),Jl=l("code"),Zs=o("max_predict_samples"),Ns=o(". Se non sei sicuro circa il supporto di questo argomento da parte del tuo script, aggiungi l\u2019argomento "),gl=l("code"),Rs=o("-h"),Gs=o(" per controllare:"),gr=u(),g(ut.$$.fragment),Tr=u(),pe=l("h2"),Ee=l("a"),Tl=l("span"),g(mt.$$.fragment),Ls=u(),Ul=l("span"),Vs=o("Riavviare addestramento da un checkpoint"),Ur=u(),oa=l("p"),Fs=o("Un\u2019altra utile opzione \xE8 riavviare un addestramento da un checkpoint precedente. Questo garantir\xE0 che tu possa riprendere da dove hai interrotto senza ricominciare se l\u2019addestramento viene interrotto. Ci sono due metodi per riavviare l\u2019addestramento da un checkpoint:"),br=u(),Q=l("p"),Bs=o("Il primo metodo usa l\u2019argomento "),bl=l("code"),Ss=o("output_dir previous_output_dir"),ks=o(" per riavviare l\u2019addestramento dall\u2019ultima versione del checkpoint contenuto in "),Al=l("code"),Ys=o("output_dir"),Ps=o(". In questo caso, dovresti rimuovere "),jl=l("code"),xs=o("overwrite_output_dir"),Qs=o(":"),Ar=u(),g(dt.$$.fragment),jr=u(),$e=l("p"),Ds=o("Il secondo metodo usa l\u2019argomento "),Il=l("code"),Hs=o("resume_from_checkpoint path_to_specific_checkpoint"),qs=o(" per riavviare un addestramento da una specifica cartella di checkpoint."),Ir=u(),g(ft.$$.fragment),Er=u(),ue=l("h2"),Xe=l("a"),El=l("span"),g(ht.$$.fragment),Os=u(),$l=l("span"),Ks=o("Condividi il tuo modello"),$r=u(),Ce=l("p"),en=o("Tutti gli script possono caricare il tuo modello finale al "),Mt=l("a"),tn=o("Model Hub"),an=o(". Prima di iniziare, assicurati di aver effettuato l\u2019accesso su Hugging Face:"),Xr=u(),g(vt.$$.fragment),Cr=u(),ee=l("p"),ln=o("Poi, aggiungi l\u2019argomento "),Xl=l("code"),rn=o("push_to_hub"),on=o(" allo script. Questo argomento consentir\xE0 di creare un repository con il tuo username Hugging Face e la cartella specificata in "),Cl=l("code"),sn=o("output_dir"),nn=o("."),zr=u(),ze=l("p"),cn=o("Per dare uno specifico nome al repository, usa l\u2019argomento "),zl=l("code"),pn=o("push_to_hub_model_id"),un=o(". Il repository verr\xE0 automaticamente elencata sotto al tuo namespace."),Wr=u(),sa=l("p"),mn=o("Il seguente esempio mostra come caricare un modello specificando il nome del repository:"),Zr=u(),g(_t.$$.fragment),this.h()},l(e){const n=xp('[data-svelte="svelte-1phssyn"]',document.head);d=r(n,"META",{name:!0,content:!0}),n.forEach(a),w=m(e),f=r(e,"H1",{class:!0});var wt=i(f);v=r(wt,"A",{id:!0,class:!0,href:!0});var Wl=i(v);$=r(Wl,"SPAN",{});var hn=i($);T(J.$$.fragment,hn),hn.forEach(a),Wl.forEach(a),G=m(wt),L=r(wt,"SPAN",{});var Mn=i(L);z=s(Mn,"Addestramento con script"),Mn.forEach(a),wt.forEach(a),V=m(e),I=r(e,"P",{});var te=i(I);W=s(te,"Insieme ai "),E=r(te,"A",{href:!0});var vn=i(E);Z=s(vn,"notebooks"),vn.forEach(a),R=s(te," \u{1F917} Transformers, ci sono anche esempi di script che dimostrano come addestrare un modello per un task con "),X=r(te,"A",{href:!0,rel:!0});var _n=i(X);F=s(_n,"PyTorch"),_n.forEach(a),y=s(te,", "),_=r(te,"A",{href:!0,rel:!0});var wn=i(_);k=s(wn,"TensorFlow"),wn.forEach(a),N=s(te,", o "),C=r(te,"A",{href:!0,rel:!0});var yn=i(C);P=s(yn,"JAX/Flax"),yn.forEach(a),yt=s(te,"."),te.forEach(a),Ne=m(e),Y=r(e,"P",{});var na=i(Y);Jt=s(na,"Troverai anche script che abbiamo usato nei nostri "),Re=r(na,"A",{href:!0,rel:!0});var Jn=i(Re);oi=s(Jn,"progetti di ricerca"),Jn.forEach(a),si=s(na," e "),Ge=r(na,"A",{href:!0,rel:!0});var gn=i(Ge);ni=s(gn,"precedenti esempi"),gn.forEach(a),ci=s(na," a cui contribuisce per lo pi\xF9 la comunit\xE0. Questi script non sono attivamente mantenuti e richiedono una specifica versione di \u{1F917} Transformers che sar\xE0 molto probabilmente incompatibile con l\u2019ultima versione della libreria."),na.forEach(a),Nl=m(e),gt=r(e,"P",{});var Tn=i(gt);pi=s(Tn,"Non \xE8 dato per scontato che gli script di esempio funzionino senza apportare modifiche per ogni problema, bens\xEC potrebbe essere necessario adattare lo script al tuo caso specifico. Per aiutarti in ci\xF2, la maggioranza degli script espone le modalit\xE0 di pre-processamento dei dati, consentendoti di modificare lo script come preferisci."),Tn.forEach(a),Rl=m(e),D=r(e,"P",{});var ca=i(D);ui=s(ca,"Per qualsiasi feature che vorresti implementare in uno script d\u2019esempio, per favore discutine nel "),Le=r(ca,"A",{href:!0,rel:!0});var Un=i(Le);mi=s(Un,"forum"),Un.forEach(a),di=s(ca," o in un\u2019"),Ve=r(ca,"A",{href:!0,rel:!0});var bn=i(Ve);fi=s(bn,"issue"),bn.forEach(a),hi=s(ca," prima di inviare una Pull Request. Mentre accogliamo con piacere la correzione di bug, \xE8 pi\xF9 improbabile che faremo la stessa con una PR che aggiunge funzionalit\xE0 sacrificando la leggibilit\xE0."),ca.forEach(a),Gl=m(e),H=r(e,"P",{});var pa=i(H);Mi=s(pa,"Questa guida ti mostrer\xE0 come eseguire uno script di esempio relativo al task di summarization in "),Fe=r(pa,"A",{href:!0,rel:!0});var An=i(Fe);vi=s(An,"PyTorch"),An.forEach(a),_i=s(pa," e "),Be=r(pa,"A",{href:!0,rel:!0});var jn=i(Be);wi=s(jn,"TensorFlow"),jn.forEach(a),yi=s(pa,". Tutti gli esempi funzioneranno con entrambi i framework a meno che non sia specificato altrimenti."),pa.forEach(a),Ll=m(e),le=r(e,"H2",{class:!0});var Rr=i(le);me=r(Rr,"A",{id:!0,class:!0,href:!0});var In=i(me);ha=r(In,"SPAN",{});var En=i(ha);T(Se.$$.fragment,En),En.forEach(a),In.forEach(a),Ji=m(Rr),Ma=r(Rr,"SPAN",{});var $n=i(Ma);gi=s($n,"Installazione"),$n.forEach(a),Rr.forEach(a),Vl=m(e),de=r(e,"P",{});var Gr=i(de);Ti=s(Gr,"Per eseguire con successo l\u2019ultima versione degli script di esempio, devi "),va=r(Gr,"STRONG",{});var Xn=i(va);Ui=s(Xn,"installare \u{1F917} Transformers dalla fonte"),Xn.forEach(a),bi=s(Gr," in un nuovo ambiente virtuale:"),Gr.forEach(a),Fl=m(e),T(ke.$$.fragment,e),Bl=m(e),Tt=r(e,"P",{});var Cn=i(Tt);Ai=s(Cn,"Per le precedenti versioni degli script di esempio, clicca sul pulsante di seguito:"),Cn.forEach(a),Sl=m(e),fe=r(e,"DETAILS",{});var Lr=i(fe);_a=r(Lr,"SUMMARY",{});var zn=i(_a);ji=s(zn,"Esempi per versioni precedenti di \u{1F917} Transformers"),zn.forEach(a),Ii=m(Lr),h=r(Lr,"UL",{});var M=i(h);wa=r(M,"LI",{});var Wn=i(wa);Ut=r(Wn,"A",{href:!0});var Zn=i(Ut);Ei=s(Zn,"v4.5.1"),Zn.forEach(a),Wn.forEach(a),$i=m(M),ya=r(M,"LI",{});var Nn=i(ya);bt=r(Nn,"A",{href:!0});var Rn=i(bt);Xi=s(Rn,"v4.4.2"),Rn.forEach(a),Nn.forEach(a),Ci=m(M),Ja=r(M,"LI",{});var Gn=i(Ja);At=r(Gn,"A",{href:!0});var Ln=i(At);zi=s(Ln,"v4.3.3"),Ln.forEach(a),Gn.forEach(a),Wi=m(M),ga=r(M,"LI",{});var Vn=i(ga);jt=r(Vn,"A",{href:!0});var Fn=i(jt);Zi=s(Fn,"v4.2.2"),Fn.forEach(a),Vn.forEach(a),Ni=m(M),Ta=r(M,"LI",{});var Bn=i(Ta);It=r(Bn,"A",{href:!0});var Sn=i(It);Ri=s(Sn,"v4.1.1"),Sn.forEach(a),Bn.forEach(a),Gi=m(M),Ua=r(M,"LI",{});var kn=i(Ua);Et=r(kn,"A",{href:!0});var Yn=i(Et);Li=s(Yn,"v4.0.1"),Yn.forEach(a),kn.forEach(a),Vi=m(M),ba=r(M,"LI",{});var Pn=i(ba);$t=r(Pn,"A",{href:!0});var xn=i($t);Fi=s(xn,"v3.5.1"),xn.forEach(a),Pn.forEach(a),Bi=m(M),Aa=r(M,"LI",{});var Qn=i(Aa);Xt=r(Qn,"A",{href:!0});var Dn=i(Xt);Si=s(Dn,"v3.4.0"),Dn.forEach(a),Qn.forEach(a),ki=m(M),ja=r(M,"LI",{});var Hn=i(ja);Ct=r(Hn,"A",{href:!0});var qn=i(Ct);Yi=s(qn,"v3.3.1"),qn.forEach(a),Hn.forEach(a),Pi=m(M),Ia=r(M,"LI",{});var On=i(Ia);zt=r(On,"A",{href:!0});var Kn=i(zt);xi=s(Kn,"v3.2.0"),Kn.forEach(a),On.forEach(a),Qi=m(M),Ea=r(M,"LI",{});var ec=i(Ea);Wt=r(ec,"A",{href:!0});var tc=i(Wt);Di=s(tc,"v3.1.0"),tc.forEach(a),ec.forEach(a),Hi=m(M),$a=r(M,"LI",{});var ac=i($a);Zt=r(ac,"A",{href:!0});var lc=i(Zt);qi=s(lc,"v3.0.2"),lc.forEach(a),ac.forEach(a),Oi=m(M),Xa=r(M,"LI",{});var rc=i(Xa);Nt=r(rc,"A",{href:!0});var ic=i(Nt);Ki=s(ic,"v2.11.0"),ic.forEach(a),rc.forEach(a),eo=m(M),Ca=r(M,"LI",{});var oc=i(Ca);Rt=r(oc,"A",{href:!0});var sc=i(Rt);to=s(sc,"v2.10.0"),sc.forEach(a),oc.forEach(a),ao=m(M),za=r(M,"LI",{});var nc=i(za);Gt=r(nc,"A",{href:!0});var cc=i(Gt);lo=s(cc,"v2.9.1"),cc.forEach(a),nc.forEach(a),ro=m(M),Wa=r(M,"LI",{});var pc=i(Wa);Lt=r(pc,"A",{href:!0});var uc=i(Lt);io=s(uc,"v2.8.0"),uc.forEach(a),pc.forEach(a),oo=m(M),Za=r(M,"LI",{});var mc=i(Za);Vt=r(mc,"A",{href:!0});var dc=i(Vt);so=s(dc,"v2.7.0"),dc.forEach(a),mc.forEach(a),no=m(M),Na=r(M,"LI",{});var fc=i(Na);Ft=r(fc,"A",{href:!0});var hc=i(Ft);co=s(hc,"v2.6.0"),hc.forEach(a),fc.forEach(a),po=m(M),Ra=r(M,"LI",{});var Mc=i(Ra);Bt=r(Mc,"A",{href:!0});var vc=i(Bt);uo=s(vc,"v2.5.1"),vc.forEach(a),Mc.forEach(a),mo=m(M),Ga=r(M,"LI",{});var _c=i(Ga);St=r(_c,"A",{href:!0});var wc=i(St);fo=s(wc,"v2.4.0"),wc.forEach(a),_c.forEach(a),ho=m(M),La=r(M,"LI",{});var yc=i(La);kt=r(yc,"A",{href:!0});var Jc=i(kt);Mo=s(Jc,"v2.3.0"),Jc.forEach(a),yc.forEach(a),vo=m(M),Va=r(M,"LI",{});var gc=i(Va);Yt=r(gc,"A",{href:!0});var Tc=i(Yt);_o=s(Tc,"v2.2.0"),Tc.forEach(a),gc.forEach(a),wo=m(M),Fa=r(M,"LI",{});var Uc=i(Fa);Pt=r(Uc,"A",{href:!0});var bc=i(Pt);yo=s(bc,"v2.1.1"),bc.forEach(a),Uc.forEach(a),Jo=m(M),Ba=r(M,"LI",{});var Ac=i(Ba);xt=r(Ac,"A",{href:!0});var jc=i(xt);go=s(jc,"v2.0.0"),jc.forEach(a),Ac.forEach(a),To=m(M),Sa=r(M,"LI",{});var Ic=i(Sa);Qt=r(Ic,"A",{href:!0});var Ec=i(Qt);Uo=s(Ec,"v1.2.0"),Ec.forEach(a),Ic.forEach(a),bo=m(M),ka=r(M,"LI",{});var $c=i(ka);Dt=r($c,"A",{href:!0});var Xc=i(Dt);Ao=s(Xc,"v1.1.0"),Xc.forEach(a),$c.forEach(a),jo=m(M),Ya=r(M,"LI",{});var Cc=i(Ya);Ht=r(Cc,"A",{href:!0});var zc=i(Ht);Io=s(zc,"v1.0.0"),zc.forEach(a),Cc.forEach(a),M.forEach(a),Lr.forEach(a),kl=m(e),qt=r(e,"P",{});var Wc=i(qt);Eo=s(Wc,"Successivamente, cambia la tua attuale copia di \u{1F917} Transformers specificandone la versione, ad esempio v3.5.1:"),Wc.forEach(a),Yl=m(e),T(Ye.$$.fragment,e),Pl=m(e),Ot=r(e,"P",{});var Zc=i(Ot);$o=s(Zc,"Dopo aver configurato correttamente la versione della libreria, naviga nella cartella degli esempi di tua scelta e installa i requisiti:"),Zc.forEach(a),xl=m(e),T(Pe.$$.fragment,e),Ql=m(e),re=r(e,"H2",{class:!0});var Vr=i(re);he=r(Vr,"A",{id:!0,class:!0,href:!0});var Nc=i(he);Pa=r(Nc,"SPAN",{});var Rc=i(Pa);T(xe.$$.fragment,Rc),Rc.forEach(a),Nc.forEach(a),Xo=m(Vr),xa=r(Vr,"SPAN",{});var Gc=i(xa);Co=s(Gc,"Esegui uno script"),Gc.forEach(a),Vr.forEach(a),Dl=m(e),T(Me.$$.fragment,e),Hl=m(e),ie=r(e,"H2",{class:!0});var Fr=i(ie);ve=r(Fr,"A",{id:!0,class:!0,href:!0});var Lc=i(ve);Qa=r(Lc,"SPAN",{});var Vc=i(Qa);T(Qe.$$.fragment,Vc),Vc.forEach(a),Lc.forEach(a),zo=m(Fr),Da=r(Fr,"SPAN",{});var Fc=i(Da);Wo=s(Fc,"Addestramento distribuito e precisione mista"),Fc.forEach(a),Fr.forEach(a),ql=m(e),_e=r(e,"P",{});var Br=i(_e);Zo=s(Br,"Il "),De=r(Br,"A",{href:!0,rel:!0});var Bc=i(De);No=s(Bc,"Trainer"),Bc.forEach(a),Ro=s(Br," supporta l\u2019addestramento distribuito e la precisione mista, che significa che puoi anche usarla in uno script. Per abilitare entrambe le funzionalit\xE0:"),Br.forEach(a),Ol=m(e),we=r(e,"UL",{});var Sr=i(we);He=r(Sr,"LI",{});var kr=i(He);Go=s(kr,"Aggiunto l\u2019argomento "),Ha=r(kr,"CODE",{});var Sc=i(Ha);Lo=s(Sc,"fp16"),Sc.forEach(a),Vo=s(kr," per abilitare la precisione mista."),kr.forEach(a),Fo=m(Sr),qe=r(Sr,"LI",{});var Yr=i(qe);Bo=s(Yr,"Imposta un numero di GPU da usare con l\u2019argomento "),qa=r(Yr,"CODE",{});var kc=i(qa);So=s(kc,"nproc_per_node"),kc.forEach(a),ko=s(Yr,"."),Yr.forEach(a),Sr.forEach(a),Kl=m(e),T(Oe.$$.fragment,e),er=m(e),ye=r(e,"P",{});var Pr=i(ye);Yo=s(Pr,"Gli script TensorFlow utilizzano una "),Ke=r(Pr,"A",{href:!0,rel:!0});var Yc=i(Ke);Oa=r(Yc,"CODE",{});var Pc=i(Oa);Po=s(Pc,"MirroredStrategy"),Pc.forEach(a),Yc.forEach(a),xo=s(Pr," per il training distribuito e non devi aggiungere alcun argomento addizionale allo script di training. Lo script TensorFlow user\xE0 multiple GPU in modo predefinito se quest\u2019ultime sono disponibili:"),Pr.forEach(a),tr=m(e),oe=r(e,"H2",{class:!0});var xr=i(oe);Je=r(xr,"A",{id:!0,class:!0,href:!0});var xc=i(Je);Ka=r(xc,"SPAN",{});var Qc=i(Ka);T(et.$$.fragment,Qc),Qc.forEach(a),xc.forEach(a),Qo=m(xr),el=r(xr,"SPAN",{});var Dc=i(el);Do=s(Dc,"Esegui uno script su TPU"),Dc.forEach(a),xr.forEach(a),ar=m(e),T(ge.$$.fragment,e),lr=m(e),se=r(e,"H2",{class:!0});var Qr=i(se);Te=r(Qr,"A",{id:!0,class:!0,href:!0});var Hc=i(Te);tl=r(Hc,"SPAN",{});var qc=i(tl);T(tt.$$.fragment,qc),qc.forEach(a),Hc.forEach(a),Ho=m(Qr),al=r(Qr,"SPAN",{});var Oc=i(al);qo=s(Oc,"Esegui uno script con \u{1F917} Accelerate"),Oc.forEach(a),Qr.forEach(a),rr=m(e),Ue=r(e,"P",{});var Dr=i(Ue);Oo=s(Dr,"\u{1F917} "),at=r(Dr,"A",{href:!0,rel:!0});var Kc=i(at);Ko=s(Kc,"Accelerate"),Kc.forEach(a),es=s(Dr," \xE8 una libreria compatibile solo con PyTorch che offre un metodo unificato per addestrare modelli su diverse tipologie di configurazioni (CPU, multiple GPU, TPU) mantenendo una completa visibilit\xE0 rispetto al ciclo di training di PyTorch. Assicurati di aver effettuato l\u2019installazione di \u{1F917} Accelerate, nel caso non lo avessi fatto:"),Dr.forEach(a),ir=m(e),be=r(e,"BLOCKQUOTE",{});var Hr=i(be);ll=r(Hr,"P",{});var ep=i(ll);ts=s(ep,"Nota: dato che Accelerate \xE8 in rapido sviluppo, \xE8 necessario installare la versione proveniente da git per eseguire gli script:"),ep.forEach(a),as=m(Hr),T(lt.$$.fragment,Hr),Hr.forEach(a),or=m(e),x=r(e,"P",{});var We=i(x);ls=s(We,"Invece che usare lo script "),rl=r(We,"CODE",{});var tp=i(rl);rs=s(tp,"run_summarization.py"),tp.forEach(a),is=s(We,", devi usare lo script "),il=r(We,"CODE",{});var ap=i(il);os=s(ap,"run_summarization_no_trainer.py"),ap.forEach(a),ss=s(We,". Gli script supportati in \u{1F917} Accelerate avranno un file chiamato "),ol=r(We,"CODE",{});var lp=i(ol);ns=s(lp,"task_no_trainer.py"),lp.forEach(a),cs=s(We," nella rispettiva cartella. Per iniziare, esegui il seguente comando per creare e salvare un file di configurazione:"),We.forEach(a),sr=m(e),T(rt.$$.fragment,e),nr=m(e),Kt=r(e,"P",{});var rp=i(Kt);ps=s(rp,"Testa la tua configurazione per assicurarti della sua correttezza:"),rp.forEach(a),cr=m(e),T(it.$$.fragment,e),pr=m(e),ea=r(e,"P",{});var ip=i(ea);us=s(ip,"Ora sei pronto per avviare l\u2019addestramento:"),ip.forEach(a),ur=m(e),T(ot.$$.fragment,e),mr=m(e),ne=r(e,"H2",{class:!0});var qr=i(ne);Ae=r(qr,"A",{id:!0,class:!0,href:!0});var op=i(Ae);sl=r(op,"SPAN",{});var sp=i(sl);T(st.$$.fragment,sp),sp.forEach(a),op.forEach(a),ms=m(qr),nl=r(qr,"SPAN",{});var np=i(nl);ds=s(np,"Uso di un dataset personalizzato"),np.forEach(a),qr.forEach(a),dr=m(e),ta=r(e,"P",{});var cp=i(ta);fs=s(cp,"Lo script di summarization supporta dataset personalizzati purch\xE9 siano file CSV o JSON Line. Quando usi il tuo dataset, devi specificare diversi argomenti aggiuntivi:"),cp.forEach(a),fr=m(e),q=r(e,"UL",{});var ua=i(q);je=r(ua,"LI",{});var Zl=i(je);cl=r(Zl,"CODE",{});var pp=i(cl);hs=s(pp,"train_file"),pp.forEach(a),Ms=s(Zl," e "),pl=r(Zl,"CODE",{});var up=i(pl);vs=s(up,"validation_file"),up.forEach(a),_s=s(Zl," specificano dove si trovano i file di addestramento e validazione."),Zl.forEach(a),ws=m(ua),aa=r(ua,"LI",{});var dn=i(aa);ul=r(dn,"CODE",{});var mp=i(ul);ys=s(mp,"text_column"),mp.forEach(a),Js=s(dn," \xE8 il file di input da riassumere."),dn.forEach(a),gs=m(ua),la=r(ua,"LI",{});var fn=i(la);ml=r(fn,"CODE",{});var dp=i(ml);Ts=s(dp,"summary_column"),dp.forEach(a),Us=s(fn," \xE8 il file di destinazione per l\u2019output."),fn.forEach(a),ua.forEach(a),hr=m(e),ra=r(e,"P",{});var fp=i(ra);bs=s(fp,"Uno script di summarization usando un dataset personalizzato sarebbe simile a questo:"),fp.forEach(a),Mr=m(e),T(nt.$$.fragment,e),vr=m(e),ce=r(e,"H2",{class:!0});var Or=i(ce);Ie=r(Or,"A",{id:!0,class:!0,href:!0});var hp=i(Ie);dl=r(hp,"SPAN",{});var Mp=i(dl);T(ct.$$.fragment,Mp),Mp.forEach(a),hp.forEach(a),As=m(Or),fl=r(Or,"SPAN",{});var vp=i(fl);js=s(vp,"Testare uno script"),vp.forEach(a),Or.forEach(a),_r=m(e),ia=r(e,"P",{});var _p=i(ia);Is=s(_p,"\xC8 spesso una buona idea avviare il tuo script su un numero inferiore di esempi tratti dal dataset, per assicurarti che tutto funzioni come previsto prima di eseguire lo script sull\u2019intero dataset, che potrebbe necessitare di ore. Usa i seguenti argomenti per limitare il dataset ad un massimo numero di esempi:"),_p.forEach(a),wr=m(e),O=r(e,"UL",{});var ma=i(O);hl=r(ma,"LI",{});var wp=i(hl);Ml=r(wp,"CODE",{});var yp=i(Ml);Es=s(yp,"max_train_samples"),yp.forEach(a),wp.forEach(a),$s=m(ma),vl=r(ma,"LI",{});var Jp=i(vl);_l=r(Jp,"CODE",{});var gp=i(_l);Xs=s(gp,"max_eval_samples"),gp.forEach(a),Jp.forEach(a),Cs=m(ma),wl=r(ma,"LI",{});var Tp=i(wl);yl=r(Tp,"CODE",{});var Up=i(yl);zs=s(Up,"max_predict_samples"),Up.forEach(a),Tp.forEach(a),ma.forEach(a),yr=m(e),T(pt.$$.fragment,e),Jr=m(e),K=r(e,"P",{});var da=i(K);Ws=s(da,"Non tutti gli esempi di script supportano l\u2019argomento "),Jl=r(da,"CODE",{});var bp=i(Jl);Zs=s(bp,"max_predict_samples"),bp.forEach(a),Ns=s(da,". Se non sei sicuro circa il supporto di questo argomento da parte del tuo script, aggiungi l\u2019argomento "),gl=r(da,"CODE",{});var Ap=i(gl);Rs=s(Ap,"-h"),Ap.forEach(a),Gs=s(da," per controllare:"),da.forEach(a),gr=m(e),T(ut.$$.fragment,e),Tr=m(e),pe=r(e,"H2",{class:!0});var Kr=i(pe);Ee=r(Kr,"A",{id:!0,class:!0,href:!0});var jp=i(Ee);Tl=r(jp,"SPAN",{});var Ip=i(Tl);T(mt.$$.fragment,Ip),Ip.forEach(a),jp.forEach(a),Ls=m(Kr),Ul=r(Kr,"SPAN",{});var Ep=i(Ul);Vs=s(Ep,"Riavviare addestramento da un checkpoint"),Ep.forEach(a),Kr.forEach(a),Ur=m(e),oa=r(e,"P",{});var $p=i(oa);Fs=s($p,"Un\u2019altra utile opzione \xE8 riavviare un addestramento da un checkpoint precedente. Questo garantir\xE0 che tu possa riprendere da dove hai interrotto senza ricominciare se l\u2019addestramento viene interrotto. Ci sono due metodi per riavviare l\u2019addestramento da un checkpoint:"),$p.forEach(a),br=m(e),Q=r(e,"P",{});var Ze=i(Q);Bs=s(Ze,"Il primo metodo usa l\u2019argomento "),bl=r(Ze,"CODE",{});var Xp=i(bl);Ss=s(Xp,"output_dir previous_output_dir"),Xp.forEach(a),ks=s(Ze," per riavviare l\u2019addestramento dall\u2019ultima versione del checkpoint contenuto in "),Al=r(Ze,"CODE",{});var Cp=i(Al);Ys=s(Cp,"output_dir"),Cp.forEach(a),Ps=s(Ze,". In questo caso, dovresti rimuovere "),jl=r(Ze,"CODE",{});var zp=i(jl);xs=s(zp,"overwrite_output_dir"),zp.forEach(a),Qs=s(Ze,":"),Ze.forEach(a),Ar=m(e),T(dt.$$.fragment,e),jr=m(e),$e=r(e,"P",{});var ei=i($e);Ds=s(ei,"Il secondo metodo usa l\u2019argomento "),Il=r(ei,"CODE",{});var Wp=i(Il);Hs=s(Wp,"resume_from_checkpoint path_to_specific_checkpoint"),Wp.forEach(a),qs=s(ei," per riavviare un addestramento da una specifica cartella di checkpoint."),ei.forEach(a),Ir=m(e),T(ft.$$.fragment,e),Er=m(e),ue=r(e,"H2",{class:!0});var ti=i(ue);Xe=r(ti,"A",{id:!0,class:!0,href:!0});var Zp=i(Xe);El=r(Zp,"SPAN",{});var Np=i(El);T(ht.$$.fragment,Np),Np.forEach(a),Zp.forEach(a),Os=m(ti),$l=r(ti,"SPAN",{});var Rp=i($l);Ks=s(Rp,"Condividi il tuo modello"),Rp.forEach(a),ti.forEach(a),$r=m(e),Ce=r(e,"P",{});var ai=i(Ce);en=s(ai,"Tutti gli script possono caricare il tuo modello finale al "),Mt=r(ai,"A",{href:!0,rel:!0});var Gp=i(Mt);tn=s(Gp,"Model Hub"),Gp.forEach(a),an=s(ai,". Prima di iniziare, assicurati di aver effettuato l\u2019accesso su Hugging Face:"),ai.forEach(a),Xr=m(e),T(vt.$$.fragment,e),Cr=m(e),ee=r(e,"P",{});var fa=i(ee);ln=s(fa,"Poi, aggiungi l\u2019argomento "),Xl=r(fa,"CODE",{});var Lp=i(Xl);rn=s(Lp,"push_to_hub"),Lp.forEach(a),on=s(fa," allo script. Questo argomento consentir\xE0 di creare un repository con il tuo username Hugging Face e la cartella specificata in "),Cl=r(fa,"CODE",{});var Vp=i(Cl);sn=s(Vp,"output_dir"),Vp.forEach(a),nn=s(fa,"."),fa.forEach(a),zr=m(e),ze=r(e,"P",{});var li=i(ze);cn=s(li,"Per dare uno specifico nome al repository, usa l\u2019argomento "),zl=r(li,"CODE",{});var Fp=i(zl);pn=s(Fp,"push_to_hub_model_id"),Fp.forEach(a),un=s(li,". Il repository verr\xE0 automaticamente elencata sotto al tuo namespace."),li.forEach(a),Wr=m(e),sa=r(e,"P",{});var Bp=i(sa);mn=s(Bp,"Il seguente esempio mostra come caricare un modello specificando il nome del repository:"),Bp.forEach(a),Zr=m(e),T(_t.$$.fragment,e),this.h()},h(){c(d,"name","hf:doc:metadata"),c(d,"content",JSON.stringify(ru)),c(v,"id","addestramento-con-script"),c(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"),c(v,"href","#addestramento-con-script"),c(f,"class","relative group"),c(E,"href","./noteboks/README"),c(X,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch"),c(X,"rel","nofollow"),c(_,"href","https://github.com/huggingface/transformers/tree/main/examples/tensorflow"),c(_,"rel","nofollow"),c(C,"href","https://github.com/huggingface/transformers/tree/main/examples/flax"),c(C,"rel","nofollow"),c(Re,"href","https://github.com/huggingface/transformers/tree/main/examples/research_projects"),c(Re,"rel","nofollow"),c(Ge,"href","https://github.com/huggingface/transformers/tree/main/examples/legacy"),c(Ge,"rel","nofollow"),c(Le,"href","https://discuss.huggingface.co/"),c(Le,"rel","nofollow"),c(Ve,"href","https://github.com/huggingface/transformers/issues"),c(Ve,"rel","nofollow"),c(Fe,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch/summarization"),c(Fe,"rel","nofollow"),c(Be,"href","https://github.com/huggingface/transformers/tree/main/examples/tensorflow/summarization"),c(Be,"rel","nofollow"),c(me,"id","installazione"),c(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"),c(me,"href","#installazione"),c(le,"class","relative group"),c(Ut,"href","https://github.com/huggingface/transformers/tree/v4.5.1/examples"),c(bt,"href","https://github.com/huggingface/transformers/tree/v4.4.2/examples"),c(At,"href","https://github.com/huggingface/transformers/tree/v4.3.3/examples"),c(jt,"href","https://github.com/huggingface/transformers/tree/v4.2.2/examples"),c(It,"href","https://github.com/huggingface/transformers/tree/v4.1.1/examples"),c(Et,"href","https://github.com/huggingface/transformers/tree/v4.0.1/examples"),c($t,"href","https://github.com/huggingface/transformers/tree/v3.5.1/examples"),c(Xt,"href","https://github.com/huggingface/transformers/tree/v3.4.0/examples"),c(Ct,"href","https://github.com/huggingface/transformers/tree/v3.3.1/examples"),c(zt,"href","https://github.com/huggingface/transformers/tree/v3.2.0/examples"),c(Wt,"href","https://github.com/huggingface/transformers/tree/v3.1.0/examples"),c(Zt,"href","https://github.com/huggingface/transformers/tree/v3.0.2/examples"),c(Nt,"href","https://github.com/huggingface/transformers/tree/v2.11.0/examples"),c(Rt,"href","https://github.com/huggingface/transformers/tree/v2.10.0/examples"),c(Gt,"href","https://github.com/huggingface/transformers/tree/v2.9.1/examples"),c(Lt,"href","https://github.com/huggingface/transformers/tree/v2.8.0/examples"),c(Vt,"href","https://github.com/huggingface/transformers/tree/v2.7.0/examples"),c(Ft,"href","https://github.com/huggingface/transformers/tree/v2.6.0/examples"),c(Bt,"href","https://github.com/huggingface/transformers/tree/v2.5.1/examples"),c(St,"href","https://github.com/huggingface/transformers/tree/v2.4.0/examples"),c(kt,"href","https://github.com/huggingface/transformers/tree/v2.3.0/examples"),c(Yt,"href","https://github.com/huggingface/transformers/tree/v2.2.0/examples"),c(Pt,"href","https://github.com/huggingface/transformers/tree/v2.1.0/examples"),c(xt,"href","https://github.com/huggingface/transformers/tree/v2.0.0/examples"),c(Qt,"href","https://github.com/huggingface/transformers/tree/v1.2.0/examples"),c(Dt,"href","https://github.com/huggingface/transformers/tree/v1.1.0/examples"),c(Ht,"href","https://github.com/huggingface/transformers/tree/v1.0.0/examples"),c(he,"id","esegui-uno-script"),c(he,"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"),c(he,"href","#esegui-uno-script"),c(re,"class","relative group"),c(ve,"id","addestramento-distribuito-e-precisione-mista"),c(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"),c(ve,"href","#addestramento-distribuito-e-precisione-mista"),c(ie,"class","relative group"),c(De,"href","https://huggingface.co/docs/transformers/main_classes/trainer"),c(De,"rel","nofollow"),c(Ke,"href","https://www.tensorflow.org/guide/distributed_training#mirroredstrategy"),c(Ke,"rel","nofollow"),c(Je,"id","esegui-uno-script-su-tpu"),c(Je,"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"),c(Je,"href","#esegui-uno-script-su-tpu"),c(oe,"class","relative group"),c(Te,"id","esegui-uno-script-con-accelerate"),c(Te,"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"),c(Te,"href","#esegui-uno-script-con-accelerate"),c(se,"class","relative group"),c(at,"href","https://huggingface.co/docs/accelerate"),c(at,"rel","nofollow"),c(Ae,"id","uso-di-un-dataset-personalizzato"),c(Ae,"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"),c(Ae,"href","#uso-di-un-dataset-personalizzato"),c(ne,"class","relative group"),c(Ie,"id","testare-uno-script"),c(Ie,"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"),c(Ie,"href","#testare-uno-script"),c(ce,"class","relative group"),c(Ee,"id","riavviare-addestramento-da-un-checkpoint"),c(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"),c(Ee,"href","#riavviare-addestramento-da-un-checkpoint"),c(pe,"class","relative group"),c(Xe,"id","condividi-il-tuo-modello"),c(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"),c(Xe,"href","#condividi-il-tuo-modello"),c(ue,"class","relative group"),c(Mt,"href","https://huggingface.co/models"),c(Mt,"rel","nofollow")},m(e,n){t(document.head,d),p(e,w,n),p(e,f,n),t(f,v),t(v,$),U(J,$,null),t(f,G),t(f,L),t(L,z),p(e,V,n),p(e,I,n),t(I,W),t(I,E),t(E,Z),t(I,R),t(I,X),t(X,F),t(I,y),t(I,_),t(_,k),t(I,N),t(I,C),t(C,P),t(I,yt),p(e,Ne,n),p(e,Y,n),t(Y,Jt),t(Y,Re),t(Re,oi),t(Y,si),t(Y,Ge),t(Ge,ni),t(Y,ci),p(e,Nl,n),p(e,gt,n),t(gt,pi),p(e,Rl,n),p(e,D,n),t(D,ui),t(D,Le),t(Le,mi),t(D,di),t(D,Ve),t(Ve,fi),t(D,hi),p(e,Gl,n),p(e,H,n),t(H,Mi),t(H,Fe),t(Fe,vi),t(H,_i),t(H,Be),t(Be,wi),t(H,yi),p(e,Ll,n),p(e,le,n),t(le,me),t(me,ha),U(Se,ha,null),t(le,Ji),t(le,Ma),t(Ma,gi),p(e,Vl,n),p(e,de,n),t(de,Ti),t(de,va),t(va,Ui),t(de,bi),p(e,Fl,n),U(ke,e,n),p(e,Bl,n),p(e,Tt,n),t(Tt,Ai),p(e,Sl,n),p(e,fe,n),t(fe,_a),t(_a,ji),t(fe,Ii),t(fe,h),t(h,wa),t(wa,Ut),t(Ut,Ei),t(h,$i),t(h,ya),t(ya,bt),t(bt,Xi),t(h,Ci),t(h,Ja),t(Ja,At),t(At,zi),t(h,Wi),t(h,ga),t(ga,jt),t(jt,Zi),t(h,Ni),t(h,Ta),t(Ta,It),t(It,Ri),t(h,Gi),t(h,Ua),t(Ua,Et),t(Et,Li),t(h,Vi),t(h,ba),t(ba,$t),t($t,Fi),t(h,Bi),t(h,Aa),t(Aa,Xt),t(Xt,Si),t(h,ki),t(h,ja),t(ja,Ct),t(Ct,Yi),t(h,Pi),t(h,Ia),t(Ia,zt),t(zt,xi),t(h,Qi),t(h,Ea),t(Ea,Wt),t(Wt,Di),t(h,Hi),t(h,$a),t($a,Zt),t(Zt,qi),t(h,Oi),t(h,Xa),t(Xa,Nt),t(Nt,Ki),t(h,eo),t(h,Ca),t(Ca,Rt),t(Rt,to),t(h,ao),t(h,za),t(za,Gt),t(Gt,lo),t(h,ro),t(h,Wa),t(Wa,Lt),t(Lt,io),t(h,oo),t(h,Za),t(Za,Vt),t(Vt,so),t(h,no),t(h,Na),t(Na,Ft),t(Ft,co),t(h,po),t(h,Ra),t(Ra,Bt),t(Bt,uo),t(h,mo),t(h,Ga),t(Ga,St),t(St,fo),t(h,ho),t(h,La),t(La,kt),t(kt,Mo),t(h,vo),t(h,Va),t(Va,Yt),t(Yt,_o),t(h,wo),t(h,Fa),t(Fa,Pt),t(Pt,yo),t(h,Jo),t(h,Ba),t(Ba,xt),t(xt,go),t(h,To),t(h,Sa),t(Sa,Qt),t(Qt,Uo),t(h,bo),t(h,ka),t(ka,Dt),t(Dt,Ao),t(h,jo),t(h,Ya),t(Ya,Ht),t(Ht,Io),p(e,kl,n),p(e,qt,n),t(qt,Eo),p(e,Yl,n),U(Ye,e,n),p(e,Pl,n),p(e,Ot,n),t(Ot,$o),p(e,xl,n),U(Pe,e,n),p(e,Ql,n),p(e,re,n),t(re,he),t(he,Pa),U(xe,Pa,null),t(re,Xo),t(re,xa),t(xa,Co),p(e,Dl,n),U(Me,e,n),p(e,Hl,n),p(e,ie,n),t(ie,ve),t(ve,Qa),U(Qe,Qa,null),t(ie,zo),t(ie,Da),t(Da,Wo),p(e,ql,n),p(e,_e,n),t(_e,Zo),t(_e,De),t(De,No),t(_e,Ro),p(e,Ol,n),p(e,we,n),t(we,He),t(He,Go),t(He,Ha),t(Ha,Lo),t(He,Vo),t(we,Fo),t(we,qe),t(qe,Bo),t(qe,qa),t(qa,So),t(qe,ko),p(e,Kl,n),U(Oe,e,n),p(e,er,n),p(e,ye,n),t(ye,Yo),t(ye,Ke),t(Ke,Oa),t(Oa,Po),t(ye,xo),p(e,tr,n),p(e,oe,n),t(oe,Je),t(Je,Ka),U(et,Ka,null),t(oe,Qo),t(oe,el),t(el,Do),p(e,ar,n),U(ge,e,n),p(e,lr,n),p(e,se,n),t(se,Te),t(Te,tl),U(tt,tl,null),t(se,Ho),t(se,al),t(al,qo),p(e,rr,n),p(e,Ue,n),t(Ue,Oo),t(Ue,at),t(at,Ko),t(Ue,es),p(e,ir,n),p(e,be,n),t(be,ll),t(ll,ts),t(be,as),U(lt,be,null),p(e,or,n),p(e,x,n),t(x,ls),t(x,rl),t(rl,rs),t(x,is),t(x,il),t(il,os),t(x,ss),t(x,ol),t(ol,ns),t(x,cs),p(e,sr,n),U(rt,e,n),p(e,nr,n),p(e,Kt,n),t(Kt,ps),p(e,cr,n),U(it,e,n),p(e,pr,n),p(e,ea,n),t(ea,us),p(e,ur,n),U(ot,e,n),p(e,mr,n),p(e,ne,n),t(ne,Ae),t(Ae,sl),U(st,sl,null),t(ne,ms),t(ne,nl),t(nl,ds),p(e,dr,n),p(e,ta,n),t(ta,fs),p(e,fr,n),p(e,q,n),t(q,je),t(je,cl),t(cl,hs),t(je,Ms),t(je,pl),t(pl,vs),t(je,_s),t(q,ws),t(q,aa),t(aa,ul),t(ul,ys),t(aa,Js),t(q,gs),t(q,la),t(la,ml),t(ml,Ts),t(la,Us),p(e,hr,n),p(e,ra,n),t(ra,bs),p(e,Mr,n),U(nt,e,n),p(e,vr,n),p(e,ce,n),t(ce,Ie),t(Ie,dl),U(ct,dl,null),t(ce,As),t(ce,fl),t(fl,js),p(e,_r,n),p(e,ia,n),t(ia,Is),p(e,wr,n),p(e,O,n),t(O,hl),t(hl,Ml),t(Ml,Es),t(O,$s),t(O,vl),t(vl,_l),t(_l,Xs),t(O,Cs),t(O,wl),t(wl,yl),t(yl,zs),p(e,yr,n),U(pt,e,n),p(e,Jr,n),p(e,K,n),t(K,Ws),t(K,Jl),t(Jl,Zs),t(K,Ns),t(K,gl),t(gl,Rs),t(K,Gs),p(e,gr,n),U(ut,e,n),p(e,Tr,n),p(e,pe,n),t(pe,Ee),t(Ee,Tl),U(mt,Tl,null),t(pe,Ls),t(pe,Ul),t(Ul,Vs),p(e,Ur,n),p(e,oa,n),t(oa,Fs),p(e,br,n),p(e,Q,n),t(Q,Bs),t(Q,bl),t(bl,Ss),t(Q,ks),t(Q,Al),t(Al,Ys),t(Q,Ps),t(Q,jl),t(jl,xs),t(Q,Qs),p(e,Ar,n),U(dt,e,n),p(e,jr,n),p(e,$e,n),t($e,Ds),t($e,Il),t(Il,Hs),t($e,qs),p(e,Ir,n),U(ft,e,n),p(e,Er,n),p(e,ue,n),t(ue,Xe),t(Xe,El),U(ht,El,null),t(ue,Os),t(ue,$l),t($l,Ks),p(e,$r,n),p(e,Ce,n),t(Ce,en),t(Ce,Mt),t(Mt,tn),t(Ce,an),p(e,Xr,n),U(vt,e,n),p(e,Cr,n),p(e,ee,n),t(ee,ln),t(ee,Xl),t(Xl,rn),t(ee,on),t(ee,Cl),t(Cl,sn),t(ee,nn),p(e,zr,n),p(e,ze,n),t(ze,cn),t(ze,zl),t(zl,pn),t(ze,un),p(e,Wr,n),p(e,sa,n),t(sa,mn),p(e,Zr,n),U(_t,e,n),Nr=!0},p(e,[n]){const wt={};n&2&&(wt.$$scope={dirty:n,ctx:e}),Me.$set(wt);const Wl={};n&2&&(Wl.$$scope={dirty:n,ctx:e}),ge.$set(Wl)},i(e){Nr||(b(J.$$.fragment,e),b(Se.$$.fragment,e),b(ke.$$.fragment,e),b(Ye.$$.fragment,e),b(Pe.$$.fragment,e),b(xe.$$.fragment,e),b(Me.$$.fragment,e),b(Qe.$$.fragment,e),b(Oe.$$.fragment,e),b(et.$$.fragment,e),b(ge.$$.fragment,e),b(tt.$$.fragment,e),b(lt.$$.fragment,e),b(rt.$$.fragment,e),b(it.$$.fragment,e),b(ot.$$.fragment,e),b(st.$$.fragment,e),b(nt.$$.fragment,e),b(ct.$$.fragment,e),b(pt.$$.fragment,e),b(ut.$$.fragment,e),b(mt.$$.fragment,e),b(dt.$$.fragment,e),b(ft.$$.fragment,e),b(ht.$$.fragment,e),b(vt.$$.fragment,e),b(_t.$$.fragment,e),Nr=!0)},o(e){A(J.$$.fragment,e),A(Se.$$.fragment,e),A(ke.$$.fragment,e),A(Ye.$$.fragment,e),A(Pe.$$.fragment,e),A(xe.$$.fragment,e),A(Me.$$.fragment,e),A(Qe.$$.fragment,e),A(Oe.$$.fragment,e),A(et.$$.fragment,e),A(ge.$$.fragment,e),A(tt.$$.fragment,e),A(lt.$$.fragment,e),A(rt.$$.fragment,e),A(it.$$.fragment,e),A(ot.$$.fragment,e),A(st.$$.fragment,e),A(nt.$$.fragment,e),A(ct.$$.fragment,e),A(pt.$$.fragment,e),A(ut.$$.fragment,e),A(mt.$$.fragment,e),A(dt.$$.fragment,e),A(ft.$$.fragment,e),A(ht.$$.fragment,e),A(vt.$$.fragment,e),A(_t.$$.fragment,e),Nr=!1},d(e){a(d),e&&a(w),e&&a(f),j(J),e&&a(V),e&&a(I),e&&a(Ne),e&&a(Y),e&&a(Nl),e&&a(gt),e&&a(Rl),e&&a(D),e&&a(Gl),e&&a(H),e&&a(Ll),e&&a(le),j(Se),e&&a(Vl),e&&a(de),e&&a(Fl),j(ke,e),e&&a(Bl),e&&a(Tt),e&&a(Sl),e&&a(fe),e&&a(kl),e&&a(qt),e&&a(Yl),j(Ye,e),e&&a(Pl),e&&a(Ot),e&&a(xl),j(Pe,e),e&&a(Ql),e&&a(re),j(xe),e&&a(Dl),j(Me,e),e&&a(Hl),e&&a(ie),j(Qe),e&&a(ql),e&&a(_e),e&&a(Ol),e&&a(we),e&&a(Kl),j(Oe,e),e&&a(er),e&&a(ye),e&&a(tr),e&&a(oe),j(et),e&&a(ar),j(ge,e),e&&a(lr),e&&a(se),j(tt),e&&a(rr),e&&a(Ue),e&&a(ir),e&&a(be),j(lt),e&&a(or),e&&a(x),e&&a(sr),j(rt,e),e&&a(nr),e&&a(Kt),e&&a(cr),j(it,e),e&&a(pr),e&&a(ea),e&&a(ur),j(ot,e),e&&a(mr),e&&a(ne),j(st),e&&a(dr),e&&a(ta),e&&a(fr),e&&a(q),e&&a(hr),e&&a(ra),e&&a(Mr),j(nt,e),e&&a(vr),e&&a(ce),j(ct),e&&a(_r),e&&a(ia),e&&a(wr),e&&a(O),e&&a(yr),j(pt,e),e&&a(Jr),e&&a(K),e&&a(gr),j(ut,e),e&&a(Tr),e&&a(pe),j(mt),e&&a(Ur),e&&a(oa),e&&a(br),e&&a(Q),e&&a(Ar),j(dt,e),e&&a(jr),e&&a($e),e&&a(Ir),j(ft,e),e&&a(Er),e&&a(ue),j(ht),e&&a($r),e&&a(Ce),e&&a(Xr),j(vt,e),e&&a(Cr),e&&a(ee),e&&a(zr),e&&a(ze),e&&a(Wr),e&&a(sa),e&&a(Zr),j(_t,e)}}}const ru={local:"addestramento-con-script",sections:[{local:"installazione",title:"Installazione"},{local:"esegui-uno-script",title:"Esegui uno script"},{local:"addestramento-distribuito-e-precisione-mista",title:"Addestramento distribuito e precisione mista"},{local:"esegui-uno-script-su-tpu",title:"Esegui uno script su TPU"},{local:"esegui-uno-script-con-accelerate",title:"Esegui uno script con \u{1F917} Accelerate"},{local:"uso-di-un-dataset-personalizzato",title:"Uso di un dataset personalizzato"},{local:"testare-uno-script",title:"Testare uno script"},{local:"riavviare-addestramento-da-un-checkpoint",title:"Riavviare addestramento da un checkpoint"},{local:"condividi-il-tuo-modello",title:"Condividi il tuo modello"}],title:"Addestramento con script"};function iu(S){return Qp(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class uu extends kp{constructor(d){super();Yp(this,d,iu,lu,Pp,{})}}export{uu as default,ru as metadata};
