Estate a Hugging Face

Hugging Face Summer

L’estate è ufficialmente finita e questi ultimi mesi sono stati piuttosto frenetici da Hugging Face. Dal lancio di nuove funzionalità nell’Hub, alla ricerca e allo sviluppo Open Source, il nostro team ha lavorato duramente per supportare la comunità attraverso tecnologie aperte e collaborative.

In questo post del blog ti aggiorneremo su tutto ciò che è successo da Hugging Face nei mesi di giugno, luglio e agosto!

Questo post copre una vasta gamma di aree su cui il nostro team ha lavorato, quindi non esitare a saltare alle parti che ti interessano di più 🤗

  1. Nuove funzionalità
  2. Comunità
  3. Open Source
  4. Soluzioni
  5. Ricerca

Nuove funzionalità

Negli ultimi mesi, l’Hub è passato da 10.000 repository pubblici di modelli a oltre 16.000 modelli! Applausi alla nostra comunità per aver condiviso così tanti modelli straordinari con il mondo. E oltre ai numeri, abbiamo un sacco di nuove funzionalità fantastiche da condividere con te!

Spaces Beta ( hf.co/spaces )

Spaces è una soluzione semplice e gratuita per ospitare applicazioni dimostrative di Machine Learning direttamente sul tuo profilo utente o sul profilo hf.co della tua organizzazione. Supportiamo due fantastici SDK che ti consentono di creare facilmente app interessanti in Python: Gradio e Streamlit . In pochi minuti puoi distribuire un’app e condividerla con la comunità! 🚀

Spaces ti consente di impostare segreti , permette requisiti personalizzati e può persino essere gestito direttamente dai repository di GitHub . Puoi iscriverti alla beta su hf.co/spaces . Ecco alcuni dei nostri preferiti!

  • Crea ricette con l’aiuto di Chef Transformer
  • Trascrivi il discorso in testo con HuBERT
  • Fai segmentazione in un video con il modello DINO
  • Usa Paint Transformer per fare dipinti da una foto data
  • O puoi semplicemente esplorare uno dei più di 100 Spaces esistenti !

Condividi un po’ d’amore

Ora puoi mettere “mi piace” su qualsiasi modello, dataset o Space su http://huggingface.co , il che significa che puoi condividere un po’ d’amore con la comunità ❤️. Puoi anche tenere d’occhio chi apprezza cosa facendo clic sulla casella dei “mi piace” 👀. Vai avanti e metti “mi piace” ai tuoi stessi repository, non giudichiamo 😉.

Integrazione di TensorBoard

A fine giugno, abbiamo lanciato un’ integrazione di TensorBoard per tutti i nostri modelli. Se ci sono tracce di TensorBoard nel repository, viene avviata automaticamente un’istanza gratuita di TensorBoard per te. Questo funziona sia con repository pubblici che privati e per qualsiasi libreria che ha tracce di TensorBoard!

Metriche

A luglio, abbiamo aggiunto la possibilità di elencare le metriche di valutazione nei repository dei modelli aggiungendole alla scheda del modello📈. Se aggiungi una metrica di valutazione nella sezione model-index della scheda del modello, verrà visualizzata con orgoglio nel tuo repository del modello.

Se questo non bastasse, queste metriche saranno automaticamente collegate al leaderboard corrispondente di Papers With Code. Ciò significa che non appena condividi il tuo modello sull’Hub, puoi confrontare i tuoi risultati fianco a fianco con gli altri membri della comunità. 💪

Controlla questo repository come esempio, prestando particolare attenzione alla sezione model-index della sua scheda del modello per vedere come puoi fare questo tu stesso e trovare automaticamente le metriche in Papers with Code .

Nuovi widget

L’Hub dispone di 18 widget che consentono agli utenti di provare i modelli direttamente nel browser.

Con le nostre ultime integrazioni a Sentence Transformers, abbiamo anche introdotto due nuovi widget: estrazione delle caratteristiche e similarità delle frasi.

Il nuovo widget di classificazione audio consente molti casi d’uso interessanti: identificazione della lingua, rilevamento dei suoni di strada 🚨, riconoscimento dei comandi , identificazione del parlante e altro ancora! Puoi provarlo oggi con i modelli transformers e speechbrain! 🔊 (Attenzione, quando provi alcuni dei modelli, potresti dover abbaiare ad alta voce)

