import{S as Ga,i as Xa,s as ja,e as r,k as _,w as u,t as l,M as Ua,c as a,d as o,m as f,a as s,x as h,h as n,b as c,G as t,g as i,y as d,q as v,o as T,B as E,v as Ka}from"../chunks/vendor-hf-doc-builder.js";import{T as Ma}from"../chunks/Tip-hf-doc-builder.js";import{I as U}from"../chunks/IconCopyLink-hf-doc-builder.js";import{C as fe}from"../chunks/CodeBlock-hf-doc-builder.js";function Va(Ao){let m,K,P,y,L,N,k,R,q,M,g;return{c(){m=r("p"),K=l("A partir da vers\xE3o 2.3.0 o script de convers\xE3o agora faz parte do transformers CLI ("),P=r("strong"),y=l("transformers-cli"),L=l(`) dispon\xEDvel em qualquer instala\xE7\xE3o
transformers >= 2.3.0.`),N=_(),k=r("p"),R=l("A documenta\xE7\xE3o abaixo reflete o formato do comando "),q=r("strong"),M=l("transformers-cli convert"),g=l(".")},l(A){m=a(A,"P",{});var b=s(m);K=n(b,"A partir da vers\xE3o 2.3.0 o script de convers\xE3o agora faz parte do transformers CLI ("),P=a(b,"STRONG",{});var Be=s(P);y=n(Be,"transformers-cli"),Be.forEach(o),L=n(b,`) dispon\xEDvel em qualquer instala\xE7\xE3o
transformers >= 2.3.0.`),b.forEach(o),N=f(A),k=a(A,"P",{});var V=s(k);R=n(V,"A documenta\xE7\xE3o abaixo reflete o formato do comando "),q=a(V,"STRONG",{});var me=s(q);M=n(me,"transformers-cli convert"),me.forEach(o),g=n(V,"."),V.forEach(o)},m(A,b){i(A,m,b),t(m,K),t(m,P),t(P,y),t(m,L),i(A,N,b),i(A,k,b),t(k,R),t(k,q),t(q,M),t(k,g)},d(A){A&&o(m),A&&o(N),A&&o(k)}}}function Ya(Ao){let m,K,P,y,L,N,k,R,q,M,g,A,b,Be,V,me,Y,bo,H,z,Ve,ue,$t,Ye,Pt,Oo,I,At,he,bt,Ot,de,yt,Nt,yo,$,kt,ze,gt,wt,Je,It,Ct,Qe,xt,Lt,Ge,Rt,qt,ve,Ht,St,No,O,Ft,We,Dt,Bt,Ze,Gt,Xt,eo,jt,Ut,oo,Kt,Mt,ko,J,Vt,to,Yt,zt,go,Q,Jt,ro,Qt,Wt,wo,Te,Io,W,Zt,Ee,er,or,Co,S,Z,ao,$e,tr,so,rr,xo,ee,ar,Pe,sr,lr,Lo,C,nr,lo,pr,ir,no,cr,_r,Ro,oe,fr,po,mr,ur,qo,Ae,Ho,te,hr,be,dr,vr,So,F,re,io,Oe,Tr,co,Er,Fo,ae,$r,ye,Pr,Ar,Do,Ne,Bo,D,se,_o,ke,br,fo,Or,Go,le,yr,ge,Nr,kr,Xo,we,jo,B,ne,mo,Ie,gr,uo,wr,Uo,pe,Ir,Ce,Cr,xr,Ko,xe,Mo,G,ie,ho,Le,Lr,vo,Rr,Vo,Xe,qr,Yo,Re,zo,X,ce,To,qe,Hr,Eo,Sr,Jo,je,Fr,Qo,He,Wo,j,_e,$o,Se,Dr,Po,Br,Zo,Ue,Gr,et,Fe,ot;return N=new U({}),Y=new Ma({props:{$$slots:{default:[Va]},$$scope:{ctx:Ao}}}),ue=new U({}),Te=new fe({props:{code:`export BERT_BASE_DIR=/path/to/bert/uncased_L-12_H-768_A-12

transformers-cli convert --model_type bert \\
  --tf_checkpoint $BERT_BASE_DIR/bert_model.ckpt \\
  --config $BERT_BASE_DIR/bert_config.json \\
  --pytorch_dump_output $BERT_BASE_DIR/pytorch_model.bin`,highlighted:`<span class="hljs-built_in">export</span> BERT_BASE_DIR=/path/to/bert/uncased_L-12_H-768_A-12

transformers-cli convert --model_type bert \\
  --tf_checkpoint <span class="hljs-variable">$BERT_BASE_DIR</span>/bert_model.ckpt \\
  --config <span class="hljs-variable">$BERT_BASE_DIR</span>/bert_config.json \\
  --pytorch_dump_output <span class="hljs-variable">$BERT_BASE_DIR</span>/pytorch_model.bin`}}),$e=new U({}),Ae=new fe({props:{code:`export ALBERT_BASE_DIR=/path/to/albert/albert_base

transformers-cli convert --model_type albert \\
  --tf_checkpoint $ALBERT_BASE_DIR/model.ckpt-best \\
  --config $ALBERT_BASE_DIR/albert_config.json \\
  --pytorch_dump_output $ALBERT_BASE_DIR/pytorch_model.bin`,highlighted:`<span class="hljs-built_in">export</span> ALBERT_BASE_DIR=/path/to/albert/albert_base

transformers-cli convert --model_type albert \\
  --tf_checkpoint <span class="hljs-variable">$ALBERT_BASE_DIR</span>/model.ckpt-best \\
  --config <span class="hljs-variable">$ALBERT_BASE_DIR</span>/albert_config.json \\
  --pytorch_dump_output <span class="hljs-variable">$ALBERT_BASE_DIR</span>/pytorch_model.bin`}}),Oe=new U({}),Ne=new fe({props:{code:`export OPENAI_GPT_CHECKPOINT_FOLDER_PATH=/path/to/openai/pretrained/numpy/weights

transformers-cli convert --model_type gpt \\
  --tf_checkpoint $OPENAI_GPT_CHECKPOINT_FOLDER_PATH \\
  --pytorch_dump_output $PYTORCH_DUMP_OUTPUT \\
  [--config OPENAI_GPT_CONFIG] \\
  [--finetuning_task_name OPENAI_GPT_FINETUNED_TASK] \\`,highlighted:`<span class="hljs-built_in">export</span> OPENAI_GPT_CHECKPOINT_FOLDER_PATH=/path/to/openai/pretrained/numpy/weights

transformers-cli convert --model_type gpt \\
  --tf_checkpoint <span class="hljs-variable">$OPENAI_GPT_CHECKPOINT_FOLDER_PATH</span> \\
  --pytorch_dump_output <span class="hljs-variable">$PYTORCH_DUMP_OUTPUT</span> \\
  [--config OPENAI_GPT_CONFIG] \\
  [--finetuning_task_name OPENAI_GPT_FINETUNED_TASK] \\`}}),ke=new U({}),we=new fe({props:{code:`export OPENAI_GPT2_CHECKPOINT_PATH=/path/to/gpt2/pretrained/weights

transformers-cli convert --model_type gpt2 \\
  --tf_checkpoint $OPENAI_GPT2_CHECKPOINT_PATH \\
  --pytorch_dump_output $PYTORCH_DUMP_OUTPUT \\
  [--config OPENAI_GPT2_CONFIG] \\
  [--finetuning_task_name OPENAI_GPT2_FINETUNED_TASK]`,highlighted:`<span class="hljs-built_in">export</span> OPENAI_GPT2_CHECKPOINT_PATH=/path/to/gpt2/pretrained/weights

transformers-cli convert --model_type gpt2 \\
  --tf_checkpoint <span class="hljs-variable">$OPENAI_GPT2_CHECKPOINT_PATH</span> \\
  --pytorch_dump_output <span class="hljs-variable">$PYTORCH_DUMP_OUTPUT</span> \\
  [--config OPENAI_GPT2_CONFIG] \\
  [--finetuning_task_name OPENAI_GPT2_FINETUNED_TASK]`}}),Ie=new U({}),xe=new fe({props:{code:`export TRANSFO_XL_CHECKPOINT_FOLDER_PATH=/path/to/transfo/xl/checkpoint

transformers-cli convert --model_type transfo_xl \\
  --tf_checkpoint $TRANSFO_XL_CHECKPOINT_FOLDER_PATH \\
  --pytorch_dump_output $PYTORCH_DUMP_OUTPUT \\
  [--config TRANSFO_XL_CONFIG] \\
  [--finetuning_task_name TRANSFO_XL_FINETUNED_TASK]`,highlighted:`<span class="hljs-built_in">export</span> TRANSFO_XL_CHECKPOINT_FOLDER_PATH=/path/to/transfo/xl/checkpoint

transformers-cli convert --model_type transfo_xl \\
  --tf_checkpoint <span class="hljs-variable">$TRANSFO_XL_CHECKPOINT_FOLDER_PATH</span> \\
  --pytorch_dump_output <span class="hljs-variable">$PYTORCH_DUMP_OUTPUT</span> \\
  [--config TRANSFO_XL_CONFIG] \\
  [--finetuning_task_name TRANSFO_XL_FINETUNED_TASK]`}}),Le=new U({}),Re=new fe({props:{code:`export TRANSFO_XL_CHECKPOINT_PATH=/path/to/xlnet/checkpoint
export TRANSFO_XL_CONFIG_PATH=/path/to/xlnet/config

transformers-cli convert --model_type xlnet \\
  --tf_checkpoint $TRANSFO_XL_CHECKPOINT_PATH \\
  --config $TRANSFO_XL_CONFIG_PATH \\
  --pytorch_dump_output $PYTORCH_DUMP_OUTPUT \\
  [--finetuning_task_name XLNET_FINETUNED_TASK] \\`,highlighted:`<span class="hljs-built_in">export</span> TRANSFO_XL_CHECKPOINT_PATH=/path/to/xlnet/checkpoint
<span class="hljs-built_in">export</span> TRANSFO_XL_CONFIG_PATH=/path/to/xlnet/config

transformers-cli convert --model_type xlnet \\
  --tf_checkpoint <span class="hljs-variable">$TRANSFO_XL_CHECKPOINT_PATH</span> \\
  --config <span class="hljs-variable">$TRANSFO_XL_CONFIG_PATH</span> \\
  --pytorch_dump_output <span class="hljs-variable">$PYTORCH_DUMP_OUTPUT</span> \\
  [--finetuning_task_name XLNET_FINETUNED_TASK] \\`}}),qe=new U({}),He=new fe({props:{code:`export XLM_CHECKPOINT_PATH=/path/to/xlm/checkpoint

transformers-cli convert --model_type xlm \\
  --tf_checkpoint $XLM_CHECKPOINT_PATH \\
  --pytorch_dump_output $PYTORCH_DUMP_OUTPUT
 [--config XML_CONFIG] \\
 [--finetuning_task_name XML_FINETUNED_TASK]`,highlighted:`<span class="hljs-built_in">export</span> XLM_CHECKPOINT_PATH=/path/to/xlm/checkpoint

transformers-cli convert --model_type xlm \\
  --tf_checkpoint <span class="hljs-variable">$XLM_CHECKPOINT_PATH</span> \\
  --pytorch_dump_output <span class="hljs-variable">$PYTORCH_DUMP_OUTPUT</span>
 [--config XML_CONFIG] \\
 [--finetuning_task_name XML_FINETUNED_TASK]`}}),Se=new U({}),Fe=new fe({props:{code:`export T5=/path/to/t5/uncased_L-12_H-768_A-12

transformers-cli convert --model_type t5 \\
  --tf_checkpoint $T5/t5_model.ckpt \\
  --config $T5/t5_config.json \\
  --pytorch_dump_output $T5/pytorch_model.bin`,highlighted:`<span class="hljs-built_in">export</span> T5=/path/to/t5/uncased_L-12_H-768_A-12

transformers-cli convert --model_type t5 \\
  --tf_checkpoint <span class="hljs-variable">$T5</span>/t5_model.ckpt \\
  --config <span class="hljs-variable">$T5</span>/t5_config.json \\
  --pytorch_dump_output <span class="hljs-variable">$T5</span>/pytorch_model.bin`}}),{c(){m=r("meta"),K=_(),P=r("h1"),y=r("a"),L=r("span"),u(N.$$.fragment),k=_(),R=r("span"),q=l("Convertendo checkpoints do TensorFlow para Pytorch"),M=_(),g=r("p"),A=l(`Uma interface de linha de comando \xE9 fornecida para converter os checkpoints originais Bert/GPT/GPT-2/Transformer-XL/XLNet/XLM em modelos
que podem ser carregados usando os m\xE9todos `),b=r("code"),Be=l("from_pretrained"),V=l(" da biblioteca."),me=_(),u(Y.$$.fragment),bo=_(),H=r("h2"),z=r("a"),Ve=r("span"),u(ue.$$.fragment),$t=_(),Ye=r("span"),Pt=l("BERT"),Oo=_(),I=r("p"),At=l("Voc\xEA pode converter qualquer checkpoint do BERT em TensorFlow (em particular "),he=r("a"),bt=l("os modelos pr\xE9-treinados lan\xE7ados pelo Google"),Ot=l(`) em um arquivo PyTorch usando um
`),de=r("a"),yt=l("convert_bert_original_tf_checkpoint_to_pytorch.py"),Nt=l(" script."),yo=_(),$=r("p"),kt=l("Esta Interface de Linha de Comando (CLI) recebe como entrada um checkpoint do TensorFlow (tr\xEAs arquivos come\xE7ando com "),ze=r("code"),gt=l("bert_model.ckpt"),wt=l(`) e o
arquivo de configura\xE7\xE3o (`),Je=r("code"),It=l("bert_config.json"),Ct=l(`), e ent\xE3o cria um modelo PyTorch para esta configura\xE7\xE3o, carrega os pesos
do checkpoint do TensorFlow no modelo PyTorch e salva o modelo resultante em um arquivo PyTorch que pode
ser importado usando `),Qe=r("code"),xt=l("from_pretrained()"),Lt=l(" (veja o exemplo em "),Ge=r("a"),Rt=l("quicktour"),qt=l(" , "),ve=r("a"),Ht=l("run_glue.py"),St=l(" )."),No=_(),O=r("p"),Ft=l("Voc\xEA s\xF3 precisa executar este script de convers\xE3o "),We=r("strong"),Dt=l("uma vez"),Bt=l(` para obter um modelo PyTorch. Voc\xEA pode ent\xE3o desconsiderar o checkpoint em
TensorFlow (os tr\xEAs arquivos come\xE7ando com `),Ze=r("code"),Gt=l("bert_model.ckpt"),Xt=l(`), mas certifique-se de manter o arquivo de configura\xE7\xE3o (\\
`),eo=r("code"),jt=l("bert_config.json"),Ut=l(") e o arquivo de vocabul\xE1rio ("),oo=r("code"),Kt=l("vocab.txt"),Mt=l("), pois eles tamb\xE9m s\xE3o necess\xE1rios para o modelo PyTorch."),ko=_(),J=r("p"),Vt=l("Para executar este script de convers\xE3o espec\xEDfico, voc\xEA precisar\xE1 ter o TensorFlow e o PyTorch instalados ("),to=r("code"),Yt=l("pip install tensorflow"),zt=l("). O resto do reposit\xF3rio requer apenas o PyTorch."),go=_(),Q=r("p"),Jt=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo "),ro=r("code"),Qt=l("BERT-Base Uncased"),Wt=l(" pr\xE9-treinado:"),wo=_(),u(Te.$$.fragment),Io=_(),W=r("p"),Zt=l("Voc\xEA pode baixar os modelos pr\xE9-treinados do Google para a convers\xE3o "),Ee=r("a"),er=l("aqui"),or=l("."),Co=_(),S=r("h2"),Z=r("a"),ao=r("span"),u($e.$$.fragment),tr=_(),so=r("span"),rr=l("ALBERT"),xo=_(),ee=r("p"),ar=l(`Converta os checkpoints do modelo ALBERT em TensorFlow para PyTorch usando o
`),Pe=r("a"),sr=l("convert_albert_original_tf_checkpoint_to_pytorch.py"),lr=l(" script."),Lo=_(),C=r("p"),nr=l("A Interface de Linha de Comando (CLI) recebe como entrada um checkpoint do TensorFlow (tr\xEAs arquivos come\xE7ando com "),lo=r("code"),pr=l("model.ckpt-best"),ir=l(`) e o
arquivo de configura\xE7\xE3o (`),no=r("code"),cr=l("albert_config.json"),_r=l(`), ent\xE3o cria e salva um modelo PyTorch. Para executar esta convers\xE3o, voc\xEA
precisa ter o TensorFlow e o PyTorch instalados.`),Ro=_(),oe=r("p"),fr=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para o modelo "),po=r("code"),mr=l("ALBERT Base"),ur=l(" pr\xE9-treinado:"),qo=_(),u(Ae.$$.fragment),Ho=_(),te=r("p"),hr=l("Voc\xEA pode baixar os modelos pr\xE9-treinados do Google para a convers\xE3o "),be=r("a"),dr=l("aqui"),vr=l("."),So=_(),F=r("h2"),re=r("a"),io=r("span"),u(Oe.$$.fragment),Tr=_(),co=r("span"),Er=l("OpenAI GPT"),Fo=_(),ae=r("p"),$r=l(`Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo OpenAI GPT pr\xE9-treinado, supondo que seu checkpoint NumPy
foi salvo com o mesmo formato do modelo pr\xE9-treinado OpenAI (veja `),ye=r("a"),Pr=l("aqui"),Ar=l(`\\
)`),Do=_(),u(Ne.$$.fragment),Bo=_(),D=r("h2"),se=r("a"),_o=r("span"),u(ke.$$.fragment),br=_(),fo=r("span"),Or=l("OpenAI GPT-2"),Go=_(),le=r("p"),yr=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo OpenAI GPT-2 pr\xE9-treinado (consulte "),ge=r("a"),Nr=l("aqui"),kr=l(")"),Xo=_(),u(we.$$.fragment),jo=_(),B=r("h2"),ne=r("a"),mo=r("span"),u(Ie.$$.fragment),gr=_(),uo=r("span"),wr=l("Transformer-XL"),Uo=_(),pe=r("p"),Ir=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo Transformer-XL pr\xE9-treinado (consulte "),Ce=r("a"),Cr=l("aqui"),xr=l(")"),Ko=_(),u(xe.$$.fragment),Mo=_(),G=r("h2"),ie=r("a"),ho=r("span"),u(Le.$$.fragment),Lr=_(),vo=r("span"),Rr=l("XLNet"),Vo=_(),Xe=r("p"),qr=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo XLNet pr\xE9-treinado:"),Yo=_(),u(Re.$$.fragment),zo=_(),X=r("h2"),ce=r("a"),To=r("span"),u(qe.$$.fragment),Hr=_(),Eo=r("span"),Sr=l("XLM"),Jo=_(),je=r("p"),Fr=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo XLM pr\xE9-treinado:"),Qo=_(),u(He.$$.fragment),Wo=_(),j=r("h2"),_e=r("a"),$o=r("span"),u(Se.$$.fragment),Dr=_(),Po=r("span"),Br=l("T5"),Zo=_(),Ue=r("p"),Gr=l("Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo T5 pr\xE9-treinado:"),et=_(),u(Fe.$$.fragment),this.h()},l(e){const p=Ua('[data-svelte="svelte-1phssyn"]',document.head);m=a(p,"META",{name:!0,content:!0}),p.forEach(o),K=f(e),P=a(e,"H1",{class:!0});var De=s(P);y=a(De,"A",{id:!0,class:!0,href:!0});var Xr=s(y);L=a(Xr,"SPAN",{});var jr=s(L);h(N.$$.fragment,jr),jr.forEach(o),Xr.forEach(o),k=f(De),R=a(De,"SPAN",{});var Ur=s(R);q=n(Ur,"Convertendo checkpoints do TensorFlow para Pytorch"),Ur.forEach(o),De.forEach(o),M=f(e),g=a(e,"P",{});var tt=s(g);A=n(tt,`Uma interface de linha de comando \xE9 fornecida para converter os checkpoints originais Bert/GPT/GPT-2/Transformer-XL/XLNet/XLM em modelos
que podem ser carregados usando os m\xE9todos `),b=a(tt,"CODE",{});var Kr=s(b);Be=n(Kr,"from_pretrained"),Kr.forEach(o),V=n(tt," da biblioteca."),tt.forEach(o),me=f(e),h(Y.$$.fragment,e),bo=f(e),H=a(e,"H2",{class:!0});var rt=s(H);z=a(rt,"A",{id:!0,class:!0,href:!0});var Mr=s(z);Ve=a(Mr,"SPAN",{});var Vr=s(Ve);h(ue.$$.fragment,Vr),Vr.forEach(o),Mr.forEach(o),$t=f(rt),Ye=a(rt,"SPAN",{});var Yr=s(Ye);Pt=n(Yr,"BERT"),Yr.forEach(o),rt.forEach(o),Oo=f(e),I=a(e,"P",{});var Ke=s(I);At=n(Ke,"Voc\xEA pode converter qualquer checkpoint do BERT em TensorFlow (em particular "),he=a(Ke,"A",{href:!0,rel:!0});var zr=s(he);bt=n(zr,"os modelos pr\xE9-treinados lan\xE7ados pelo Google"),zr.forEach(o),Ot=n(Ke,`) em um arquivo PyTorch usando um
`),de=a(Ke,"A",{href:!0,rel:!0});var Jr=s(de);yt=n(Jr,"convert_bert_original_tf_checkpoint_to_pytorch.py"),Jr.forEach(o),Nt=n(Ke," script."),Ke.forEach(o),yo=f(e),$=a(e,"P",{});var w=s($);kt=n(w,"Esta Interface de Linha de Comando (CLI) recebe como entrada um checkpoint do TensorFlow (tr\xEAs arquivos come\xE7ando com "),ze=a(w,"CODE",{});var Qr=s(ze);gt=n(Qr,"bert_model.ckpt"),Qr.forEach(o),wt=n(w,`) e o
arquivo de configura\xE7\xE3o (`),Je=a(w,"CODE",{});var Wr=s(Je);It=n(Wr,"bert_config.json"),Wr.forEach(o),Ct=n(w,`), e ent\xE3o cria um modelo PyTorch para esta configura\xE7\xE3o, carrega os pesos
do checkpoint do TensorFlow no modelo PyTorch e salva o modelo resultante em um arquivo PyTorch que pode
ser importado usando `),Qe=a(w,"CODE",{});var Zr=s(Qe);xt=n(Zr,"from_pretrained()"),Zr.forEach(o),Lt=n(w," (veja o exemplo em "),Ge=a(w,"A",{href:!0});var ea=s(Ge);Rt=n(ea,"quicktour"),ea.forEach(o),qt=n(w," , "),ve=a(w,"A",{href:!0,rel:!0});var oa=s(ve);Ht=n(oa,"run_glue.py"),oa.forEach(o),St=n(w," )."),w.forEach(o),No=f(e),O=a(e,"P",{});var x=s(O);Ft=n(x,"Voc\xEA s\xF3 precisa executar este script de convers\xE3o "),We=a(x,"STRONG",{});var ta=s(We);Dt=n(ta,"uma vez"),ta.forEach(o),Bt=n(x,` para obter um modelo PyTorch. Voc\xEA pode ent\xE3o desconsiderar o checkpoint em
TensorFlow (os tr\xEAs arquivos come\xE7ando com `),Ze=a(x,"CODE",{});var ra=s(Ze);Gt=n(ra,"bert_model.ckpt"),ra.forEach(o),Xt=n(x,`), mas certifique-se de manter o arquivo de configura\xE7\xE3o (\\
`),eo=a(x,"CODE",{});var aa=s(eo);jt=n(aa,"bert_config.json"),aa.forEach(o),Ut=n(x,") e o arquivo de vocabul\xE1rio ("),oo=a(x,"CODE",{});var sa=s(oo);Kt=n(sa,"vocab.txt"),sa.forEach(o),Mt=n(x,"), pois eles tamb\xE9m s\xE3o necess\xE1rios para o modelo PyTorch."),x.forEach(o),ko=f(e),J=a(e,"P",{});var at=s(J);Vt=n(at,"Para executar este script de convers\xE3o espec\xEDfico, voc\xEA precisar\xE1 ter o TensorFlow e o PyTorch instalados ("),to=a(at,"CODE",{});var la=s(to);Yt=n(la,"pip install tensorflow"),la.forEach(o),zt=n(at,"). O resto do reposit\xF3rio requer apenas o PyTorch."),at.forEach(o),go=f(e),Q=a(e,"P",{});var st=s(Q);Jt=n(st,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo "),ro=a(st,"CODE",{});var na=s(ro);Qt=n(na,"BERT-Base Uncased"),na.forEach(o),Wt=n(st," pr\xE9-treinado:"),st.forEach(o),wo=f(e),h(Te.$$.fragment,e),Io=f(e),W=a(e,"P",{});var lt=s(W);Zt=n(lt,"Voc\xEA pode baixar os modelos pr\xE9-treinados do Google para a convers\xE3o "),Ee=a(lt,"A",{href:!0,rel:!0});var pa=s(Ee);er=n(pa,"aqui"),pa.forEach(o),or=n(lt,"."),lt.forEach(o),Co=f(e),S=a(e,"H2",{class:!0});var nt=s(S);Z=a(nt,"A",{id:!0,class:!0,href:!0});var ia=s(Z);ao=a(ia,"SPAN",{});var ca=s(ao);h($e.$$.fragment,ca),ca.forEach(o),ia.forEach(o),tr=f(nt),so=a(nt,"SPAN",{});var _a=s(so);rr=n(_a,"ALBERT"),_a.forEach(o),nt.forEach(o),xo=f(e),ee=a(e,"P",{});var pt=s(ee);ar=n(pt,`Converta os checkpoints do modelo ALBERT em TensorFlow para PyTorch usando o
`),Pe=a(pt,"A",{href:!0,rel:!0});var fa=s(Pe);sr=n(fa,"convert_albert_original_tf_checkpoint_to_pytorch.py"),fa.forEach(o),lr=n(pt," script."),pt.forEach(o),Lo=f(e),C=a(e,"P",{});var Me=s(C);nr=n(Me,"A Interface de Linha de Comando (CLI) recebe como entrada um checkpoint do TensorFlow (tr\xEAs arquivos come\xE7ando com "),lo=a(Me,"CODE",{});var ma=s(lo);pr=n(ma,"model.ckpt-best"),ma.forEach(o),ir=n(Me,`) e o
arquivo de configura\xE7\xE3o (`),no=a(Me,"CODE",{});var ua=s(no);cr=n(ua,"albert_config.json"),ua.forEach(o),_r=n(Me,`), ent\xE3o cria e salva um modelo PyTorch. Para executar esta convers\xE3o, voc\xEA
precisa ter o TensorFlow e o PyTorch instalados.`),Me.forEach(o),Ro=f(e),oe=a(e,"P",{});var it=s(oe);fr=n(it,"Aqui est\xE1 um exemplo do processo de convers\xE3o para o modelo "),po=a(it,"CODE",{});var ha=s(po);mr=n(ha,"ALBERT Base"),ha.forEach(o),ur=n(it," pr\xE9-treinado:"),it.forEach(o),qo=f(e),h(Ae.$$.fragment,e),Ho=f(e),te=a(e,"P",{});var ct=s(te);hr=n(ct,"Voc\xEA pode baixar os modelos pr\xE9-treinados do Google para a convers\xE3o "),be=a(ct,"A",{href:!0,rel:!0});var da=s(be);dr=n(da,"aqui"),da.forEach(o),vr=n(ct,"."),ct.forEach(o),So=f(e),F=a(e,"H2",{class:!0});var _t=s(F);re=a(_t,"A",{id:!0,class:!0,href:!0});var va=s(re);io=a(va,"SPAN",{});var Ta=s(io);h(Oe.$$.fragment,Ta),Ta.forEach(o),va.forEach(o),Tr=f(_t),co=a(_t,"SPAN",{});var Ea=s(co);Er=n(Ea,"OpenAI GPT"),Ea.forEach(o),_t.forEach(o),Fo=f(e),ae=a(e,"P",{});var ft=s(ae);$r=n(ft,`Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo OpenAI GPT pr\xE9-treinado, supondo que seu checkpoint NumPy
foi salvo com o mesmo formato do modelo pr\xE9-treinado OpenAI (veja `),ye=a(ft,"A",{href:!0,rel:!0});var $a=s(ye);Pr=n($a,"aqui"),$a.forEach(o),Ar=n(ft,`\\
)`),ft.forEach(o),Do=f(e),h(Ne.$$.fragment,e),Bo=f(e),D=a(e,"H2",{class:!0});var mt=s(D);se=a(mt,"A",{id:!0,class:!0,href:!0});var Pa=s(se);_o=a(Pa,"SPAN",{});var Aa=s(_o);h(ke.$$.fragment,Aa),Aa.forEach(o),Pa.forEach(o),br=f(mt),fo=a(mt,"SPAN",{});var ba=s(fo);Or=n(ba,"OpenAI GPT-2"),ba.forEach(o),mt.forEach(o),Go=f(e),le=a(e,"P",{});var ut=s(le);yr=n(ut,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo OpenAI GPT-2 pr\xE9-treinado (consulte "),ge=a(ut,"A",{href:!0,rel:!0});var Oa=s(ge);Nr=n(Oa,"aqui"),Oa.forEach(o),kr=n(ut,")"),ut.forEach(o),Xo=f(e),h(we.$$.fragment,e),jo=f(e),B=a(e,"H2",{class:!0});var ht=s(B);ne=a(ht,"A",{id:!0,class:!0,href:!0});var ya=s(ne);mo=a(ya,"SPAN",{});var Na=s(mo);h(Ie.$$.fragment,Na),Na.forEach(o),ya.forEach(o),gr=f(ht),uo=a(ht,"SPAN",{});var ka=s(uo);wr=n(ka,"Transformer-XL"),ka.forEach(o),ht.forEach(o),Uo=f(e),pe=a(e,"P",{});var dt=s(pe);Ir=n(dt,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo Transformer-XL pr\xE9-treinado (consulte "),Ce=a(dt,"A",{href:!0,rel:!0});var ga=s(Ce);Cr=n(ga,"aqui"),ga.forEach(o),xr=n(dt,")"),dt.forEach(o),Ko=f(e),h(xe.$$.fragment,e),Mo=f(e),G=a(e,"H2",{class:!0});var vt=s(G);ie=a(vt,"A",{id:!0,class:!0,href:!0});var wa=s(ie);ho=a(wa,"SPAN",{});var Ia=s(ho);h(Le.$$.fragment,Ia),Ia.forEach(o),wa.forEach(o),Lr=f(vt),vo=a(vt,"SPAN",{});var Ca=s(vo);Rr=n(Ca,"XLNet"),Ca.forEach(o),vt.forEach(o),Vo=f(e),Xe=a(e,"P",{});var xa=s(Xe);qr=n(xa,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo XLNet pr\xE9-treinado:"),xa.forEach(o),Yo=f(e),h(Re.$$.fragment,e),zo=f(e),X=a(e,"H2",{class:!0});var Tt=s(X);ce=a(Tt,"A",{id:!0,class:!0,href:!0});var La=s(ce);To=a(La,"SPAN",{});var Ra=s(To);h(qe.$$.fragment,Ra),Ra.forEach(o),La.forEach(o),Hr=f(Tt),Eo=a(Tt,"SPAN",{});var qa=s(Eo);Sr=n(qa,"XLM"),qa.forEach(o),Tt.forEach(o),Jo=f(e),je=a(e,"P",{});var Ha=s(je);Fr=n(Ha,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo XLM pr\xE9-treinado:"),Ha.forEach(o),Qo=f(e),h(He.$$.fragment,e),Wo=f(e),j=a(e,"H2",{class:!0});var Et=s(j);_e=a(Et,"A",{id:!0,class:!0,href:!0});var Sa=s(_e);$o=a(Sa,"SPAN",{});var Fa=s($o);h(Se.$$.fragment,Fa),Fa.forEach(o),Sa.forEach(o),Dr=f(Et),Po=a(Et,"SPAN",{});var Da=s(Po);Br=n(Da,"T5"),Da.forEach(o),Et.forEach(o),Zo=f(e),Ue=a(e,"P",{});var Ba=s(Ue);Gr=n(Ba,"Aqui est\xE1 um exemplo do processo de convers\xE3o para um modelo T5 pr\xE9-treinado:"),Ba.forEach(o),et=f(e),h(Fe.$$.fragment,e),this.h()},h(){c(m,"name","hf:doc:metadata"),c(m,"content",JSON.stringify(za)),c(y,"id","convertendo-checkpoints-do-tensorflow-para-pytorch"),c(y,"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(y,"href","#convertendo-checkpoints-do-tensorflow-para-pytorch"),c(P,"class","relative group"),c(z,"id","bert"),c(z,"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(z,"href","#bert"),c(H,"class","relative group"),c(he,"href","https://github.com/google-research/bert#pre-trained-models"),c(he,"rel","nofollow"),c(de,"href","https://github.com/huggingface/transformers/tree/main/src/transformers/models/bert/convert_bert_original_tf_checkpoint_to_pytorch.py"),c(de,"rel","nofollow"),c(Ge,"href","quicktour"),c(ve,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-classification/run_glue.py"),c(ve,"rel","nofollow"),c(Ee,"href","https://github.com/google-research/bert#pre-trained-models"),c(Ee,"rel","nofollow"),c(Z,"id","albert"),c(Z,"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(Z,"href","#albert"),c(S,"class","relative group"),c(Pe,"href","https://github.com/huggingface/transformers/tree/main/src/transformers/models/albert/convert_albert_original_tf_checkpoint_to_pytorch.py"),c(Pe,"rel","nofollow"),c(be,"href","https://github.com/google-research/albert#pre-trained-models"),c(be,"rel","nofollow"),c(re,"id","openai-gpt"),c(re,"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(re,"href","#openai-gpt"),c(F,"class","relative group"),c(ye,"href","https://github.com/openai/finetune-transformer-lm"),c(ye,"rel","nofollow"),c(se,"id","openai-gpt2"),c(se,"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(se,"href","#openai-gpt2"),c(D,"class","relative group"),c(ge,"href","https://github.com/openai/gpt-2"),c(ge,"rel","nofollow"),c(ne,"id","transformerxl"),c(ne,"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(ne,"href","#transformerxl"),c(B,"class","relative group"),c(Ce,"href","https://github.com/kimiyoung/transformer-xl/tree/master/tf#obtain-and-evaluate-pretrained-modelos-sota"),c(Ce,"rel","nofollow"),c(ie,"id","xlnet"),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","#xlnet"),c(G,"class","relative group"),c(ce,"id","xlm"),c(ce,"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(ce,"href","#xlm"),c(X,"class","relative group"),c(_e,"id","t5"),c(_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"),c(_e,"href","#t5"),c(j,"class","relative group")},m(e,p){t(document.head,m),i(e,K,p),i(e,P,p),t(P,y),t(y,L),d(N,L,null),t(P,k),t(P,R),t(R,q),i(e,M,p),i(e,g,p),t(g,A),t(g,b),t(b,Be),t(g,V),i(e,me,p),d(Y,e,p),i(e,bo,p),i(e,H,p),t(H,z),t(z,Ve),d(ue,Ve,null),t(H,$t),t(H,Ye),t(Ye,Pt),i(e,Oo,p),i(e,I,p),t(I,At),t(I,he),t(he,bt),t(I,Ot),t(I,de),t(de,yt),t(I,Nt),i(e,yo,p),i(e,$,p),t($,kt),t($,ze),t(ze,gt),t($,wt),t($,Je),t(Je,It),t($,Ct),t($,Qe),t(Qe,xt),t($,Lt),t($,Ge),t(Ge,Rt),t($,qt),t($,ve),t(ve,Ht),t($,St),i(e,No,p),i(e,O,p),t(O,Ft),t(O,We),t(We,Dt),t(O,Bt),t(O,Ze),t(Ze,Gt),t(O,Xt),t(O,eo),t(eo,jt),t(O,Ut),t(O,oo),t(oo,Kt),t(O,Mt),i(e,ko,p),i(e,J,p),t(J,Vt),t(J,to),t(to,Yt),t(J,zt),i(e,go,p),i(e,Q,p),t(Q,Jt),t(Q,ro),t(ro,Qt),t(Q,Wt),i(e,wo,p),d(Te,e,p),i(e,Io,p),i(e,W,p),t(W,Zt),t(W,Ee),t(Ee,er),t(W,or),i(e,Co,p),i(e,S,p),t(S,Z),t(Z,ao),d($e,ao,null),t(S,tr),t(S,so),t(so,rr),i(e,xo,p),i(e,ee,p),t(ee,ar),t(ee,Pe),t(Pe,sr),t(ee,lr),i(e,Lo,p),i(e,C,p),t(C,nr),t(C,lo),t(lo,pr),t(C,ir),t(C,no),t(no,cr),t(C,_r),i(e,Ro,p),i(e,oe,p),t(oe,fr),t(oe,po),t(po,mr),t(oe,ur),i(e,qo,p),d(Ae,e,p),i(e,Ho,p),i(e,te,p),t(te,hr),t(te,be),t(be,dr),t(te,vr),i(e,So,p),i(e,F,p),t(F,re),t(re,io),d(Oe,io,null),t(F,Tr),t(F,co),t(co,Er),i(e,Fo,p),i(e,ae,p),t(ae,$r),t(ae,ye),t(ye,Pr),t(ae,Ar),i(e,Do,p),d(Ne,e,p),i(e,Bo,p),i(e,D,p),t(D,se),t(se,_o),d(ke,_o,null),t(D,br),t(D,fo),t(fo,Or),i(e,Go,p),i(e,le,p),t(le,yr),t(le,ge),t(ge,Nr),t(le,kr),i(e,Xo,p),d(we,e,p),i(e,jo,p),i(e,B,p),t(B,ne),t(ne,mo),d(Ie,mo,null),t(B,gr),t(B,uo),t(uo,wr),i(e,Uo,p),i(e,pe,p),t(pe,Ir),t(pe,Ce),t(Ce,Cr),t(pe,xr),i(e,Ko,p),d(xe,e,p),i(e,Mo,p),i(e,G,p),t(G,ie),t(ie,ho),d(Le,ho,null),t(G,Lr),t(G,vo),t(vo,Rr),i(e,Vo,p),i(e,Xe,p),t(Xe,qr),i(e,Yo,p),d(Re,e,p),i(e,zo,p),i(e,X,p),t(X,ce),t(ce,To),d(qe,To,null),t(X,Hr),t(X,Eo),t(Eo,Sr),i(e,Jo,p),i(e,je,p),t(je,Fr),i(e,Qo,p),d(He,e,p),i(e,Wo,p),i(e,j,p),t(j,_e),t(_e,$o),d(Se,$o,null),t(j,Dr),t(j,Po),t(Po,Br),i(e,Zo,p),i(e,Ue,p),t(Ue,Gr),i(e,et,p),d(Fe,e,p),ot=!0},p(e,[p]){const De={};p&2&&(De.$$scope={dirty:p,ctx:e}),Y.$set(De)},i(e){ot||(v(N.$$.fragment,e),v(Y.$$.fragment,e),v(ue.$$.fragment,e),v(Te.$$.fragment,e),v($e.$$.fragment,e),v(Ae.$$.fragment,e),v(Oe.$$.fragment,e),v(Ne.$$.fragment,e),v(ke.$$.fragment,e),v(we.$$.fragment,e),v(Ie.$$.fragment,e),v(xe.$$.fragment,e),v(Le.$$.fragment,e),v(Re.$$.fragment,e),v(qe.$$.fragment,e),v(He.$$.fragment,e),v(Se.$$.fragment,e),v(Fe.$$.fragment,e),ot=!0)},o(e){T(N.$$.fragment,e),T(Y.$$.fragment,e),T(ue.$$.fragment,e),T(Te.$$.fragment,e),T($e.$$.fragment,e),T(Ae.$$.fragment,e),T(Oe.$$.fragment,e),T(Ne.$$.fragment,e),T(ke.$$.fragment,e),T(we.$$.fragment,e),T(Ie.$$.fragment,e),T(xe.$$.fragment,e),T(Le.$$.fragment,e),T(Re.$$.fragment,e),T(qe.$$.fragment,e),T(He.$$.fragment,e),T(Se.$$.fragment,e),T(Fe.$$.fragment,e),ot=!1},d(e){o(m),e&&o(K),e&&o(P),E(N),e&&o(M),e&&o(g),e&&o(me),E(Y,e),e&&o(bo),e&&o(H),E(ue),e&&o(Oo),e&&o(I),e&&o(yo),e&&o($),e&&o(No),e&&o(O),e&&o(ko),e&&o(J),e&&o(go),e&&o(Q),e&&o(wo),E(Te,e),e&&o(Io),e&&o(W),e&&o(Co),e&&o(S),E($e),e&&o(xo),e&&o(ee),e&&o(Lo),e&&o(C),e&&o(Ro),e&&o(oe),e&&o(qo),E(Ae,e),e&&o(Ho),e&&o(te),e&&o(So),e&&o(F),E(Oe),e&&o(Fo),e&&o(ae),e&&o(Do),E(Ne,e),e&&o(Bo),e&&o(D),E(ke),e&&o(Go),e&&o(le),e&&o(Xo),E(we,e),e&&o(jo),e&&o(B),E(Ie),e&&o(Uo),e&&o(pe),e&&o(Ko),E(xe,e),e&&o(Mo),e&&o(G),E(Le),e&&o(Vo),e&&o(Xe),e&&o(Yo),E(Re,e),e&&o(zo),e&&o(X),E(qe),e&&o(Jo),e&&o(je),e&&o(Qo),E(He,e),e&&o(Wo),e&&o(j),E(Se),e&&o(Zo),e&&o(Ue),e&&o(et),E(Fe,e)}}}const za={local:"convertendo-checkpoints-do-tensorflow-para-pytorch",sections:[{local:"bert",title:"BERT"},{local:"albert",title:"ALBERT"},{local:"openai-gpt",title:"OpenAI GPT"},{local:"openai-gpt2",title:"OpenAI GPT-2"},{local:"transformerxl",title:"Transformer-XL"},{local:"xlnet",title:"XLNet"},{local:"xlm",title:"XLM"},{local:"t5",title:"T5"}],title:"Convertendo checkpoints do TensorFlow para Pytorch"};function Ja(Ao){return Ka(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class os extends Ga{constructor(m){super();Xa(this,m,Ja,Ya,ja,{})}}export{os as default,za as metadata};
