SpaCy software | |
---|---|
Genere | Elaborazione del linguaggio naturale |
Sviluppatore | Explosion AI |
Data prima versione | febbraio 2015 |
Ultima versione | 3.7.5 (5 giugno 2024) |
Sistema operativo | Linux Microsoft Windows macOS OS X |
Linguaggio | Python |
Licenza | licenza MIT (licenza libera) |
Sito web | spacy.io |
spaCy è una libreria open source per l'elaborazione del linguaggio naturale, scritta in Python e Cython[1][2]. La libreria è rilasciata sotto licenza MIT ed attualmente implemeta modelli statistici di reti neurali in inglese, tedesco, spagnolo, portoghese, francese, italiano, olandese e greco; inoltre offre funzionalità di NER e di tokenizzazione per diverse altre lingue[3].
A differenza della suite NLTK, che è ampiamente utilizzata nel campo della ricerca e della didattica, spaCy è particolarmente adatto alla realizzazione di applicazioni software destinate alla produzione[4][5]. A partire dalla versione 1.0, spaCy supporta analisi basate sull'apprendimento profondo[6], consentendo di impiegare modelli statistici addestrati utilizzando librerie per l'apprendimento automatico quali TensorFlow, Keras, Scikit-learn e PyTorch[7]. Inoltre la libreria di apprendimento automatico di spaCy, denominata Thinc, è disponibile come libreria open source per Python.
La versione 1.0 è stata rilasciata il 19 ottobre 2016 e includeva il supporto preliminare per i flussi di lavoro di deep learning supportando pipeline di elaborazione personalizzate.[8] Includeva inoltre un matcher di regole che supportava le annotazioni di entità e un'API di formazione ufficialmente documentata.
La versione 2.0 è stata rilasciata il 7 novembre 2017 e ha introdotto modelli di rete neurale convoluzionale per 7 lingue diverse.[9] Supportava anche componenti di pipeline di elaborazione personalizzati e attributi di estensione e presentava un componente di classificazione del testo addestrabile integrato.
La versione 3.0 è stata rilasciata il 1º febbraio 2021 e ha introdotto pipeline all'avanguardia basate su trasformatori.[10] Ha inoltre introdotto un nuovo sistema di configurazione e flusso di lavoro di formazione, oltre a suggerimenti sui tipi e modelli di progetto. Questa versione ha abbandonato il supporto per Python 2.