Puoi provare la nostra demo anticipata di classificazione dei dati strutturati con Scikit-learn. E infine, abbiamo anche introdotto nuovi widget per modelli correlati alle immagini: testo per immagine, classificazione delle immagini e rilevamento degli oggetti. Prova la classificazione delle immagini con il modello ViT di Google qui e il rilevamento degli oggetti con il modello DETR di Facebook AI qui!

Altre funzionalità

Questo non è tutto ciò che è successo nell’Hub. Abbiamo introdotto una documentazione nuova e migliorata dell’Hub. Abbiamo anche introdotto due funzionalità molto richieste: ora gli utenti possono trasferire/ridenominare i repository e caricare direttamente nuovi file nell’Hub.

Comunità

Corso di Hugging Face

A giugno, abbiamo lanciato la prima parte del nostro corso online gratuito! Il corso ti insegna tutto sull’ecosistema 🤗: Transformers, Tokenizers, Datasets, Accelerate e l’Hub. Puoi anche trovare i collegamenti alle lezioni del corso nella documentazione ufficiale delle nostre librerie. Le sessioni live per tutti i capitoli possono essere trovate sul nostro canale YouTube. Resta sintonizzato per la prossima parte del corso che lanceremo più avanti quest’anno!

Sprint di JAX/FLAX

A luglio abbiamo ospitato il nostro evento comunitario più grande di sempre con quasi 800 partecipanti! In questo evento co-organizzato con i team di JAX/Flax e Google Cloud, progetti di NLP, Computer Vision e Speech intensivi in termini di calcolo sono stati resi accessibili a un pubblico più ampio di ingegneri e ricercatori fornendo TPUv3 gratuiti. I partecipanti hanno creato oltre 170 modelli, 22 dataset e 38 demo di Spaces 🤯. Puoi esplorare tutte le incredibili demo e i progetti qui.

Sono state presentate relazioni su JAX/Flax, Transformers, modellazione del linguaggio su larga scala e altro ancora! Puoi trovare tutte le registrazioni qui.

Siamo davvero entusiasti di condividere il lavoro dei 3 team vincitori!

  1. Dall-e mini. DALL·E mini è un modello che genera immagini da qualsiasi prompt tu dia! DALL·E mini è 27 volte più piccolo del DALL·E originale e ha comunque risultati impressionanti.

  2. DietNerf. DietNerf è un modello di sintesi della visualizzazione neurale 3D progettato per l’apprendimento a pochi esempi della ricostruzione di scene 3D utilizzando le visualizzazioni 2D. Questa è la prima implementazione open source del paper “Putting Nerf on a Diet”.

  3. CLIP RSIC. CLIP RSIC è un modello CLIP sintonizzato sui dati di immagini da telerilevamento per consentire la classificazione e la didascalia delle immagini satellitari a zero-shot. Questo progetto dimostra quanto efficaci possano essere i modelli CLIP sintonizzati per domini specializzati.

Oltre a questi progetti molto interessanti, siamo entusiasti di come questi eventi della comunità consentano di addestrare modelli grandi e multimodali per diverse lingue. Ad esempio, abbiamo visto i primi grandi modelli di linguaggio open source per alcune lingue a bassa risorsa come lo Swahili, il polacco e il Marathi.

Bonus

Oltre a tutto ciò che abbiamo appena condiviso, il nostro team ha fatto molte altre cose. Ecco solo alcune di esse:

  • 📖 Questa serie di video in 3 parti illustra la teoria su come addestrare modelli di embedding di frasi all’avanguardia.
  • Siamo intervenuti in PyTorch Community Voices e abbiamo partecipato a una sessione di domande e risposte (video).
  • Hugging Face ha collaborato con NLP in spagnolo e SpainAI in un corso di spagnolo che insegna concetti e architetture all’avanguardia, nonché le loro applicazioni attraverso casi d’uso.
  • Siamo intervenuti a MLOps World Demo Days.

Open Source

Novità in Transformers

L’estate è stata un periodo emozionante per 🤗 Transformers! La libreria ha raggiunto i 50.000 stelle, 30 milioni di download totali e quasi 1000 contributori! 🤩

