NLP Cloud is an API for natural language processing.
Le incorporazioni sono rappresentazioni vettoriali di pezzi di testo. Se due testi hanno una rappresentazione vettoriale simile, molto probabilmente significa che hanno un significato simile.
Immaginate di avere le 3 frasi seguenti:
NLP Cloud is an API for natural language processing.
NLP Cloud proposes an API dedicated to NLP at scale.
I went to the cinema yesterday. It was great!
Ecco le incorporazioni delle 3 frasi precedenti (troncate per semplicità):
[[0.0927242711186409,-0.19866740703582764,-0.013638739474117756,-0.11876793205738068,0.011521861888468266,-0.03629707545042038, -0.030676838010549545,-0.03159608319401741,0.021390020847320557,0.03344911336898804,0.1698218137025833,-0.0009996045846492052, -0.07465217262506485,-0.21483412384986877,0.11283198744058609,0.03549865633249283,0.04985387250781059,-0.027558118104934692, 0.06297887861728668,0.09421529620885849,0.03700404614210129,0.06565431505441666,0.02284885197877884,0.06327767670154572, -0.09266531467437744,-0.014569456689059734,-0.06129194051027298,0.1818675994873047,0.09628438949584961,-0.09874546527862549, 0.030865425243973732, [...] ,-0.02097163535654545,0.021617714315652847,0.11045169830322266,0.01000999379903078,0.11451057344675064,0.18813028931617737, 0.007419265806674957,0.1630171686410904,0.21308083832263947,-0.03355317562818527,0.0778832957148552,0.2268853485584259,-0.13271427154541016, 0.005264544393867254,0.16081497073173523,0.09937280416488647,-0.12673905491828918,-0.12035898119211197,-0.06462062895298004, -0.0024213052820414305,0.08730605989694595,-0.04702030122280121,-0.03694896399974823,0.002265638206154108,-0.027780283242464066, -0.00017151003703474998,-0.20887477695941925,-0.2585527300834656,0.3124837279319763,0.05403835326433182,0.027094876393675804, -0.022925367578864098,0.038322173058986664]]
Gli embeddings sono una caratteristica fondamentale dell'elaborazione del linguaggio naturale perché, una volta che una macchina è in grado di rilevare le somiglianze tra i testi, apre la strada a molte applicazioni interessanti come la somiglianza semantica, i sistemi RAG (retrieval augmented generation), la ricerca semantica, il rilevamento di parafrasi, il clustering e altro ancora.
Ecco alcuni esempi in cui le incorporazioni sono estremamente utili:
Si potrebbe voler rilevare se due frasi parlano della stessa cosa o meno. Questo è utile, ad esempio, per il rilevamento di parafrasi (plagio). È anche utile per capire se più persone stanno parlando dello stesso argomento o meno.
La ricerca semantica è il modo moderno di cercare informazioni. Invece di cercare ingenuamente testi contenenti parole chiave specifiche, ora è possibile cercare testi che parlano di un argomento di interesse, anche se le parole chiave non corrispondono (ad esempio, nel caso di sinonimi).
Potreste voler raggruppare le cose per categorie (idee, discorsi, conversazioni...). Il clustering è una vecchia tecnica di apprendimento automatico che ora può essere applicata efficacemente all'elaborazione del linguaggio naturale.
I sistemi RAG (Retrieval Augmented Generation) sono un tipo di modello di elaborazione del linguaggio naturale che genera testi combinando le capacità di un modello linguistico su larga scala con un componente di recupero che recupera informazioni rilevanti da un database o da un corpus di testi. Questo approccio consente di generare risposte più accurate, informative e contestualmente rilevanti, sfruttando fonti di conoscenza esterne.
NLP Cloud propone un'API per gli embeddings che offre l'opportunità di estrarre gli embeddings in modo immediato, basandosi su modelli di Sentence Transformers come Paraphrase Multilingual Mpnet Base v2.
Il tempo di risposta (latenza) è molto basso per i modelli di embeddings, il che consente di includere facilmente l'estrazione di embeddings in un flusso di lavoro più ampio e complesso.
Per maggiori dettagli, consultare la documentazione sulle incorporazioni qui.
Testare gli embeddings localmente è una cosa, ma usarli in modo affidabile in produzione è un'altra cosa. Con NLP Cloud potete fare entrambe le cose!