Buckets:

rtrm's picture
download
raw
55.1 kB
import{s as Dt,o as Pt,n as Mt}from"../chunks/scheduler.37c15a92.js";import{S as Kt,i as Ot,g as n,s as a,r as M,A as es,h as o,f as t,c as i,j as Lt,u as d,x as r,k as xe,y as ls,a as s,v as p,d as c,t as u,w as m}from"../chunks/index.2bf4358c.js";import{T as nt}from"../chunks/Tip.363c041f.js";import{Y as ot}from"../chunks/Youtube.1e50a667.js";import{C as b}from"../chunks/CodeBlock.4e987730.js";import{C as ts}from"../chunks/CourseFloatingBanner.9ff4c771.js";import{H as rt,E as ss}from"../chunks/getInferenceSnippets.24b50994.js";function as(j){let y,U="🚨 Hai notato quel riquadro blu intorno a “6 frames” nel traceback di Google Colab? È una funzionalità speciale di Colab, che comprime il traceback in “frame”. Se non riesci a trovare l’origine di un errore, assicurati di espandere l’intero traceback facendo clic su quelle due piccole frecce.";return{c(){y=n("p"),y.textContent=U},l(J){y=o(J,"P",{"data-svelte-h":!0}),r(y)!=="svelte-1s8m81n"&&(y.textContent=U)},m(J,f){s(J,y,f)},p:Mt,d(J){J&&t(y)}}}function is(j){let y,U='💡 Se vedi un messaggio di errore che è difficile da capire, copia e incolla il messaggio nella barra di ricerca di Google o di <a href="https://stackoverflow.com/" rel="nofollow">Stack Overflow</a> (sì, davvero!). C’è una buona probabilità che non sei la prima persona a riscontrare l’errore, e questo è un buon modo per trovare le soluzioni pubblicate da altri utenti della community. Ad esempio, cercando <code>OSError: Can&#39;t load config for</code> su Stack Overflow si ottengono diversi <a href="https://stackoverflow.com/search?q=OSError%3A+Can%27t+load+config+for+" rel="nofollow">risultati</a> che possono essere usati come punto di partenza per risolvere il problema.';return{c(){y=n("p"),y.innerHTML=U},l(J){y=o(J,"P",{"data-svelte-h":!0}),r(y)!=="svelte-zwqzos"&&(y.innerHTML=U)},m(J,f){s(J,y,f)},p:Mt,d(J){J&&t(y)}}}function ns(j){let y,U="🚨 L’approccio che stiamo adottando non è infallibile, poiché il/la nostro/a collega potrebbe aver modificato la configurazione di <code>distilbert-base-uncased</code> prima di affinare il modello. Nella vita reale, dovremmo verificare prima con loro, ma per lo scopo di questa sezione assumeremo che abbiano usato la configurazione predefinita.";return{c(){y=n("p"),y.innerHTML=U},l(J){y=o(J,"P",{"data-svelte-h":!0}),r(y)!=="svelte-wib9un"&&(y.innerHTML=U)},m(J,f){s(J,y,f)},p:Mt,d(J){J&&t(y)}}}function os(j){let y,U,J,f,W,Ve,G,Ye,v,dt='In questa sezione esamineremo alcuni errori comuni che possono verificarsi quando si cerca di generare previsioni dal modello Transformer appena affinato. Questo ti preparerà alla <a href="/course/chapter8/section4">sezione 4</a>, in cui esploreremo come eseguire il debug della fase di training.',He,k,Qe,X,pt='Per questa sezione, abbiamo preparato un <a href="https://huggingface.co/lewtun/distilbert-base-uncased-finetuned-squad-d5716d28" rel="nofollow">template repository del modello</a> e, se vuoi eseguire il codice di questo capitolo, dovrai prima copiare il modello nel tuo account su <a href="https://huggingface.co" rel="nofollow">Hugging Face Hub</a>. Per farlo, occorre innanzitutto effettuare il login eseguendo una delle seguenti operazioni in un Jupyter notebook:',Fe,_,Se,B,ct="o il seguente nel tuo terminale preferito:",qe,$,Ee,z,ut="Questo chiederà di inserire il nome utente e la password e salverà un token in <em>~/.cache/huggingface/</em>. Una volta effettuato l’accesso, è possibile copiare il template repository con la seguente funzione:",Le,R,De,A,mt="A questo punto, quando si esegue <code>copy_repository_template()</code>, verrà creata una copia del template repository nel proprio account.",Pe,x,Ke,N,yt="Per iniziare il nostro viaggio nel fantastico mondo del debug dei modelli Transformer, considera lo scenario seguente: stai lavorando con un/a collega a un progetto di risposta alle domande per aiutare i clienti di un sito web di e-commerce a trovare risposte sui prodotti di consumo. Il/La collega ti invia un messaggio del tipo:",Oe,V,bt='<p>Ciao! Ho appena fatto un esperimento utilizzando le tecniche del <a href="/course/chapter7/7">Capitolo 7</a> del corso di Hugging Face e ho ottenuto ottimi risultati su SQuAD! Penso che possiamo usare questo modello come punto di partenza per il nostro progetto. L’ID del modello sull’Hub è “lewtun/distillbert-base-uncased-finetuned-squad-d5716d28”. Provalo pure :)</p>',el,Y,Jt="e la prima cosa che pensi è di caricare il modello usando la <code>pipeline</code> di 🤗 Transformers:",ll,H,tl,Q,sl,F,Ut="Oh no, sembra che qualcosa sia andato storto! Se sei alle prime armi con la programmazione, questo tipo di errori può sembrare un po’ criptico all’inizio (cos’è un <code>OSError</code>?!). L’errore visualizzato qui è solo l’ultima parte di un messaggio di errore molto più ampio, chiamato <em>Python traceback</em> (anche detto stack trace). Per esempio, se si esegue questo codice su Google Colab, si dovrebbe vedere qualcosa di simile alla seguente schermata:",al,w,ft='<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter8/traceback.png" alt="A Python traceback." width="100%"/>',il,S,jt='Questi messaggi contengono molte informazioni, quindi analizziamo insieme le parti principali. La prima cosa da notare è che i traceback devono essere letti <em>dal basso verso l’alto</em>. Questo può sembrare strano se si è abituati a leggere dall’alto verso il basso, ma riflette il fatto che il traceback mostra la sequenza di chiamate delle funzioni che la <code>pipeline</code> effettua quando scarica il modello e il tokenizer. (Dai un’occhiata al <a href="/course/chapter2">Capitolo 2</a> per maggiori dettagli su come funziona la <code>pipeline</code>.)',nl,T,ol,q,wt="Ciò significa che l’ultima riga del traceback indica l’ultimo messaggio di errore e fornisce il nome dell’eccezione sollevata. In questo caso, il tipo di eccezione è <code>OSError</code>, che indica un errore legato al sistema. Leggendo il messaggio di errore, si può notare che sembra esserci un problema con il file <em>config.json</em> del modello e vengono forniti due suggerimenti per risolverlo:",rl,E,Ml,h,dl,L,Tt="Il primo suggerimento ci chiede di verificare se l’ID del modello è effettivamente corretto, quindi la prima cosa da fare è copiare l’identificativo e incollarlo nella barra di ricerca dell’Hub:",pl,g,ht='<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter8/wrong-model-id.png" alt="The wrong model name." width="100%"/>',cl,D,gt="Mmm, sembra proprio che il modello del/la nostro/a collega non sia sull’Hub… aha, ma c’è un errore di battitura nel nome del modello! DistilBERT ha solo una “l” nel suo nome, quindi correggiamolo e cerchiamo invece “lewtun/distilbert-base-uncased-finetuned-squad-d5716d28”:",ul,Z,Zt='<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter8/true-model-id.png" alt="The right model name." width="100%"/>',ml,P,Ct="Ok, questo c’è. Ora proviamo a scaricare di nuovo il modello con l’ID corretto:",yl,K,bl,O,Jl,ee,It="Argh, è fallito ancora - benvenuti nella routine quotidiana di un machine learning engineer! Poiché abbiamo aggiustato l’ID del modello, il problema deve essere nel repository stesso. Un modo rapido per accedere al contenuto di un repository sul 🤗 Hub è la funzione <code>list_repo_files()</code> della libreria <code>huggingface_hub</code>:",Ul,le,fl,te,jl,se,Wt='Interessante: non sembra esserci un file <em>config.json</em> nel repository! Non c’è da stupirsi che la nostra <code>pipeline</code> non riesca a caricare il modello; il/la nostro/a collega deve aver dimenticato di inserire questo file nell’Hub dopo averlo affinato. In questo caso, il problema sembra abbastanza semplice da risolvere: potremmo chiedere loro di aggiungere il file, oppure, dato che possiamo vedere dall’ID del modello che il modello pre-addestrato usato è <a href="https://huggingface.co/distilbert-base-uncased" rel="nofollow"><code>distilbert-base-uncased</code></a>, possiamo scaricare la configurazione di questo modello e inserirla nel nostro repository per vedere se questo risolve il problema. Proviamo. Utilizzando le tecniche apprese nel <a href="/course/chapter2">Capitolo 2</a>, possiamo scaricare la configurazione del modello con la classe <code>AutoConfig</code>:',wl,ae,Tl,C,hl,ie,Gt="Possiamo quindi inviarlo al nostro repository del modello con la funzione <code>push_to_hub()</code> della configurazione:",gl,ne,Zl,oe,vt="Ora possiamo verificare se ha funzionato, caricando il modello dall’ultimo commit del ramo <code>main</code>:",Cl,re,Il,Me,Wl,de,kt="Woohoo, ha funzionato! Riassumiamo quello che hai appena imparato:",Gl,pe,Xt=`<li>I messaggi di errore in Python sono noti come <em>traceback</em> e vengono letti dal basso verso l’alto. L’ultima riga del messaggio di errore di solito contiene le informazioni necessarie per individuare l’origine del problema.</li> <li>Se l’ultima riga non contiene informazioni sufficienti, risali il traceback e vedi se riesci a identificare in quale punto del codice sorgente si verifica l’errore.</li> <li>Se nessuno dei messaggi di errore può aiutare a individuare il problema, provare a cercare online una soluzione a un problema simile.</li> <li>Il \`huggingface_hub’
// 🤗 Hub?
fornisce una serie di strumenti che si possono usare per interagire e fare il debug dei repository su Hub.</li>`,vl,ce,_t="Ora che sappiamo come eseguire il debug di una pipeline, diamo un’occhiata a un esempio più complicato nel forward pass del modello stesso.",kl,ue,Xl,me,Bt="Sebbene la <code>pipeline</code> sia ottima per la maggior parte delle applicazioni in cui è necessario generare previsioni rapidamente, a volte è necessario accedere ai logit del modello (ad esempio, se si desidera applicare un post-processing personalizzato). Per vedere cosa potrebbe andare storto in questo caso, iniziamo prendendo il modello e il tokenizer dalla nostra <code>pipeline</code>:",_l,ye,Bl,be,$t="Poi abbiamo bisogno di una domanda, quindi vediamo se i nostri framework preferiti sono supportati:",$l,Je,zl,Ue,zt='Come abbiamo visto nel <a href="/course/chapter7">Capitolo 7</a>, i passaggi tipici da svolgere sono la tokenizzazione degli input, l’estrazione dei logit dei token iniziali e finali e la decodifica dell’intervallo di risposta:',Rl,fe,Al,je,xl,we,Rt="Oh cielo, sembra che ci sia un bug nel nostro codice! Ma non avere paura di un po’ di debug. Puoi usare il debugger di Python in un notebook:",Nl,Te,Vl,he,At="o dal terminale:",Yl,ge,Hl,Ze,xt="Qui, leggendo il messaggio di errore vediamo che l’oggetto <code>&#39;list&#39;</code> non ha attributo <code>&#39;size&#39;</code>, e possiamo vedere una <code>--&gt;</code> freccia che punta alla riga in cui il problema è stato sollevato in <code>model(**inputs)</code>. Possiamo eseguire il debug interattivo utilizzando il debugger di Python, ma per ora ci limiteremo a stampare una parte di <code>input</code> per vedere cosa abbiamo:",Ql,Ce,Fl,Ie,Sl,We,Nt="Questo sembra certamente una normale <code>list</code> di Python, ma ricontrolliamo il <code>type</code>:",ql,Ge,El,ve,Ll,ke,Vt='Sì, questa è sicuramente una <code>list</code> di Python. Cos’è andato storto? Ricordiamo dal <a href="/course/chapter2">Capitolo 2</a> che le classi <code>AutoModelForXxx</code> in 🤗 Transformers operano su <em>tensori</em> (sia in PyTorch che in TensorFlow), e un’operazione comune è quella di estrarre le dimensioni di un tensore usando <code>Tensor.size()</code> in PyTorch, per esempio. Diamo un’altra occhiata al traceback, per vedere quale riga ha causato l’eccezione:',Dl,Xe,Pl,_e,Yt='Sembra che il nostro codice abbia provato a chiamare <code>input_ids.size()</code>, ma questo chiaramente non funziona per una <code>list</code>di Python, che è solo un <em>container</em>. Come possiamo risolvere questo problema? Cercando il messaggio di errore su Stack Overflow si ottengono alcuni <a href="https://stackoverflow.com/search?q=AttributeError%3A+%27list%27+object+has+no+attribute+%27size%27&amp;s=c15ec54c-63cb-481d-a749-408920073e8f" rel="nofollow">risultati</a> pertinenti. Cliccando sul primo, viene visualizzata una domanda simile alla nostra, con la risposta mostrata nello screenshot seguente:',Kl,I,Ht='<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter8/stack-overflow.png" alt="An answer from Stack Overflow." width="100%"/>',Ol,Be,Qt="La risposta raccomanda di aggiungere <code>return_tensors=&#39;pt&#39;</code> al tokenizer, quindi proviamo se funziona:",et,$e,lt,ze,tt,Re,Ft='Bene, ha funzionato! Questo è un ottimo esempio di quanto possa essere utile Stack Overflow: identificando un problema simile, abbiamo potuto beneficiare dell’esperienza di altri membri della community. Tuttavia, una ricerca come questa non sempre produce una risposta pertinente, quindi cosa si può fare in questi casi? Fortunatamente, sul <a href="https://discuss.huggingface.co/" rel="nofollow">forum di Hugging Face</a> c’è un’accogliente community di sviluppatori che può aiutarti! Nella prossima sezione, vedremo come creare bene delle domande sul forum che abbiano buona probabilità di ricevere una risposta.',st,Ae,at,Ne,it;return W=new rt({props:{title:"Cosa fare quando si riceve un errore",local:"cosa-fare-quando-si-riceve-un-errore",headingTag:"h1"}}),G=new ts({props:{chapter:8,classNames:"absolute z-10 right-0 top-0",notebooks:[{label:"Google Colab",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/master/course/it/chapter8/section2.ipynb"},{label:"Aws Studio",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/master/course/it/chapter8/section2.ipynb"}]}}),k=new ot({props:{id:"DQ-CpJn6Rc4"}}),_=new b({props:{code:"ZnJvbSUyMGh1Z2dpbmdmYWNlX2h1YiUyMGltcG9ydCUyMG5vdGVib29rX2xvZ2luJTBBJTBBbm90ZWJvb2tfbG9naW4oKQ==",highlighted:`<span class="hljs-keyword">from</span> huggingface_hub <span class="hljs-keyword">import</span> notebook_login
notebook_login()`,wrap:!1}}),$=new b({props:{code:"aHVnZ2luZ2ZhY2UtY2xpJTIwbG9naW4=",highlighted:"huggingface-cli login",wrap:!1}}),R=new b({props:{code:"ZnJvbSUyMGRpc3R1dGlscy5kaXJfdXRpbCUyMGltcG9ydCUyMGNvcHlfdHJlZSUwQWZyb20lMjBodWdnaW5nZmFjZV9odWIlMjBpbXBvcnQlMjBSZXBvc2l0b3J5JTJDJTIwc25hcHNob3RfZG93bmxvYWQlMkMlMjBjcmVhdGVfcmVwbyUyQyUyMGdldF9mdWxsX3JlcG9fbmFtZSUwQSUwQSUwQWRlZiUyMGNvcHlfcmVwb3NpdG9yeV90ZW1wbGF0ZSgpJTNBJTBBJTIwJTIwJTIwJTIwJTIzJTIwQ2xvbmUlMjB0aGUlMjByZXBvJTIwYW5kJTIwZXh0cmFjdCUyMHRoZSUyMGxvY2FsJTIwcGF0aCUwQSUyMCUyMCUyMCUyMHRlbXBsYXRlX3JlcG9faWQlMjAlM0QlMjAlMjJsZXd0dW4lMkZkaXN0aWxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjglMjIlMEElMjAlMjAlMjAlMjBjb21taXRfaGFzaCUyMCUzRCUyMCUyMmJlM2VhZmZjMjg2NjlkNzkzMjQ5MjY4MWNkNWYzZTg5MDVlMzU4YjQlMjIlMEElMjAlMjAlMjAlMjB0ZW1wbGF0ZV9yZXBvX2RpciUyMCUzRCUyMHNuYXBzaG90X2Rvd25sb2FkKHRlbXBsYXRlX3JlcG9faWQlMkMlMjByZXZpc2lvbiUzRGNvbW1pdF9oYXNoKSUwQSUyMCUyMCUyMCUyMCUyMyUyMENyZWF0ZSUyMGFuJTIwZW1wdHklMjByZXBvJTIwb24lMjB0aGUlMjBIdWIlMEElMjAlMjAlMjAlMjBtb2RlbF9uYW1lJTIwJTNEJTIwdGVtcGxhdGVfcmVwb19pZC5zcGxpdCglMjIlMkYlMjIpJTVCMSU1RCUwQSUyMCUyMCUyMCUyMGNyZWF0ZV9yZXBvKG1vZGVsX25hbWUlMkMlMjBleGlzdF9vayUzRFRydWUpJTBBJTIwJTIwJTIwJTIwJTIzJTIwQ2xvbmUlMjB0aGUlMjBlbXB0eSUyMHJlcG8lMEElMjAlMjAlMjAlMjBuZXdfcmVwb19pZCUyMCUzRCUyMGdldF9mdWxsX3JlcG9fbmFtZShtb2RlbF9uYW1lKSUwQSUyMCUyMCUyMCUyMG5ld19yZXBvX2RpciUyMCUzRCUyMG1vZGVsX25hbWUlMEElMjAlMjAlMjAlMjByZXBvJTIwJTNEJTIwUmVwb3NpdG9yeShsb2NhbF9kaXIlM0RuZXdfcmVwb19kaXIlMkMlMjBjbG9uZV9mcm9tJTNEbmV3X3JlcG9faWQpJTBBJTIwJTIwJTIwJTIwJTIzJTIwQ29weSUyMGZpbGVzJTBBJTIwJTIwJTIwJTIwY29weV90cmVlKHRlbXBsYXRlX3JlcG9fZGlyJTJDJTIwbmV3X3JlcG9fZGlyKSUwQSUyMCUyMCUyMCUyMCUyMyUyMFB1c2glMjB0byUyMEh1YiUwQSUyMCUyMCUyMCUyMHJlcG8ucHVzaF90b19odWIoKQ==",highlighted:`<span class="hljs-keyword">from</span> distutils.dir_util <span class="hljs-keyword">import</span> copy_tree
<span class="hljs-keyword">from</span> huggingface_hub <span class="hljs-keyword">import</span> Repository, snapshot_download, create_repo, get_full_repo_name
<span class="hljs-keyword">def</span> <span class="hljs-title function_">copy_repository_template</span>():
<span class="hljs-comment"># Clone the repo and extract the local path</span>
template_repo_id = <span class="hljs-string">&quot;lewtun/distilbert-base-uncased-finetuned-squad-d5716d28&quot;</span>
commit_hash = <span class="hljs-string">&quot;be3eaffc28669d7932492681cd5f3e8905e358b4&quot;</span>
template_repo_dir = snapshot_download(template_repo_id, revision=commit_hash)
<span class="hljs-comment"># Create an empty repo on the Hub</span>
model_name = template_repo_id.split(<span class="hljs-string">&quot;/&quot;</span>)[<span class="hljs-number">1</span>]
create_repo(model_name, exist_ok=<span class="hljs-literal">True</span>)
<span class="hljs-comment"># Clone the empty repo</span>
new_repo_id = get_full_repo_name(model_name)
new_repo_dir = model_name
repo = Repository(local_dir=new_repo_dir, clone_from=new_repo_id)
<span class="hljs-comment"># Copy files</span>
copy_tree(template_repo_dir, new_repo_dir)
<span class="hljs-comment"># Push to Hub</span>
repo.push_to_hub()`,wrap:!1}}),x=new rt({props:{title:"Fare il debug della pipeline di 🤗 Transformers",local:"fare-il-debug-della-pipeline-di--transformers",headingTag:"h2"}}),H=new b({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMHBpcGVsaW5lJTBBJTBBbW9kZWxfY2hlY2twb2ludCUyMCUzRCUyMGdldF9mdWxsX3JlcG9fbmFtZSglMjJkaXN0aWxsYmVydC1iYXNlLXVuY2FzZWQtZmluZXR1bmVkLXNxdWFkLWQ1NzE2ZDI4JTIyKSUwQXJlYWRlciUyMCUzRCUyMHBpcGVsaW5lKCUyMnF1ZXN0aW9uLWFuc3dlcmluZyUyMiUyQyUyMG1vZGVsJTNEbW9kZWxfY2hlY2twb2ludCk=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> pipeline
model_checkpoint = get_full_repo_name(<span class="hljs-string">&quot;distillbert-base-uncased-finetuned-squad-d5716d28&quot;</span>)
reader = pipeline(<span class="hljs-string">&quot;question-answering&quot;</span>, model=model_checkpoint)`,wrap:!1}}),Q=new b({props:{code:"JTIyJTIyJTIyJTBBT1NFcnJvciUzQSUyMENhbid0JTIwbG9hZCUyMGNvbmZpZyUyMGZvciUyMCdsZXd0dW4lMkZkaXN0aWxsYmVydC1iYXNlLXVuY2FzZWQtZmluZXR1bmVkLXNxdWFkLWQ1NzE2ZDI4Jy4lMjBNYWtlJTIwc3VyZSUyMHRoYXQlM0ElMEElMEEtJTIwJ2xld3R1biUyRmRpc3RpbGxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjgnJTIwaXMlMjBhJTIwY29ycmVjdCUyMG1vZGVsJTIwaWRlbnRpZmllciUyMGxpc3RlZCUyMG9uJTIwJ2h0dHBzJTNBJTJGJTJGaHVnZ2luZ2ZhY2UuY28lMkZtb2RlbHMnJTBBJTBBLSUyMG9yJTIwJ2xld3R1biUyRmRpc3RpbGxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjgnJTIwaXMlMjB0aGUlMjBjb3JyZWN0JTIwcGF0aCUyMHRvJTIwYSUyMGRpcmVjdG9yeSUyMGNvbnRhaW5pbmclMjBhJTIwY29uZmlnLmpzb24lMjBmaWxlJTBBJTIyJTIyJTIy",highlighted:`<span class="hljs-string">&quot;&quot;&quot;
OSError: Can&#x27;t load config for &#x27;lewtun/distillbert-base-uncased-finetuned-squad-d5716d28&#x27;. Make sure that:
- &#x27;lewtun/distillbert-base-uncased-finetuned-squad-d5716d28&#x27; is a correct model identifier listed on &#x27;https://huggingface.co/models&#x27;
- or &#x27;lewtun/distillbert-base-uncased-finetuned-squad-d5716d28&#x27; is the correct path to a directory containing a config.json file
&quot;&quot;&quot;</span>`,wrap:!1}}),T=new nt({props:{$$slots:{default:[as]},$$scope:{ctx:j}}}),E=new b({props:{code:"JTIyJTIyJTIyJTBBTWFrZSUyMHN1cmUlMjB0aGF0JTNBJTBBJTBBLSUyMCdsZXd0dW4lMkZkaXN0aWxsYmVydC1iYXNlLXVuY2FzZWQtZmluZXR1bmVkLXNxdWFkLWQ1NzE2ZDI4JyUyMGlzJTIwYSUyMGNvcnJlY3QlMjBtb2RlbCUyMGlkZW50aWZpZXIlMjBsaXN0ZWQlMjBvbiUyMCdodHRwcyUzQSUyRiUyRmh1Z2dpbmdmYWNlLmNvJTJGbW9kZWxzJyUwQSUwQS0lMjBvciUyMCdsZXd0dW4lMkZkaXN0aWxsYmVydC1iYXNlLXVuY2FzZWQtZmluZXR1bmVkLXNxdWFkLWQ1NzE2ZDI4JyUyMGlzJTIwdGhlJTIwY29ycmVjdCUyMHBhdGglMjB0byUyMGElMjBkaXJlY3RvcnklMjBjb250YWluaW5nJTIwYSUyMGNvbmZpZy5qc29uJTIwZmlsZSUwQSUyMiUyMiUyMg==",highlighted:`<span class="hljs-string">&quot;&quot;&quot;
Make sure that:
- &#x27;lewtun/distillbert-base-uncased-finetuned-squad-d5716d28&#x27; is a correct model identifier listed on &#x27;https://huggingface.co/models&#x27;
- or &#x27;lewtun/distillbert-base-uncased-finetuned-squad-d5716d28&#x27; is the correct path to a directory containing a config.json file
&quot;&quot;&quot;</span>`,wrap:!1}}),h=new nt({props:{$$slots:{default:[is]},$$scope:{ctx:j}}}),K=new b({props:{code:"bW9kZWxfY2hlY2twb2ludCUyMCUzRCUyMGdldF9mdWxsX3JlcG9fbmFtZSglMjJkaXN0aWxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjglMjIpJTBBcmVhZGVyJTIwJTNEJTIwcGlwZWxpbmUoJTIycXVlc3Rpb24tYW5zd2VyaW5nJTIyJTJDJTIwbW9kZWwlM0Rtb2RlbF9jaGVja3BvaW50KQ==",highlighted:`model_checkpoint = get_full_repo_name(<span class="hljs-string">&quot;distilbert-base-uncased-finetuned-squad-d5716d28&quot;</span>)
reader = pipeline(<span class="hljs-string">&quot;question-answering&quot;</span>, model=model_checkpoint)`,wrap:!1}}),O=new b({props:{code:"JTIyJTIyJTIyJTBBT1NFcnJvciUzQSUyMENhbid0JTIwbG9hZCUyMGNvbmZpZyUyMGZvciUyMCdsZXd0dW4lMkZkaXN0aWxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjgnLiUyME1ha2UlMjBzdXJlJTIwdGhhdCUzQSUwQSUwQS0lMjAnbGV3dHVuJTJGZGlzdGlsYmVydC1iYXNlLXVuY2FzZWQtZmluZXR1bmVkLXNxdWFkLWQ1NzE2ZDI4JyUyMGlzJTIwYSUyMGNvcnJlY3QlMjBtb2RlbCUyMGlkZW50aWZpZXIlMjBsaXN0ZWQlMjBvbiUyMCdodHRwcyUzQSUyRiUyRmh1Z2dpbmdmYWNlLmNvJTJGbW9kZWxzJyUwQSUwQS0lMjBvciUyMCdsZXd0dW4lMkZkaXN0aWxiZXJ0LWJhc2UtdW5jYXNlZC1maW5ldHVuZWQtc3F1YWQtZDU3MTZkMjgnJTIwaXMlMjB0aGUlMjBjb3JyZWN0JTIwcGF0aCUyMHRvJTIwYSUyMGRpcmVjdG9yeSUyMGNvbnRhaW5pbmclMjBhJTIwY29uZmlnLmpzb24lMjBmaWxlJTBBJTIyJTIyJTIy",highlighted:`<span class="hljs-string">&quot;&quot;&quot;
OSError: Can&#x27;t load config for &#x27;lewtun/distilbert-base-uncased-finetuned-squad-d5716d28&#x27;. Make sure that:
- &#x27;lewtun/distilbert-base-uncased-finetuned-squad-d5716d28&#x27; is a correct model identifier listed on &#x27;https://huggingface.co/models&#x27;
- or &#x27;lewtun/distilbert-base-uncased-finetuned-squad-d5716d28&#x27; is the correct path to a directory containing a config.json file
&quot;&quot;&quot;</span>`,wrap:!1}}),le=new b({props:{code:"ZnJvbSUyMGh1Z2dpbmdmYWNlX2h1YiUyMGltcG9ydCUyMGxpc3RfcmVwb19maWxlcyUwQSUwQWxpc3RfcmVwb19maWxlcyhyZXBvX2lkJTNEbW9kZWxfY2hlY2twb2ludCk=",highlighted:`<span class="hljs-keyword">from</span> huggingface_hub <span class="hljs-keyword">import</span> list_repo_files
list_repo_files(repo_id=model_checkpoint)`,wrap:!1}}),te=new b({props:{code:"JTVCJy5naXRhdHRyaWJ1dGVzJyUyQyUyMCdSRUFETUUubWQnJTJDJTIwJ3B5dG9yY2hfbW9kZWwuYmluJyUyQyUyMCdzcGVjaWFsX3Rva2Vuc19tYXAuanNvbiclMkMlMjAndG9rZW5pemVyX2NvbmZpZy5qc29uJyUyQyUyMCd0cmFpbmluZ19hcmdzLmJpbiclMkMlMjAndm9jYWIudHh0JyU1RA==",highlighted:'[<span class="hljs-string">&#x27;.gitattributes&#x27;</span>, <span class="hljs-string">&#x27;README.md&#x27;</span>, <span class="hljs-string">&#x27;pytorch_model.bin&#x27;</span>, <span class="hljs-string">&#x27;special_tokens_map.json&#x27;</span>, <span class="hljs-string">&#x27;tokenizer_config.json&#x27;</span>, <span class="hljs-string">&#x27;training_args.bin&#x27;</span>, <span class="hljs-string">&#x27;vocab.txt&#x27;</span>]',wrap:!1}}),ae=new b({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Db25maWclMEElMEFwcmV0cmFpbmVkX2NoZWNrcG9pbnQlMjAlM0QlMjAlMjJkaXN0aWxiZXJ0LWJhc2UtdW5jYXNlZCUyMiUwQWNvbmZpZyUyMCUzRCUyMEF1dG9Db25maWcuZnJvbV9wcmV0cmFpbmVkKHByZXRyYWluZWRfY2hlY2twb2ludCk=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoConfig
pretrained_checkpoint = <span class="hljs-string">&quot;distilbert-base-uncased&quot;</span>
config = AutoConfig.from_pretrained(pretrained_checkpoint)`,wrap:!1}}),C=new nt({props:{warning:!0,$$slots:{default:[ns]},$$scope:{ctx:j}}}),ne=new b({props:{code:"Y29uZmlnLnB1c2hfdG9faHViKG1vZGVsX2NoZWNrcG9pbnQlMkMlMjBjb21taXRfbWVzc2FnZSUzRCUyMkFkZCUyMGNvbmZpZy5qc29uJTIyKQ==",highlighted:'config.push_to_hub(model_checkpoint, commit_message=<span class="hljs-string">&quot;Add config.json&quot;</span>)',wrap:!1}}),re=new b({props:{code:"cmVhZGVyJTIwJTNEJTIwcGlwZWxpbmUoJTIycXVlc3Rpb24tYW5zd2VyaW5nJTIyJTJDJTIwbW9kZWwlM0Rtb2RlbF9jaGVja3BvaW50JTJDJTIwcmV2aXNpb24lM0QlMjJtYWluJTIyKSUwQSUwQWNvbnRleHQlMjAlM0QlMjByJTIyJTIyJTIyJTBBRXh0cmFjdGl2ZSUyMFF1ZXN0aW9uJTIwQW5zd2VyaW5nJTIwaXMlMjB0aGUlMjB0YXNrJTIwb2YlMjBleHRyYWN0aW5nJTIwYW4lMjBhbnN3ZXIlMjBmcm9tJTIwYSUyMHRleHQlMEFnaXZlbiUyMGElMjBxdWVzdGlvbi4lMjBBbiUyMGV4YW1wbGUlMjBvZiUyMGElMjBxdWVzdGlvbiUyMGFuc3dlcmluZyUyMGRhdGFzZXQlMjBpcyUyMHRoZSUyMFNRdUFEJTBBZGF0YXNldCUyQyUyMHdoaWNoJTIwaXMlMjBlbnRpcmVseSUyMGJhc2VkJTIwb24lMjB0aGF0JTIwdGFzay4lMjBJZiUyMHlvdSUyMHdvdWxkJTIwbGlrZSUyMHRvJTIwZmluZS10dW5lJTIwYSUwQW1vZGVsJTIwb24lMjBhJTIwU1F1QUQlMjB0YXNrJTJDJTIweW91JTIwbWF5JTIwbGV2ZXJhZ2UlMjB0aGUlMEFleGFtcGxlcyUyRnB5dG9yY2glMkZxdWVzdGlvbi1hbnN3ZXJpbmclMkZydW5fc3F1YWQucHklMjBzY3JpcHQuJTBBJTBBJUYwJTlGJUE0JTk3JTIwVHJhbnNmb3JtZXJzJTIwaXMlMjBpbnRlcm9wZXJhYmxlJTIwd2l0aCUyMHRoZSUyMFB5VG9yY2glMkMlMjBUZW5zb3JGbG93JTJDJTIwYW5kJTIwSkFYJTBBZnJhbWV3b3JrcyUyQyUyMHNvJTIweW91JTIwY2FuJTIwdXNlJTIweW91ciUyMGZhdm91cml0ZSUyMHRvb2xzJTIwZm9yJTIwYSUyMHdpZGUlMjB2YXJpZXR5JTIwb2YlMjB0YXNrcyElMEElMjIlMjIlMjIlMEElMEFxdWVzdGlvbiUyMCUzRCUyMCUyMldoYXQlMjBpcyUyMGV4dHJhY3RpdmUlMjBxdWVzdGlvbiUyMGFuc3dlcmluZyUzRiUyMiUwQXJlYWRlcihxdWVzdGlvbiUzRHF1ZXN0aW9uJTJDJTIwY29udGV4dCUzRGNvbnRleHQp",highlighted:`reader = pipeline(<span class="hljs-string">&quot;question-answering&quot;</span>, model=model_checkpoint, revision=<span class="hljs-string">&quot;main&quot;</span>)
context = <span class="hljs-string">r&quot;&quot;&quot;
Extractive Question Answering is the task of extracting an answer from a text
given a question. An example of a question answering dataset is the SQuAD
dataset, which is entirely based on that task. If you would like to fine-tune a
model on a SQuAD task, you may leverage the
examples/pytorch/question-answering/run_squad.py script.
🤗 Transformers is interoperable with the PyTorch, TensorFlow, and JAX
frameworks, so you can use your favourite tools for a wide variety of tasks!
&quot;&quot;&quot;</span>
question = <span class="hljs-string">&quot;What is extractive question answering?&quot;</span>
reader(question=question, context=context)`,wrap:!1}}),Me=new b({props:{code:"JTdCJ3Njb3JlJyUzQSUyMDAuMzg2Njk1MzU1MTc2OTI1NjYlMkMlMEElMjAnc3RhcnQnJTNBJTIwMzQlMkMlMEElMjAnZW5kJyUzQSUyMDk1JTJDJTBBJTIwJ2Fuc3dlciclM0ElMjAndGhlJTIwdGFzayUyMG9mJTIwZXh0cmFjdGluZyUyMGFuJTIwYW5zd2VyJTIwZnJvbSUyMGElMjB0ZXh0JTIwZ2l2ZW4lMjBhJTIwcXVlc3Rpb24nJTdE",highlighted:`{<span class="hljs-string">&#x27;score&#x27;</span>: <span class="hljs-number">0.38669535517692566</span>,
<span class="hljs-string">&#x27;start&#x27;</span>: <span class="hljs-number">34</span>,
<span class="hljs-string">&#x27;end&#x27;</span>: <span class="hljs-number">95</span>,
<span class="hljs-string">&#x27;answer&#x27;</span>: <span class="hljs-string">&#x27;the task of extracting an answer from a text given a question&#x27;</span>}`,wrap:!1}}),ue=new rt({props:{title:"Debug del forward pass del modello",local:"debug-del-forward-pass-del-modello",headingTag:"h2"}}),ye=new b({props:{code:"dG9rZW5pemVyJTIwJTNEJTIwcmVhZGVyLnRva2VuaXplciUwQW1vZGVsJTIwJTNEJTIwcmVhZGVyLm1vZGVs",highlighted:`tokenizer = reader.tokenizer
model = reader.model`,wrap:!1}}),Je=new b({props:{code:"cXVlc3Rpb24lMjAlM0QlMjAlMjJXaGljaCUyMGZyYW1ld29ya3MlMjBjYW4lMjBJJTIwdXNlJTNGJTIy",highlighted:'question = <span class="hljs-string">&quot;Which frameworks can I use?&quot;</span>',wrap:!1}}),fe=new b({props:{code:"aW1wb3J0JTIwdG9yY2glMEElMEFpbnB1dHMlMjAlM0QlMjB0b2tlbml6ZXIocXVlc3Rpb24lMkMlMjBjb250ZXh0JTJDJTIwYWRkX3NwZWNpYWxfdG9rZW5zJTNEVHJ1ZSklMEFpbnB1dF9pZHMlMjAlM0QlMjBpbnB1dHMlNUIlMjJpbnB1dF9pZHMlMjIlNUQlNUIwJTVEJTBBb3V0cHV0cyUyMCUzRCUyMG1vZGVsKCoqaW5wdXRzKSUwQWFuc3dlcl9zdGFydF9zY29yZXMlMjAlM0QlMjBvdXRwdXRzLnN0YXJ0X2xvZ2l0cyUwQWFuc3dlcl9lbmRfc2NvcmVzJTIwJTNEJTIwb3V0cHV0cy5lbmRfbG9naXRzJTBBJTIzJTIwR2V0JTIwdGhlJTIwbW9zdCUyMGxpa2VseSUyMGJlZ2lubmluZyUyMG9mJTIwYW5zd2VyJTIwd2l0aCUyMHRoZSUyMGFyZ21heCUyMG9mJTIwdGhlJTIwc2NvcmUlMEFhbnN3ZXJfc3RhcnQlMjAlM0QlMjB0b3JjaC5hcmdtYXgoYW5zd2VyX3N0YXJ0X3Njb3JlcyklMEElMjMlMjBHZXQlMjB0aGUlMjBtb3N0JTIwbGlrZWx5JTIwZW5kJTIwb2YlMjBhbnN3ZXIlMjB3aXRoJTIwdGhlJTIwYXJnbWF4JTIwb2YlMjB0aGUlMjBzY29yZSUwQWFuc3dlcl9lbmQlMjAlM0QlMjB0b3JjaC5hcmdtYXgoYW5zd2VyX2VuZF9zY29yZXMpJTIwJTJCJTIwMSUwQWFuc3dlciUyMCUzRCUyMHRva2VuaXplci5jb252ZXJ0X3Rva2Vuc190b19zdHJpbmcoJTBBJTIwJTIwJTIwJTIwdG9rZW5pemVyLmNvbnZlcnRfaWRzX3RvX3Rva2VucyhpbnB1dF9pZHMlNUJhbnN3ZXJfc3RhcnQlM0FhbnN3ZXJfZW5kJTVEKSUwQSklMEFwcmludChmJTIyUXVlc3Rpb24lM0ElMjAlN0JxdWVzdGlvbiU3RCUyMiklMEFwcmludChmJTIyQW5zd2VyJTNBJTIwJTdCYW5zd2VyJTdEJTIyKQ==",highlighted:`<span class="hljs-keyword">import</span> torch
inputs = tokenizer(question, context, add_special_tokens=<span class="hljs-literal">True</span>)
input_ids = inputs[<span class="hljs-string">&quot;input_ids&quot;</span>][<span class="hljs-number">0</span>]
outputs = model(**inputs)
answer_start_scores = outputs.start_logits
answer_end_scores = outputs.end_logits
<span class="hljs-comment"># Get the most likely beginning of answer with the argmax of the score</span>
answer_start = torch.argmax(answer_start_scores)
<span class="hljs-comment"># Get the most likely end of answer with the argmax of the score</span>
answer_end = torch.argmax(answer_end_scores) + <span class="hljs-number">1</span>
answer = tokenizer.convert_tokens_to_string(
tokenizer.convert_ids_to_tokens(input_ids[answer_start:answer_end])
)
<span class="hljs-built_in">print</span>(<span class="hljs-string">f&quot;Question: <span class="hljs-subst">{question}</span>&quot;</span>)
<span class="hljs-built_in">print</span>(<span class="hljs-string">f&quot;Answer: <span class="hljs-subst">{answer}</span>&quot;</span>)`,wrap:!1}}),je=new b({props:{code:"JTIyJTIyJTIyJTBBLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBQXR0cmlidXRlRXJyb3IlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUcmFjZWJhY2slMjAobW9zdCUyMHJlY2VudCUyMGNhbGwlMjBsYXN0KSUwQSUyRnZhciUyRmZvbGRlcnMlMkYyOCUyRms0Y3k1cTdzMmhzOTJ4cTdfaDg5X3ZnbTAwMDBnbiUyRlQlMkZpcHlrZXJuZWxfNzU3NDMlMkYyNzI1ODM4MDczLnB5JTIwaW4lMjAlM0Ntb2R1bGUlM0UlMEElMjAlMjAlMjAlMjAlMjAlMjAxJTIwaW5wdXRzJTIwJTNEJTIwdG9rZW5pemVyKHF1ZXN0aW9uJTJDJTIwdGV4dCUyQyUyMGFkZF9zcGVjaWFsX3Rva2VucyUzRFRydWUpJTBBJTIwJTIwJTIwJTIwJTIwJTIwMiUyMGlucHV0X2lkcyUyMCUzRCUyMGlucHV0cyU1QiUyMmlucHV0X2lkcyUyMiU1RCUwQS0tLS0lM0UlMjAzJTIwb3V0cHV0cyUyMCUzRCUyMG1vZGVsKCoqaW5wdXRzKSUwQSUyMCUyMCUyMCUyMCUyMCUyMDQlMjBhbnN3ZXJfc3RhcnRfc2NvcmVzJTIwJTNEJTIwb3V0cHV0cy5zdGFydF9sb2dpdHMlMEElMjAlMjAlMjAlMjAlMjAlMjA1JTIwYW5zd2VyX2VuZF9zY29yZXMlMjAlM0QlMjBvdXRwdXRzLmVuZF9sb2dpdHMlMEElMEF+JTJGbWluaWNvbmRhMyUyRmVudnMlMkZodWdnaW5nZmFjZSUyRmxpYiUyRnB5dGhvbjMuOCUyRnNpdGUtcGFja2FnZXMlMkZ0b3JjaCUyRm5uJTJGbW9kdWxlcyUyRm1vZHVsZS5weSUyMGluJTIwX2NhbGxfaW1wbChzZWxmJTJDJTIwKmlucHV0JTJDJTIwKiprd2FyZ3MpJTBBJTIwJTIwJTIwMTA0OSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwbm90JTIwKHNlbGYuX2JhY2t3YXJkX2hvb2tzJTIwb3IlMjBzZWxmLl9mb3J3YXJkX2hvb2tzJTIwb3IlMjBzZWxmLl9mb3J3YXJkX3ByZV9ob29rcyUyMG9yJTIwX2dsb2JhbF9iYWNrd2FyZF9ob29rcyUwQSUyMCUyMCUyMDEwNTAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvciUyMF9nbG9iYWxfZm9yd2FyZF9ob29rcyUyMG9yJTIwX2dsb2JhbF9mb3J3YXJkX3ByZV9ob29rcyklM0ElMEEtJTNFJTIwMTA1MSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGZvcndhcmRfY2FsbCgqaW5wdXQlMkMlMjAqKmt3YXJncyklMEElMjAlMjAlMjAxMDUyJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwRG8lMjBub3QlMjBjYWxsJTIwZnVuY3Rpb25zJTIwd2hlbiUyMGppdCUyMGlzJTIwdXNlZCUwQSUyMCUyMCUyMDEwNTMlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmdWxsX2JhY2t3YXJkX2hvb2tzJTJDJTIwbm9uX2Z1bGxfYmFja3dhcmRfaG9va3MlMjAlM0QlMjAlNUIlNUQlMkMlMjAlNUIlNUQlMEElMEF+JTJGbWluaWNvbmRhMyUyRmVudnMlMkZodWdnaW5nZmFjZSUyRmxpYiUyRnB5dGhvbjMuOCUyRnNpdGUtcGFja2FnZXMlMkZ0cmFuc2Zvcm1lcnMlMkZtb2RlbHMlMkZkaXN0aWxiZXJ0JTJGbW9kZWxpbmdfZGlzdGlsYmVydC5weSUyMGluJTIwZm9yd2FyZChzZWxmJTJDJTIwaW5wdXRfaWRzJTJDJTIwYXR0ZW50aW9uX21hc2slMkMlMjBoZWFkX21hc2slMkMlMjBpbnB1dHNfZW1iZWRzJTJDJTIwc3RhcnRfcG9zaXRpb25zJTJDJTIwZW5kX3Bvc2l0aW9ucyUyQyUyMG91dHB1dF9hdHRlbnRpb25zJTJDJTIwb3V0cHV0X2hpZGRlbl9zdGF0ZXMlMkMlMjByZXR1cm5fZGljdCklMEElMjAlMjAlMjAlMjA3MjMlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm5fZGljdCUyMCUzRCUyMHJldHVybl9kaWN0JTIwaWYlMjByZXR1cm5fZGljdCUyMGlzJTIwbm90JTIwTm9uZSUyMGVsc2UlMjBzZWxmLmNvbmZpZy51c2VfcmV0dXJuX2RpY3QlMEElMjAlMjAlMjAlMjA3MjQlMEEtLSUzRSUyMDcyNSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRpc3RpbGJlcnRfb3V0cHV0JTIwJTNEJTIwc2VsZi5kaXN0aWxiZXJ0KCUwQSUyMCUyMCUyMCUyMDcyNiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlucHV0X2lkcyUzRGlucHV0X2lkcyUyQyUwQSUyMCUyMCUyMCUyMDcyNyUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGF0dGVudGlvbl9tYXNrJTNEYXR0ZW50aW9uX21hc2slMkMlMEElMEF+JTJGbWluaWNvbmRhMyUyRmVudnMlMkZodWdnaW5nZmFjZSUyRmxpYiUyRnB5dGhvbjMuOCUyRnNpdGUtcGFja2FnZXMlMkZ0b3JjaCUyRm5uJTJGbW9kdWxlcyUyRm1vZHVsZS5weSUyMGluJTIwX2NhbGxfaW1wbChzZWxmJTJDJTIwKmlucHV0JTJDJTIwKiprd2FyZ3MpJTBBJTIwJTIwJTIwMTA0OSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwbm90JTIwKHNlbGYuX2JhY2t3YXJkX2hvb2tzJTIwb3IlMjBzZWxmLl9mb3J3YXJkX2hvb2tzJTIwb3IlMjBzZWxmLl9mb3J3YXJkX3ByZV9ob29rcyUyMG9yJTIwX2dsb2JhbF9iYWNrd2FyZF9ob29rcyUwQSUyMCUyMCUyMDEwNTAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvciUyMF9nbG9iYWxfZm9yd2FyZF9ob29rcyUyMG9yJTIwX2dsb2JhbF9mb3J3YXJkX3ByZV9ob29rcyklM0ElMEEtJTNFJTIwMTA1MSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGZvcndhcmRfY2FsbCgqaW5wdXQlMkMlMjAqKmt3YXJncyklMEElMjAlMjAlMjAxMDUyJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwRG8lMjBub3QlMjBjYWxsJTIwZnVuY3Rpb25zJTIwd2hlbiUyMGppdCUyMGlzJTIwdXNlZCUwQSUyMCUyMCUyMDEwNTMlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmdWxsX2JhY2t3YXJkX2hvb2tzJTJDJTIwbm9uX2Z1bGxfYmFja3dhcmRfaG9va3MlMjAlM0QlMjAlNUIlNUQlMkMlMjAlNUIlNUQlMEElMEF+JTJGbWluaWNvbmRhMyUyRmVudnMlMkZodWdnaW5nZmFjZSUyRmxpYiUyRnB5dGhvbjMuOCUyRnNpdGUtcGFja2FnZXMlMkZ0cmFuc2Zvcm1lcnMlMkZtb2RlbHMlMkZkaXN0aWxiZXJ0JTJGbW9kZWxpbmdfZGlzdGlsYmVydC5weSUyMGluJTIwZm9yd2FyZChzZWxmJTJDJTIwaW5wdXRfaWRzJTJDJTIwYXR0ZW50aW9uX21hc2slMkMlMjBoZWFkX21hc2slMkMlMjBpbnB1dHNfZW1iZWRzJTJDJTIwb3V0cHV0X2F0dGVudGlvbnMlMkMlMjBvdXRwdXRfaGlkZGVuX3N0YXRlcyUyQyUyMHJldHVybl9kaWN0KSUwQSUyMCUyMCUyMCUyMDQ3MSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJhaXNlJTIwVmFsdWVFcnJvciglMjJZb3UlMjBjYW5ub3QlMjBzcGVjaWZ5JTIwYm90aCUyMGlucHV0X2lkcyUyMGFuZCUyMGlucHV0c19lbWJlZHMlMjBhdCUyMHRoZSUyMHNhbWUlMjB0aW1lJTIyKSUwQSUyMCUyMCUyMCUyMDQ3MiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGVsaWYlMjBpbnB1dF9pZHMlMjBpcyUyMG5vdCUyME5vbmUlM0ElMEEtLSUzRSUyMDQ3MyUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlucHV0X3NoYXBlJTIwJTNEJTIwaW5wdXRfaWRzLnNpemUoKSUwQSUyMCUyMCUyMCUyMDQ3NCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGVsaWYlMjBpbnB1dHNfZW1iZWRzJTIwaXMlMjBub3QlMjBOb25lJTNBJTBBJTIwJTIwJTIwJTIwNDc1JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW5wdXRfc2hhcGUlMjAlM0QlMjBpbnB1dHNfZW1iZWRzLnNpemUoKSU1QiUzQS0xJTVEJTBBJTBBQXR0cmlidXRlRXJyb3IlM0ElMjAnbGlzdCclMjBvYmplY3QlMjBoYXMlMjBubyUyMGF0dHJpYnV0ZSUyMCdzaXplJyUwQSUyMiUyMiUyMg==",highlighted:`<span class="hljs-string">&quot;&quot;&quot;
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/var/folders/28/k4cy5q7s2hs92xq7_h89_vgm0000gn/T/ipykernel_75743/2725838073.py in &lt;module&gt;
1 inputs = tokenizer(question, text, add_special_tokens=True)
2 input_ids = inputs[&quot;input_ids&quot;]
----&gt; 3 outputs = model(**inputs)
4 answer_start_scores = outputs.start_logits
5 answer_end_scores = outputs.end_logits
~/miniconda3/envs/huggingface/lib/python3.8/site-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1049 if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1050 or _global_forward_hooks or _global_forward_pre_hooks):
-&gt; 1051 return forward_call(*input, **kwargs)
1052 # Do not call functions when jit is used
1053 full_backward_hooks, non_full_backward_hooks = [], []
~/miniconda3/envs/huggingface/lib/python3.8/site-packages/transformers/models/distilbert/modeling_distilbert.py in forward(self, input_ids, attention_mask, head_mask, inputs_embeds, start_positions, end_positions, output_attentions, output_hidden_states, return_dict)
723 return_dict = return_dict if return_dict is not None else self.config.use_return_dict
724
--&gt; 725 distilbert_output = self.distilbert(
726 input_ids=input_ids,
727 attention_mask=attention_mask,
~/miniconda3/envs/huggingface/lib/python3.8/site-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1049 if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1050 or _global_forward_hooks or _global_forward_pre_hooks):
-&gt; 1051 return forward_call(*input, **kwargs)
1052 # Do not call functions when jit is used
1053 full_backward_hooks, non_full_backward_hooks = [], []
~/miniconda3/envs/huggingface/lib/python3.8/site-packages/transformers/models/distilbert/modeling_distilbert.py in forward(self, input_ids, attention_mask, head_mask, inputs_embeds, output_attentions, output_hidden_states, return_dict)
471 raise ValueError(&quot;You cannot specify both input_ids and inputs_embeds at the same time&quot;)
472 elif input_ids is not None:
--&gt; 473 input_shape = input_ids.size()
474 elif inputs_embeds is not None:
475 input_shape = inputs_embeds.size()[:-1]
AttributeError: &#x27;list&#x27; object has no attribute &#x27;size&#x27;
&quot;&quot;&quot;</span>`,wrap:!1}}),Te=new ot({props:{id:"rSPyvPw0p9k"}}),ge=new ot({props:{id:"5PkZ4rbHL6c"}}),Ce=new b({props:{code:"aW5wdXRzJTVCJTIyaW5wdXRfaWRzJTIyJTVEJTVCJTNBNSU1RA==",highlighted:'inputs[<span class="hljs-string">&quot;input_ids&quot;</span>][:<span class="hljs-number">5</span>]',wrap:!1}}),Ie=new b({props:{code:"JTVCMTAxJTJDJTIwMjAyOSUyQyUyMDc3MDUlMkMlMjAyMDE1JTJDJTIwMjA2NCU1RA==",highlighted:'[<span class="hljs-number">101</span>, <span class="hljs-number">2029</span>, <span class="hljs-number">7705</span>, <span class="hljs-number">2015</span>, <span class="hljs-number">2064</span>]',wrap:!1}}),Ge=new b({props:{code:"dHlwZShpbnB1dHMlNUIlMjJpbnB1dF9pZHMlMjIlNUQp",highlighted:'<span class="hljs-built_in">type</span>(inputs[<span class="hljs-string">&quot;input_ids&quot;</span>])',wrap:!1}}),ve=new b({props:{code:"bGlzdA==",highlighted:'<span class="hljs-built_in">list</span>',wrap:!1}}),Xe=new b({props:{code:"fiUyRm1pbmljb25kYTMlMkZlbnZzJTJGaHVnZ2luZ2ZhY2UlMkZsaWIlMkZweXRob24zLjglMkZzaXRlLXBhY2thZ2VzJTJGdHJhbnNmb3JtZXJzJTJGbW9kZWxzJTJGZGlzdGlsYmVydCUyRm1vZGVsaW5nX2Rpc3RpbGJlcnQucHklMjBpbiUyMGZvcndhcmQoc2VsZiUyQyUyMGlucHV0X2lkcyUyQyUyMGF0dGVudGlvbl9tYXNrJTJDJTIwaGVhZF9tYXNrJTJDJTIwaW5wdXRzX2VtYmVkcyUyQyUyMG91dHB1dF9hdHRlbnRpb25zJTJDJTIwb3V0cHV0X2hpZGRlbl9zdGF0ZXMlMkMlMjByZXR1cm5fZGljdCklMEElMjAlMjAlMjAlMjA0NzElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByYWlzZSUyMFZhbHVlRXJyb3IoJTIyWW91JTIwY2Fubm90JTIwc3BlY2lmeSUyMGJvdGglMjBpbnB1dF9pZHMlMjBhbmQlMjBpbnB1dHNfZW1iZWRzJTIwYXQlMjB0aGUlMjBzYW1lJTIwdGltZSUyMiklMEElMjAlMjAlMjAlMjA0NzIlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbGlmJTIwaW5wdXRfaWRzJTIwaXMlMjBub3QlMjBOb25lJTNBJTBBLS0lM0UlMjA0NzMlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbnB1dF9zaGFwZSUyMCUzRCUyMGlucHV0X2lkcy5zaXplKCklMEElMjAlMjAlMjAlMjA0NzQlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbGlmJTIwaW5wdXRzX2VtYmVkcyUyMGlzJTIwbm90JTIwTm9uZSUzQSUwQSUyMCUyMCUyMCUyMDQ3NSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlucHV0X3NoYXBlJTIwJTNEJTIwaW5wdXRzX2VtYmVkcy5zaXplKCklNUIlM0EtMSU1RCUwQSUwQUF0dHJpYnV0ZUVycm9yJTNBJTIwJ2xpc3QnJTIwb2JqZWN0JTIwaGFzJTIwbm8lMjBhdHRyaWJ1dGUlMjAnc2l6ZSc=",highlighted:`~<span class="hljs-regexp">/miniconda3/</span>envs<span class="hljs-regexp">/huggingface/</span>lib<span class="hljs-regexp">/python3.8/</span>site-packages<span class="hljs-regexp">/transformers/m</span>odels<span class="hljs-regexp">/distilbert/m</span>odeling_distilbert.py in forward(self, input_ids, attention_mask, head_mask, inputs_embeds, output_attentions, output_hidden_states, return_dict)
<span class="hljs-number">471</span> raise ValueError(<span class="hljs-string">&quot;You cannot specify both input_ids and inputs_embeds at the same time&quot;</span>)
<span class="hljs-number">472</span> elif input_ids is not None:
--&gt; <span class="hljs-number">473</span> input_shape = input_ids.<span class="hljs-keyword">size</span>()
<span class="hljs-number">474</span> elif inputs_embeds is not None:
<span class="hljs-number">475</span> input_shape = inputs_embeds.<span class="hljs-keyword">size</span>()[:-<span class="hljs-number">1</span>]
AttributeError: <span class="hljs-string">&#x27;list&#x27;</span> object has no attribute <span class="hljs-string">&#x27;size&#x27;</span>`,wrap:!1}}),$e=new b({props:{code:"aW5wdXRzJTIwJTNEJTIwdG9rZW5pemVyKHF1ZXN0aW9uJTJDJTIwY29udGV4dCUyQyUyMGFkZF9zcGVjaWFsX3Rva2VucyUzRFRydWUlMkMlMjByZXR1cm5fdGVuc29ycyUzRCUyMnB0JTIyKSUwQWlucHV0X2lkcyUyMCUzRCUyMGlucHV0cyU1QiUyMmlucHV0X2lkcyUyMiU1RCU1QjAlNUQlMEFvdXRwdXRzJTIwJTNEJTIwbW9kZWwoKippbnB1dHMpJTBBYW5zd2VyX3N0YXJ0X3Njb3JlcyUyMCUzRCUyMG91dHB1dHMuc3RhcnRfbG9naXRzJTBBYW5zd2VyX2VuZF9zY29yZXMlMjAlM0QlMjBvdXRwdXRzLmVuZF9sb2dpdHMlMEElMjMlMjBHZXQlMjB0aGUlMjBtb3N0JTIwbGlrZWx5JTIwYmVnaW5uaW5nJTIwb2YlMjBhbnN3ZXIlMjB3aXRoJTIwdGhlJTIwYXJnbWF4JTIwb2YlMjB0aGUlMjBzY29yZSUwQWFuc3dlcl9zdGFydCUyMCUzRCUyMHRvcmNoLmFyZ21heChhbnN3ZXJfc3RhcnRfc2NvcmVzKSUwQSUyMyUyMEdldCUyMHRoZSUyMG1vc3QlMjBsaWtlbHklMjBlbmQlMjBvZiUyMGFuc3dlciUyMHdpdGglMjB0aGUlMjBhcmdtYXglMjBvZiUyMHRoZSUyMHNjb3JlJTBBYW5zd2VyX2VuZCUyMCUzRCUyMHRvcmNoLmFyZ21heChhbnN3ZXJfZW5kX3Njb3JlcyklMjAlMkIlMjAxJTBBYW5zd2VyJTIwJTNEJTIwdG9rZW5pemVyLmNvbnZlcnRfdG9rZW5zX3RvX3N0cmluZyglMEElMjAlMjAlMjAlMjB0b2tlbml6ZXIuY29udmVydF9pZHNfdG9fdG9rZW5zKGlucHV0X2lkcyU1QmFuc3dlcl9zdGFydCUzQWFuc3dlcl9lbmQlNUQpJTBBKSUwQXByaW50KGYlMjJRdWVzdGlvbiUzQSUyMCU3QnF1ZXN0aW9uJTdEJTIyKSUwQXByaW50KGYlMjJBbnN3ZXIlM0ElMjAlN0JhbnN3ZXIlN0QlMjIp",highlighted:`inputs = tokenizer(question, context, add_special_tokens=<span class="hljs-literal">True</span>, return_tensors=<span class="hljs-string">&quot;pt&quot;</span>)
input_ids = inputs[<span class="hljs-string">&quot;input_ids&quot;</span>][<span class="hljs-number">0</span>]
outputs = model(**inputs)
answer_start_scores = outputs.start_logits
answer_end_scores = outputs.end_logits
<span class="hljs-comment"># Get the most likely beginning of answer with the argmax of the score</span>
answer_start = torch.argmax(answer_start_scores)
<span class="hljs-comment"># Get the most likely end of answer with the argmax of the score</span>
answer_end = torch.argmax(answer_end_scores) + <span class="hljs-number">1</span>
answer = tokenizer.convert_tokens_to_string(
tokenizer.convert_ids_to_tokens(input_ids[answer_start:answer_end])
)
<span class="hljs-built_in">print</span>(<span class="hljs-string">f&quot;Question: <span class="hljs-subst">{question}</span>&quot;</span>)
<span class="hljs-built_in">print</span>(<span class="hljs-string">f&quot;Answer: <span class="hljs-subst">{answer}</span>&quot;</span>)`,wrap:!1}}),ze=new b({props:{code:"JTIyJTIyJTIyJTBBUXVlc3Rpb24lM0ElMjBXaGljaCUyMGZyYW1ld29ya3MlMjBjYW4lMjBJJTIwdXNlJTNGJTBBQW5zd2VyJTNBJTIwcHl0b3JjaCUyQyUyMHRlbnNvcmZsb3clMkMlMjBhbmQlMjBqYXglMEElMjIlMjIlMjI=",highlighted:`<span class="hljs-string">&quot;&quot;&quot;
Question: Which frameworks can I use?
Answer: pytorch, tensorflow, and jax
&quot;&quot;&quot;</span>`,wrap:!1}}),Ae=new ss({props:{source:"https://github.com/huggingface/course/blob/main/chapters/it/chapter8/2.mdx"}}),{c(){y=n("meta"),U=a(),J=n("p"),f=a(),M(W.$$.fragment),Ve=a(),M(G.$$.fragment),Ye=a(),v=n("p"),v.innerHTML=dt,He=a(),M(k.$$.fragment),Qe=a(),X=n("p"),X.innerHTML=pt,Fe=a(),M(_.$$.fragment),Se=a(),B=n("p"),B.textContent=ct,qe=a(),M($.$$.fragment),Ee=a(),z=n("p"),z.innerHTML=ut,Le=a(),M(R.$$.fragment),De=a(),A=n("p"),A.innerHTML=mt,Pe=a(),M(x.$$.fragment),Ke=a(),N=n("p"),N.textContent=yt,Oe=a(),V=n("blockquote"),V.innerHTML=bt,el=a(),Y=n("p"),Y.innerHTML=Jt,ll=a(),M(H.$$.fragment),tl=a(),M(Q.$$.fragment),sl=a(),F=n("p"),F.innerHTML=Ut,al=a(),w=n("div"),w.innerHTML=ft,il=a(),S=n("p"),S.innerHTML=jt,nl=a(),M(T.$$.fragment),ol=a(),q=n("p"),q.innerHTML=wt,rl=a(),M(E.$$.fragment),Ml=a(),M(h.$$.fragment),dl=a(),L=n("p"),L.textContent=Tt,pl=a(),g=n("div"),g.innerHTML=ht,cl=a(),D=n("p"),D.textContent=gt,ul=a(),Z=n("div"),Z.innerHTML=Zt,ml=a(),P=n("p"),P.textContent=Ct,yl=a(),M(K.$$.fragment),bl=a(),M(O.$$.fragment),Jl=a(),ee=n("p"),ee.innerHTML=It,Ul=a(),M(le.$$.fragment),fl=a(),M(te.$$.fragment),jl=a(),se=n("p"),se.innerHTML=Wt,wl=a(),M(ae.$$.fragment),Tl=a(),M(C.$$.fragment),hl=a(),ie=n("p"),ie.innerHTML=Gt,gl=a(),M(ne.$$.fragment),Zl=a(),oe=n("p"),oe.innerHTML=vt,Cl=a(),M(re.$$.fragment),Il=a(),M(Me.$$.fragment),Wl=a(),de=n("p"),de.textContent=kt,Gl=a(),pe=n("ul"),pe.innerHTML=Xt,vl=a(),ce=n("p"),ce.textContent=_t,kl=a(),M(ue.$$.fragment),Xl=a(),me=n("p"),me.innerHTML=Bt,_l=a(),M(ye.$$.fragment),Bl=a(),be=n("p"),be.textContent=$t,$l=a(),M(Je.$$.fragment),zl=a(),Ue=n("p"),Ue.innerHTML=zt,Rl=a(),M(fe.$$.fragment),Al=a(),M(je.$$.fragment),xl=a(),we=n("p"),we.textContent=Rt,Nl=a(),M(Te.$$.fragment),Vl=a(),he=n("p"),he.textContent=At,Yl=a(),M(ge.$$.fragment),Hl=a(),Ze=n("p"),Ze.innerHTML=xt,Ql=a(),M(Ce.$$.fragment),Fl=a(),M(Ie.$$.fragment),Sl=a(),We=n("p"),We.innerHTML=Nt,ql=a(),M(Ge.$$.fragment),El=a(),M(ve.$$.fragment),Ll=a(),ke=n("p"),ke.innerHTML=Vt,Dl=a(),M(Xe.$$.fragment),Pl=a(),_e=n("p"),_e.innerHTML=Yt,Kl=a(),I=n("div"),I.innerHTML=Ht,Ol=a(),Be=n("p"),Be.innerHTML=Qt,et=a(),M($e.$$.fragment),lt=a(),M(ze.$$.fragment),tt=a(),Re=n("p"),Re.innerHTML=Ft,st=a(),M(Ae.$$.fragment),at=a(),Ne=n("p"),this.h()},l(e){const l=es("svelte-u9bgzb",document.head);y=o(l,"META",{name:!0,content:!0}),l.forEach(t),U=i(e),J=o(e,"P",{}),Lt(J).forEach(t),f=i(e),d(W.$$.fragment,e),Ve=i(e),d(G.$$.fragment,e),Ye=i(e),v=o(e,"P",{"data-svelte-h":!0}),r(v)!=="svelte-1c4w68a"&&(v.innerHTML=dt),He=i(e),d(k.$$.fragment,e),Qe=i(e),X=o(e,"P",{"data-svelte-h":!0}),r(X)!=="svelte-1nlydqx"&&(X.innerHTML=pt),Fe=i(e),d(_.$$.fragment,e),Se=i(e),B=o(e,"P",{"data-svelte-h":!0}),r(B)!=="svelte-1o81nr0"&&(B.textContent=ct),qe=i(e),d($.$$.fragment,e),Ee=i(e),z=o(e,"P",{"data-svelte-h":!0}),r(z)!=="svelte-1vtquro"&&(z.innerHTML=ut),Le=i(e),d(R.$$.fragment,e),De=i(e),A=o(e,"P",{"data-svelte-h":!0}),r(A)!=="svelte-mo9hqq"&&(A.innerHTML=mt),Pe=i(e),d(x.$$.fragment,e),Ke=i(e),N=o(e,"P",{"data-svelte-h":!0}),r(N)!=="svelte-1g2uvw"&&(N.textContent=yt),Oe=i(e),V=o(e,"BLOCKQUOTE",{"data-svelte-h":!0}),r(V)!=="svelte-1v5p0kg"&&(V.innerHTML=bt),el=i(e),Y=o(e,"P",{"data-svelte-h":!0}),r(Y)!=="svelte-9aunak"&&(Y.innerHTML=Jt),ll=i(e),d(H.$$.fragment,e),tl=i(e),d(Q.$$.fragment,e),sl=i(e),F=o(e,"P",{"data-svelte-h":!0}),r(F)!=="svelte-yurapo"&&(F.innerHTML=Ut),al=i(e),w=o(e,"DIV",{class:!0,"data-svelte-h":!0}),r(w)!=="svelte-1196hzp"&&(w.innerHTML=ft),il=i(e),S=o(e,"P",{"data-svelte-h":!0}),r(S)!=="svelte-170jfd5"&&(S.innerHTML=jt),nl=i(e),d(T.$$.fragment,e),ol=i(e),q=o(e,"P",{"data-svelte-h":!0}),r(q)!=="svelte-9ul5xb"&&(q.innerHTML=wt),rl=i(e),d(E.$$.fragment,e),Ml=i(e),d(h.$$.fragment,e),dl=i(e),L=o(e,"P",{"data-svelte-h":!0}),r(L)!=="svelte-vhfqrw"&&(L.textContent=Tt),pl=i(e),g=o(e,"DIV",{class:!0,"data-svelte-h":!0}),r(g)!=="svelte-6ebc1j"&&(g.innerHTML=ht),cl=i(e),D=o(e,"P",{"data-svelte-h":!0}),r(D)!=="svelte-18x64dc"&&(D.textContent=gt),ul=i(e),Z=o(e,"DIV",{class:!0,"data-svelte-h":!0}),r(Z)!=="svelte-1b95mxr"&&(Z.innerHTML=Zt),ml=i(e),P=o(e,"P",{"data-svelte-h":!0}),r(P)!=="svelte-dh48c7"&&(P.textContent=Ct),yl=i(e),d(K.$$.fragment,e),bl=i(e),d(O.$$.fragment,e),Jl=i(e),ee=o(e,"P",{"data-svelte-h":!0}),r(ee)!=="svelte-67xn1j"&&(ee.innerHTML=It),Ul=i(e),d(le.$$.fragment,e),fl=i(e),d(te.$$.fragment,e),jl=i(e),se=o(e,"P",{"data-svelte-h":!0}),r(se)!=="svelte-f3v4n5"&&(se.innerHTML=Wt),wl=i(e),d(ae.$$.fragment,e),Tl=i(e),d(C.$$.fragment,e),hl=i(e),ie=o(e,"P",{"data-svelte-h":!0}),r(ie)!=="svelte-v0q3wc"&&(ie.innerHTML=Gt),gl=i(e),d(ne.$$.fragment,e),Zl=i(e),oe=o(e,"P",{"data-svelte-h":!0}),r(oe)!=="svelte-nibhwr"&&(oe.innerHTML=vt),Cl=i(e),d(re.$$.fragment,e),Il=i(e),d(Me.$$.fragment,e),Wl=i(e),de=o(e,"P",{"data-svelte-h":!0}),r(de)!=="svelte-1cvtsci"&&(de.textContent=kt),Gl=i(e),pe=o(e,"UL",{"data-svelte-h":!0}),r(pe)!=="svelte-16dadvi"&&(pe.innerHTML=Xt),vl=i(e),ce=o(e,"P",{"data-svelte-h":!0}),r(ce)!=="svelte-18rhp7k"&&(ce.textContent=_t),kl=i(e),d(ue.$$.fragment,e),Xl=i(e),me=o(e,"P",{"data-svelte-h":!0}),r(me)!=="svelte-ihpqta"&&(me.innerHTML=Bt),_l=i(e),d(ye.$$.fragment,e),Bl=i(e),be=o(e,"P",{"data-svelte-h":!0}),r(be)!=="svelte-18r32hi"&&(be.textContent=$t),$l=i(e),d(Je.$$.fragment,e),zl=i(e),Ue=o(e,"P",{"data-svelte-h":!0}),r(Ue)!=="svelte-u5ws13"&&(Ue.innerHTML=zt),Rl=i(e),d(fe.$$.fragment,e),Al=i(e),d(je.$$.fragment,e),xl=i(e),we=o(e,"P",{"data-svelte-h":!0}),r(we)!=="svelte-75kstf"&&(we.textContent=Rt),Nl=i(e),d(Te.$$.fragment,e),Vl=i(e),he=o(e,"P",{"data-svelte-h":!0}),r(he)!=="svelte-1hxakvh"&&(he.textContent=At),Yl=i(e),d(ge.$$.fragment,e),Hl=i(e),Ze=o(e,"P",{"data-svelte-h":!0}),r(Ze)!=="svelte-r09876"&&(Ze.innerHTML=xt),Ql=i(e),d(Ce.$$.fragment,e),Fl=i(e),d(Ie.$$.fragment,e),Sl=i(e),We=o(e,"P",{"data-svelte-h":!0}),r(We)!=="svelte-5v9je9"&&(We.innerHTML=Nt),ql=i(e),d(Ge.$$.fragment,e),El=i(e),d(ve.$$.fragment,e),Ll=i(e),ke=o(e,"P",{"data-svelte-h":!0}),r(ke)!=="svelte-6s4etn"&&(ke.innerHTML=Vt),Dl=i(e),d(Xe.$$.fragment,e),Pl=i(e),_e=o(e,"P",{"data-svelte-h":!0}),r(_e)!=="svelte-144d2dl"&&(_e.innerHTML=Yt),Kl=i(e),I=o(e,"DIV",{class:!0,"data-svelte-h":!0}),r(I)!=="svelte-1i8wi5i"&&(I.innerHTML=Ht),Ol=i(e),Be=o(e,"P",{"data-svelte-h":!0}),r(Be)!=="svelte-7wtlec"&&(Be.innerHTML=Qt),et=i(e),d($e.$$.fragment,e),lt=i(e),d(ze.$$.fragment,e),tt=i(e),Re=o(e,"P",{"data-svelte-h":!0}),r(Re)!=="svelte-9c7ebp"&&(Re.innerHTML=Ft),st=i(e),d(Ae.$$.fragment,e),at=i(e),Ne=o(e,"P",{}),Lt(Ne).forEach(t),this.h()},h(){xe(y,"name","hf:doc:metadata"),xe(y,"content",rs),xe(w,"class","flex justify-center"),xe(g,"class","flex justify-center"),xe(Z,"class","flex justify-center"),xe(I,"class","flex justify-center")},m(e,l){ls(document.head,y),s(e,U,l),s(e,J,l),s(e,f,l),p(W,e,l),s(e,Ve,l),p(G,e,l),s(e,Ye,l),s(e,v,l),s(e,He,l),p(k,e,l),s(e,Qe,l),s(e,X,l),s(e,Fe,l),p(_,e,l),s(e,Se,l),s(e,B,l),s(e,qe,l),p($,e,l),s(e,Ee,l),s(e,z,l),s(e,Le,l),p(R,e,l),s(e,De,l),s(e,A,l),s(e,Pe,l),p(x,e,l),s(e,Ke,l),s(e,N,l),s(e,Oe,l),s(e,V,l),s(e,el,l),s(e,Y,l),s(e,ll,l),p(H,e,l),s(e,tl,l),p(Q,e,l),s(e,sl,l),s(e,F,l),s(e,al,l),s(e,w,l),s(e,il,l),s(e,S,l),s(e,nl,l),p(T,e,l),s(e,ol,l),s(e,q,l),s(e,rl,l),p(E,e,l),s(e,Ml,l),p(h,e,l),s(e,dl,l),s(e,L,l),s(e,pl,l),s(e,g,l),s(e,cl,l),s(e,D,l),s(e,ul,l),s(e,Z,l),s(e,ml,l),s(e,P,l),s(e,yl,l),p(K,e,l),s(e,bl,l),p(O,e,l),s(e,Jl,l),s(e,ee,l),s(e,Ul,l),p(le,e,l),s(e,fl,l),p(te,e,l),s(e,jl,l),s(e,se,l),s(e,wl,l),p(ae,e,l),s(e,Tl,l),p(C,e,l),s(e,hl,l),s(e,ie,l),s(e,gl,l),p(ne,e,l),s(e,Zl,l),s(e,oe,l),s(e,Cl,l),p(re,e,l),s(e,Il,l),p(Me,e,l),s(e,Wl,l),s(e,de,l),s(e,Gl,l),s(e,pe,l),s(e,vl,l),s(e,ce,l),s(e,kl,l),p(ue,e,l),s(e,Xl,l),s(e,me,l),s(e,_l,l),p(ye,e,l),s(e,Bl,l),s(e,be,l),s(e,$l,l),p(Je,e,l),s(e,zl,l),s(e,Ue,l),s(e,Rl,l),p(fe,e,l),s(e,Al,l),p(je,e,l),s(e,xl,l),s(e,we,l),s(e,Nl,l),p(Te,e,l),s(e,Vl,l),s(e,he,l),s(e,Yl,l),p(ge,e,l),s(e,Hl,l),s(e,Ze,l),s(e,Ql,l),p(Ce,e,l),s(e,Fl,l),p(Ie,e,l),s(e,Sl,l),s(e,We,l),s(e,ql,l),p(Ge,e,l),s(e,El,l),p(ve,e,l),s(e,Ll,l),s(e,ke,l),s(e,Dl,l),p(Xe,e,l),s(e,Pl,l),s(e,_e,l),s(e,Kl,l),s(e,I,l),s(e,Ol,l),s(e,Be,l),s(e,et,l),p($e,e,l),s(e,lt,l),p(ze,e,l),s(e,tt,l),s(e,Re,l),s(e,st,l),p(Ae,e,l),s(e,at,l),s(e,Ne,l),it=!0},p(e,[l]){const St={};l&2&&(St.$$scope={dirty:l,ctx:e}),T.$set(St);const qt={};l&2&&(qt.$$scope={dirty:l,ctx:e}),h.$set(qt);const Et={};l&2&&(Et.$$scope={dirty:l,ctx:e}),C.$set(Et)},i(e){it||(c(W.$$.fragment,e),c(G.$$.fragment,e),c(k.$$.fragment,e),c(_.$$.fragment,e),c($.$$.fragment,e),c(R.$$.fragment,e),c(x.$$.fragment,e),c(H.$$.fragment,e),c(Q.$$.fragment,e),c(T.$$.fragment,e),c(E.$$.fragment,e),c(h.$$.fragment,e),c(K.$$.fragment,e),c(O.$$.fragment,e),c(le.$$.fragment,e),c(te.$$.fragment,e),c(ae.$$.fragment,e),c(C.$$.fragment,e),c(ne.$$.fragment,e),c(re.$$.fragment,e),c(Me.$$.fragment,e),c(ue.$$.fragment,e),c(ye.$$.fragment,e),c(Je.$$.fragment,e),c(fe.$$.fragment,e),c(je.$$.fragment,e),c(Te.$$.fragment,e),c(ge.$$.fragment,e),c(Ce.$$.fragment,e),c(Ie.$$.fragment,e),c(Ge.$$.fragment,e),c(ve.$$.fragment,e),c(Xe.$$.fragment,e),c($e.$$.fragment,e),c(ze.$$.fragment,e),c(Ae.$$.fragment,e),it=!0)},o(e){u(W.$$.fragment,e),u(G.$$.fragment,e),u(k.$$.fragment,e),u(_.$$.fragment,e),u($.$$.fragment,e),u(R.$$.fragment,e),u(x.$$.fragment,e),u(H.$$.fragment,e),u(Q.$$.fragment,e),u(T.$$.fragment,e),u(E.$$.fragment,e),u(h.$$.fragment,e),u(K.$$.fragment,e),u(O.$$.fragment,e),u(le.$$.fragment,e),u(te.$$.fragment,e),u(ae.$$.fragment,e),u(C.$$.fragment,e),u(ne.$$.fragment,e),u(re.$$.fragment,e),u(Me.$$.fragment,e),u(ue.$$.fragment,e),u(ye.$$.fragment,e),u(Je.$$.fragment,e),u(fe.$$.fragment,e),u(je.$$.fragment,e),u(Te.$$.fragment,e),u(ge.$$.fragment,e),u(Ce.$$.fragment,e),u(Ie.$$.fragment,e),u(Ge.$$.fragment,e),u(ve.$$.fragment,e),u(Xe.$$.fragment,e),u($e.$$.fragment,e),u(ze.$$.fragment,e),u(Ae.$$.fragment,e),it=!1},d(e){e&&(t(U),t(J),t(f),t(Ve),t(Ye),t(v),t(He),t(Qe),t(X),t(Fe),t(Se),t(B),t(qe),t(Ee),t(z),t(Le),t(De),t(A),t(Pe),t(Ke),t(N),t(Oe),t(V),t(el),t(Y),t(ll),t(tl),t(sl),t(F),t(al),t(w),t(il),t(S),t(nl),t(ol),t(q),t(rl),t(Ml),t(dl),t(L),t(pl),t(g),t(cl),t(D),t(ul),t(Z),t(ml),t(P),t(yl),t(bl),t(Jl),t(ee),t(Ul),t(fl),t(jl),t(se),t(wl),t(Tl),t(hl),t(ie),t(gl),t(Zl),t(oe),t(Cl),t(Il),t(Wl),t(de),t(Gl),t(pe),t(vl),t(ce),t(kl),t(Xl),t(me),t(_l),t(Bl),t(be),t($l),t(zl),t(Ue),t(Rl),t(Al),t(xl),t(we),t(Nl),t(Vl),t(he),t(Yl),t(Hl),t(Ze),t(Ql),t(Fl),t(Sl),t(We),t(ql),t(El),t(Ll),t(ke),t(Dl),t(Pl),t(_e),t(Kl),t(I),t(Ol),t(Be),t(et),t(lt),t(tt),t(Re),t(st),t(at),t(Ne)),t(y),m(W,e),m(G,e),m(k,e),m(_,e),m($,e),m(R,e),m(x,e),m(H,e),m(Q,e),m(T,e),m(E,e),m(h,e),m(K,e),m(O,e),m(le,e),m(te,e),m(ae,e),m(C,e),m(ne,e),m(re,e),m(Me,e),m(ue,e),m(ye,e),m(Je,e),m(fe,e),m(je,e),m(Te,e),m(ge,e),m(Ce,e),m(Ie,e),m(Ge,e),m(ve,e),m(Xe,e),m($e,e),m(ze,e),m(Ae,e)}}}const rs='{"title":"Cosa fare quando si riceve un errore","local":"cosa-fare-quando-si-riceve-un-errore","sections":[{"title":"Fare il debug della pipeline di 🤗 Transformers","local":"fare-il-debug-della-pipeline-di--transformers","sections":[],"depth":2},{"title":"Debug del forward pass del modello","local":"debug-del-forward-pass-del-modello","sections":[],"depth":2}],"depth":1}';function Ms(j){return Pt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Js extends Kt{constructor(y){super(),Ot(this,y,Ms,os,Dt,{})}}export{Js as component};

Xet Storage Details

Size:
55.1 kB
·
Xet hash:
eabd3c7574707e9b63f20dd1b295f64ad3f311905c2deffbf031be0f6d3475f0

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.