Quindi, cosa c’è di nuovo? JAX/Flax è ora il terzo framework supportato con oltre 5000 modelli nell’Hub! Puoi trovare esempi attivamente mantenuti per diverse attività come la classificazione del testo. Stiamo anche lavorando duramente per migliorare il nostro supporto a TensorFlow: tutti i nostri esempi sono stati rivisti per essere più robusti, idiomatizzati per TensorFlow e più chiari. Ciò include esempi come la sintesi, la traduzione e il riconoscimento delle entità nominate.

Ora puoi facilmente pubblicare il tuo modello nell’Hub, includendo automaticamente schede modelli, metriche di valutazione e istanze di TensorBoard. Vi è inoltre un maggior supporto per l’esportazione dei modelli in ONNX con il nuovo modulo transformers.onnx.

python -m transformers.onnx --model=bert-base-cased onnx/bert-base-cased/

Gli ultimi 4 rilasci hanno introdotto molti nuovi modelli interessanti!

  • DETR può effettuare una rapida rilevazione degli oggetti e segmentazione delle immagini end-to-end. Dai un’occhiata ad alcuni dei nostri tutorial della community!

  • ByT5 è il primo modello senza tokenizer nell’Hub! Puoi trovare tutti i checkpoint disponibili qui.
  • CANINE è un altro modello solo encoder senza tokenizer di Google AI, che opera direttamente a livello di carattere. Puoi trovare tutti i checkpoint (multilingue) qui.
  • HuBERT mostra risultati entusiasmanti per attività audio successive come la classificazione dei comandi e il riconoscimento delle emozioni. Controlla i modelli qui.
  • LayoutLMv2 e LayoutXLM sono due modelli incredibili in grado di analizzare immagini di documenti (come i PDF) incorporando informazioni di testo, layout e visive. Abbiamo creato una demo Space in modo che tu possa provarlo direttamente! I notebook demo possono essere trovati qui.

  • BEiT di Microsoft Research fa sì che i Vision Transformers auto-supervisionati superino quelli supervisionati, utilizzando un obiettivo di pre-addestramento intelligente ispirato a BERT.
  • RemBERT, un grande Transformer multilingue che supera XLM-R (e mT5 con un numero simile di parametri) nel trasferimento senza supervisione.
  • Splinter che può essere utilizzato per la risposta a domande con pochi esempi. Con soli 128 esempi, Splinter riesce a raggiungere ~73% di F1 su SQuAD, superando i modelli basati su MLM di 24 punti!

L’Hub è ora integrato in transformers, con la possibilità di caricare la configurazione, il modello e i file del tokenizer nell’Hub senza lasciare l’ambiente di esecuzione di Python! Il Trainer può ora caricare direttamente nell’Hub ogni volta che viene salvato un checkpoint:

Novità in Datasets

Puoi trovare 1400 dataset pubblici su https://huggingface.co/datasets grazie ai fantastici contributi di tutta la nostra community. 💯

Il supporto per datasets continua a crescere: può essere utilizzato in JAX, elaborare file parquet, utilizzare file remoti e offre un supporto più ampio per altri ambiti come il riconoscimento automatico del parlato e la classificazione delle immagini.

Gli utenti possono anche ospitare e condividere direttamente i loro dataset con la community caricando i file dei dati in un repository sull’Hub dei Dataset.

Cosa c’è di interessante nei nuovi dataset? I dataset Microsoft CodeXGlue per varie attività di codifica (completamento del codice, generazione, ricerca, ecc.), enormi dataset come C4 e MC4, e molti altri come RussianSuperGLUE e DISFL-QA.

Nuove librerie benvenute nell’Hub

Oltre ad avere un’integrazione profonda con modelli basati su transformers, l’Hub sta anche stringendo ottime collaborazioni con librerie di ML Open Source per fornire hosting e versioning gratuiti dei modelli. Stiamo raggiungendo questo obiettivo con la nostra libreria Open-Source huggingface_hub, nonché con la nuova documentazione dell’Hub.

Tutti i pipeline canonici di spaCy ora possono essere trovati nell’organizzazione ufficiale di spaCy, e ogni utente può condividere le proprie pipeline con un singolo comando python -m spacy huggingface-hub. Per saperne di più, vai su https://huggingface.co/blog/spacy. Puoi provare direttamente nell’Hub tutti i modelli canonici di spaCy nella demo Space!

Un’altra integrazione entusiasmante è Sentence Transformers. Puoi leggere di più a riguardo nell’annuncio sul blog: puoi trovare oltre 200 modelli nell’Hub, condividere facilmente i tuoi modelli con il resto della community e riutilizzare modelli dalla community.

Ma non è tutto! Ora puoi trovare oltre 100 Adapter Transformers nell’Hub e provare i modelli di Speechbrain con i widget direttamente nel browser per diverse attività come la classificazione audio. Se sei interessato alle nostre collaborazioni per integrare nuove librerie di ML nell’Hub, puoi leggerne di più qui.

Soluzioni

In arrivo: Infinity

Latency dei Transformers ridotta a 1ms? 🤯🤯🤯

Abbiamo lavorato ad una soluzione davvero efficiente per ottenere prestazioni senza pari per modelli Transformer all’avanguardia, da utilizzare dalle aziende nella propria infrastruttura.

  • Infinity viene fornito come un singolo contenitore e può essere implementato in qualsiasi ambiente di produzione.
  • Può raggiungere una latenza di 1ms per modelli simili a BERT su GPU e di 4-10ms su CPU 🤯🤯🤯
  • Infinity soddisfa i più alti requisiti di sicurezza e può essere integrato nel tuo sistema senza la necessità di accesso a Internet. Hai il controllo su tutto il traffico in entrata e in uscita.

⚠️ Unisciti a noi per un annuncio dal vivo e una demo il 28 settembre, dove presenteremo Infinity per la prima volta in pubblico!

NUOVO: Accelerazione Hardware

Hugging Face sta collaborando con i principali acceleratori hardware di intelligenza artificiale come Intel, Qualcomm e GraphCore per rendere accessibili le prestazioni di produzione all’avanguardia e ampliare le capacità di addestramento su hardware di ultima generazione. Come primo passo in questo percorso, abbiamo introdotto una nuova libreria Open Source: 🤗 Optimum – il toolkit di ottimizzazione di ML per prestazioni di produzione 🏎. Scopri di più in questo post sul blog.

NUOVO: Inferenza su SageMaker

Abbiamo lanciato una nuova integrazione con AWS per rendere più facile che mai distribuire i 🤗 Transformers su SageMaker 🔥. Prendi il codice snippet direttamente dalla pagina del modello nell’Hub 🤗! Scopri di più su come sfruttare i transformers in SageMaker nella nostra documentazione o guarda questi video tutorial.

Per domande, contattaci sul forum: https://discuss.huggingface.co/c/sagemaker/17

NUOVO: AutoNLP Nel Tuo Browser

Abbiamo rilasciato una nuova esperienza di AutoNLP: un’interfaccia web per addestrare modelli direttamente dal tuo browser! Ora basta qualche clic per addestrare, valutare e distribuire modelli di 🤗 Transformers sui tuoi dati. Provalo – NON è necessario il codice!

API di Inferenza

Webinar :

Abbiamo ospitato un webinar dal vivo per mostrare come aggiungere funzionalità di Machine Learning con poche righe di codice. Abbiamo anche sviluppato un’estensione per VSCode che sfrutta l’API di Inferenza di Hugging Face per generare commenti che descrivono il codice Python.

Hugging Face + Demo Zapier

Più di 20.000 modelli di Machine Learning collegati a più di 3.000 app? 🤯 Sfruttando l’API di Inferenza, ora è possibile collegare facilmente i modelli direttamente alle app come Gmail, Slack, Twitter e altro ancora. In questo video dimostrativo, abbiamo creato uno zap che utilizza questo snippet di codice per analizzare le menzioni su Twitter e ti avvisa su Slack riguardo a quelle negative.

Hugging Face + Demo Google Sheets

Con l’API di Inferenza, puoi facilmente utilizzare la classificazione a zero-shot direttamente nei tuoi fogli di calcolo in Google Sheets. Basta aggiungere questo script in Strumenti -> Editor di Script:

Apprendimento a pochi esempi nella pratica

Abbiamo scritto un post sul blog su cosa sia l’apprendimento a pochi esempi e come GPT-Neo e l’API di Inferenza di 🤗 vengano utilizzati per generare le tue proprie previsioni.

Programma di Accelerazione Esperti

Scopri il nuovo e innovativo programma Expert Acceleration; ora puoi ottenere supporto diretto e premium dai nostri esperti di Machine Learning e creare soluzioni di ML migliori e più veloci.

Ricerca

Presso BigScience abbiamo tenuto il nostro primo evento dal vivo (dal kickoff) a luglio, BigScience Episode #1. Il nostro secondo evento, BigScience Episode #2, si è tenuto il 20 settembre 2021, con presentazioni tecniche e aggiornamenti dei gruppi di lavoro di BigScience e discorsi di Jade Abbott (Masakhane), Percy Liang (Stanford CRFM), Stella Biderman (EleutherAI) e altri. Abbiamo completato il primo training su larga scala su Jean Zay, un modello decoder da 13B solo in inglese (puoi trovare i dettagli qui), e attualmente stiamo decidendo l’architettura del secondo modello. Il gruppo di lavoro sull’organizzazione ha presentato la domanda per la seconda metà del budget di calcolo: Jean Zay V100: 2.500.000 ore di GPU. 🚀

A giugno, abbiamo condiviso i risultati della nostra collaborazione con il team di ricerca di Yandex: DeDLOC, un metodo per addestrare in modo collaborativo le tue grandi reti neurali, ovvero senza utilizzare un cluster HPC, ma con risorse accessibili come Google Colaboratory o notebook Kaggle, computer personali o VM preemptible. Grazie a questo metodo, siamo riusciti ad addestrare sahajBERT, un modello di lingua bengalese, con l’aiuto di 40 volontari! Il nostro modello compete con lo stato dell’arte ed è persino il migliore per il compito successivo di classificazione sul dataset di classificazione degli articoli di Soham News. Puoi leggere di più al riguardo in questo post del blog. Questa è una linea di ricerca affascinante perché renderebbe il pre-training dei modelli molto più accessibile (dal punto di vista finanziario)!

A giugno il nostro articolo, Quanti punti dati vale un prompt?, ha ricevuto il premio Best Paper al NAACL! In esso, conciliamo e confrontiamo approcci tradizionali e con prompt per adattare modelli pre-addestrati, scoprendo che i prompt scritti dall’uomo valgono fino a migliaia di punti dati supervisionati per nuovi compiti. Puoi anche leggere il suo post del blog.

Non vediamo l’ora di EMNLP quest’anno, dove abbiamo quattro articoli accettati!

  • Il nostro articolo “Datasets: Una libreria comunitaria per il Natural Language Processing” documenta il progetto Hugging Face Datasets, che conta oltre 300 contributori. Questo progetto comunitario offre facile accesso a centinaia di dataset per i ricercatori. Ha facilitato nuovi casi d’uso di NLP tra dataset e ha avanzato funzionalità per compiti come l’indicizzazione e lo streaming di grandi dataset.
  • La nostra collaborazione con ricercatori del TU Darmstadt ha portato a un altro articolo accettato alla conferenza (“Evitare euristici di inferenza nel fine-tuning basato su prompt in few-shot”). In questo articolo, mostriamo che i modelli di linguaggio addestrati con prompt (che ottengono una forte performance in configurazioni few-shot) soffrono ancora di apprendimento di euristici superficiali (a volte chiamati bias dei dataset), una trappola che i modelli zero-shot non mostrano.
  • La nostra proposta “Block Pruning For Faster Transformers” è stata accettata come long paper. In questo articolo, mostriamo come utilizzare la sparsità a blocchi per ottenere modelli Transformer veloci e piccoli. I nostri esperimenti hanno prodotto modelli che sono 2.4 volte più veloci e il 74% più piccoli di BERT su SQuAD.

Ultime parole

😎 🔥 L’estate è stata divertente! Sono accadute così tante cose! Speriamo che tu abbia apprezzato la lettura di questo post del blog e non vediamo l’ora di condividere i nuovi progetti su cui stiamo lavorando. Ci vediamo in inverno! ❄️