Un database vettoriale è progettato per memorizzare, gestire e indicizzare in modo efficiente grandi quantità di dati vettoriali altamente dimensionali.
L’interesse per i database vettoriali sta crescendo rapidamente, al fine di creare valore aggiuntivo per i casi d’uso e le applicazioni dell’intelligenza artificiale (AI) generativa. Secondo Gartner, entro il 2026 oltre il 30% delle imprese adotterà database vettoriali per predisporre i propri foundation model con dati aziendali rilevanti.1
A differenza dei database relazionali tradizionali con righe e colonne, i punti di dati in un database vettoriale sono rappresentati da vettori con un numero fisso di dimensioni, suddivisi in cluster in base alla similarità. Questo tipo di progettazione consente query a bassa latenza, l'ideale per le applicazioni basate sull'AI.
Utilizza questo framework di selezione del modello per scegliere il modello più appropriato bilanciando i requisiti di prestazioni con costi, rischi ed esigenze di implementazione.
Registrati per ricevere l'ebook sugli storage dei dati AI
La natura dei dati ha subito una profonda trasformazione. Non si tratta più di informazioni strutturate facilmente memorizzabili nei database tradizionali. I dati non strutturati crescono dal 30 al 60% anno dopo anno e comprendono post sui social media, immagini, video, clip audio e altro ancora.2 In genere, se si desidera caricare origini di dati non strutturati in un database relazionale tradizionale per memorizzare, gestire e addestrare l'AI, il processo risulta ad alta intensità di lavoro e tutt'altro che efficiente, soprattutto quando si tratta di nuovi casi d'uso generativi come la ricerca di similarità. I database relazionali sono ideali per la gestione di set di dati strutturati e semi-strutturati in formati specifici, mentre i database vettoriali sono più adatti per set di dati non strutturati tramite incorporamenti di vettori altamente dimensionali.
Inserisci vettori. I vettori sono array di numeri che possono rappresentare oggetti complessi come parole, immagini, video e audio, generati da un modello di machine learning (ML). I dati dei vettori altamente dimensionali sono essenziali per il machine learning, l'elaborazione del linguaggio naturale (NLP) e altre attività correlate all'AI. Alcuni esempi di dati vettoriali comprendono:
Testo: pensa all'ultima volta che hai interagito con un chatbot. Come comprendono il linguaggio naturale? Si basano su vettori che possono rappresentare parole, paragrafi e interi documenti, convertiti tramite algoritmi di machine learning.
Immagini: i pixel delle immagini possono essere descritti da dati numerici e combinati per costituire un vettore altamente dimensionale per quell'immagine.
Voce/audio: come le immagini, anche le onde sonore possono essere suddivise in dati numerici e rappresentate come vettori, abilitando applicazioni di AI come il riconoscimento vocale.
Il volume di set di dati non strutturati di cui la tua organizzazione ha bisogno per l'AI continuerà a crescere, e quindi come gestisci milioni di vettori? È a questo punto che entrano in gioco gli incorporamenti e i database di vettori. Questi vettori sono rappresentati in uno spazio continuo e multidimensionale noto come incorporamento, generato incorporando modelli e specializzato nella conversione dei dati vettoriali in un incorporamento. I database vettoriali servono per memorizzare e indicizzare l'output di un modello di incorporamento. Gli incorporamenti vettoriali sono una rappresentazione numerica dei dati, che raggruppa set di dati in base al significato semantico o a caratteristiche simili praticamente in qualsiasi tipo di dati.
Prendiamo ad esempio le parole "auto" e "veicolo". Entrambe hanno significati simili anche se sono scritte in modo diverso. Affinché un'applicazione AI consenta una ricerca semantica efficace, le rappresentazioni vettoriali di “auto" e “veicolo" devono acquisire la loro similarità semantica. Quando si tratta di machine learning, gli incorporamenti rappresentano vettori altamente dimensionali che codificano queste informazioni semantiche. Questi incorporamenti di vettori sono la spina dorsale di consigli, chatbot e app generative come ChatGPT.
I grafici della conoscenza rappresentano una rete di entità come oggetti o eventi e il rapporto che sussiste tra di loro. Un database a grafo è un database adatto allo scopo per memorizzare le informazioni del grafo di conoscenza e visualizzarle come struttura a grafo. I database a grafo sono basati su nodi ed edge che rappresentano le entità note e le relazioni complesse tra di loro, mentre i database vettoriali sono basati su vettori altamente dimensionali. Di conseguenza, si preferiscono i database grafici per elaborare relazioni complesse tra punti dati, mentre i database vettoriali sono migliori per gestire diversi formati di dati come immagini o video.
I dati vettoriali aziendali possono essere inseriti in un modello di incorporamento come i modelli watsonx.ai o Hugging Facedi IBM (link esterno a ibm.com), specializzati nella conversione dei dati in un'incorporazione trasformando dati vettoriali complessi e altamente dimensionali in forme numeriche che i computer sono in grado di comprendere. Questi incorporamenti rappresentano gli attributi dei tuoi dati utilizzati nelle attività di AI come la classificazione e il rilevamento delle anomalie.
I database vettoriali memorizzano l'output di un algoritmo di modello di incorporamento, gli incorporamenti vettoriali. Memorizzano anche i metadati di ciascun vettore, che possono essere interrogati utilizzando i filtri dei metadati. Inserendo e memorizzando questi incorporamenti, il database può quindi facilitare il recupero rapido di una ricerca di similarità, abbinando il prompt dell'utente a un incorporamento vettoriale simile.
La memorizzazione dei dati come incorporamenti non è sufficiente. I vettori devono essere indicizzati per accelerare il processo di ricerca. I database vettoriali creano indici su incorporamenti vettoriali per la funzionalità di ricerca. Il database vettoriale indicizza i vettori utilizzando un algoritmo di machine learning. L'indicizzazione mappa i vettori su nuove strutture dati che consentono ricerche di similarità o distanza più rapide, come la ricerca di prossimità tra vettori.
La query dei vettori può essere eseguita tramite calcoli che misurano la distanza tra i vettori utilizzando algoritmi, come la ricerca di prossimità. Questa misurazione può essere basata su varie metriche di similarità come la similarità del coseno, utilizzata da tale indice per misurare quanto siano vicini o distanti tali vettori. Quando un utente interroga o richiede un modello AI, viene calcolato un incorporamento utilizzando lo stesso algoritmo del modello di incorporamento. Il database calcola le distanze ed esegue calcoli di similarità tra vettori di query e vettori memorizzati nell'indice. Restituiscono i vettori più simili o i vicini più prossimi in base alla classifica di similarità. Questi calcoli supportano varie attività di machine learning come sistemi di raccomandazione, la ricerca semantica, il riconoscimento delle immagini e altre attività di elaborazione del linguaggio naturale.
Le aziende preferiscono sempre più l'approccio RAG (Retrieval Augmented Generation) nei workflow di AI generativa per il suo time-to-market più rapido, l'inferenza efficiente e l'output affidabile, in particolare per casi d'uso chiave come l'assistenza clienti e le Risorse Umane/Talenti. Il RAG garantisce che il modello sia collegato ai fatti più recenti e affidabili e che gli utenti abbiano accesso alle fonti del modello, in modo che le sue affermazioni possano essere verificate per verificarne l'accuratezza. Il RAG è fondamentale per la nostra capacità di ancorare modelli linguistici di grandi dimensioni a dati attendibili per ridurre le allucinazioni del modello. Questo approccio si basa sull'utilizzo di dati vettoriali altamente dimensionali per arricchire i prompt con informazioni semanticamente pertinenti ai fini dell'apprendimento contestuale da parte dei foundation model. Richiede storage e recupero efficaci durante la fase di inferenza, che gestisce il volume più elevato di dati. I database vettoriali eccellono nell'indicizzare, memorizzare e recuperare in modo efficiente questi vettori altamente dimensionali, fornendo la velocità, la precisione e la scalabilità necessarie per applicazioni come motori di raccomandazione e chatbot.
Sebbene sia chiaro che la funzionalità di database vettoriale sta rapidamente crescendo in termini di interesse e adozione per migliorare le applicazioni aziendali basate sull'AI, i seguenti benefici ne hanno dimostrato anche il valore aziendale per gli utenti:
Velocità e prestazioni: i database vettoriali utilizzano varie tecniche di indicizzazione per consentire una ricerca più rapida. L'indicizzazione vettoriale e gli algoritmi di calcolo della distanza, come la ricerca per prossimità, sono particolarmente utili per la ricerca di risultati pertinenti in milioni, se non miliardi, di punti dati, con prestazioni ottimizzate.
Scalabilità: i database vettoriali possono archiviare e gestire enormi quantità di dati non strutturati scalando orizzontalmente, mantenendo le prestazioni man mano che le richieste di query e i volumi di dati aumentano.
Costi di gestione: i database vettoriali sono una valida alternativa all'addestramento dei foundation model da zero o alla loro messa a punto, riducendo il costo e la velocità di inferenza dei foundation model.
Flessibilità: che tu disponga di immagini, video o altri dati multidimensionali, i database vettoriali sono progettati per gestire la complessità. Dati i molteplici casi d'uso che vanno dalla ricerca semantica alle applicazioni di AI conversazionale, l'uso di database vettoriali può essere personalizzato per soddisfare i requisiti aziendali e di AI.
Memoria a lungo termine degli LLM: le organizzazioni possono iniziare con soluzioni generiche quali i modelli Granite di watsonx.ai di IBM, i modelli Llama-2 di Meta o i modelli Flan di Google, quindi fornire i dati in un database vettoriale per migliorare l'output dei modelli e delle applicazioni AI critiche per la retrieval augmented generation.
Componenti per la gestione dei dati: tipicamente i database vettoriali offrono funzionalità integrate per aggiornare e inserire facilmente nuovi dati non strutturati.
Esiste un'ampia gamma di opzioni quando si tratta di scegliere una funzionalità di database vettoriale per soddisfare le esigenze di dati e AI di un'organizzazione.
Sono disponibili alcune alternative tra cui scegliere.
Piattaforme con funzionalità di database vettoriali integrate, presto disponibili su IBMwatsonx.data
Estensioni di database/ricerca vettoriali come l'estensione open source pgvector di PostgreSQL, che fornisce funzionalità di ricerca per similarità vettoriale
I database vettoriali non devono essere considerati come funzionalità autonome, ma piuttosto come parte integrante di un più ampio ecosistema di dati e AI. Molti offrono API, estensioni native o possono essere integrati con i tuoi database. Poiché sono progettati per utilizzare i dati aziendali al fine di migliorare i modelli, è necessario disporre anche di una governance e di una sicurezza dei dati adeguate per garantire che i dati su cui si basano questi LLM possano essere affidabili.
È a questo punto che una base di dati affidabili svolge un ruolo importante nell'AI, a partire dai dati e da come vengono memorizzati, gestiti e governati prima di essere utilizzati per l'AI. Al centro di tutto ciò si trova un data lakehouse, aperto, ibrido e governato, come IBM watsonx.data, parte della piattaforma dati AI watsonx , che si integra perfettamente in un'architettura di Data Fabric. Ad esempio, IBM watsonx.data è stato creato per accedere, catalogare, governare e trasformare tutti i dati e i metadati strutturati, semistrutturati e non strutturati. Puoi quindi utilizzare i dati governati e le funzionalità del database vettoriale integrato di watsonx.data (anteprima tecnica nel quarto trimestre 2023) per casi d'uso di machine learning e AI generativa.
L'utilizzo di un archivio vettoriale e di un indice è particolarmente adatto per le applicazioni basate su fatti o query basate su fatti. Ad esempio, chiedere informazioni sui termini legali di un'azienda l'anno scorso o estrarre informazioni specifiche da documenti complessi. Il set del contesto di recupero che si otterrebbe sarebbe quello semanticamente più simile alla query attraverso la distanza di incorporamento. Tuttavia, se si desidera ottenere un riepilogo degli argomenti, questa operazione non si presta bene a un indice vettoriale. In tal caso, è necessario che l'LLM esamini tutti i diversi contesti possibili sull'argomento all'interno dei dati. È invece possibile utilizzare un tipo diverso di indice, ad esempio un indice di lista anziché un indice vettoriale, poiché un indice vettoriale recupererebbe solo i dati più rilevanti.
Le applicazioni dei database vettoriali sono vaste e in crescita. Alcuni casi d'uso principali includono:
Ricerca semantica: esegui le ricerche in base al significato o al contesto di una query, per risultati più precisi e rilevanti. Poiché non solo le parole, ma anche le frasi possono essere rappresentate come vettori, la funzionalità di ricerca vettoriale semantica comprende meglio l'intenzione dell'utente rispetto alle parole chiave generali.
Ricerca per similarità e applicazioni: trova immagini, testo, dati audio o video simili con facilità, per il recupero dei contenuti, compreso il riconoscimento avanzato di immagini e voce, l'elaborazione del linguaggio naturale e altro ancora.
Motori di raccomandazione: i siti di e-commerce, ad esempio, possono utilizzare database vettoriali e vettori per rappresentare le preferenze dei clienti e gli attributi dei prodotti. In questo modo possono suggerire articoli simili agli acquisti precedenti in base alla similarità vettoriale, migliorando l'esperienza dell'utente e aumentando la fidelizzazione.
AI conversazionale: migliora le interazioni virtuali con gli agenti affinando la capacità di analizzare le Knowledge base pertinenti in modo efficiente e accurato per fornire risposte contestuali in tempo reale alle query degli utenti, insieme ai documenti di origine e ai numeri di pagina di riferimento.
Uno studio aziendale di nuova generazione pensato per i builder AI per costruire, addestrare, convalidare, adattare e distribuire sia il machine learning tradizionale che le nuove funzionalità di AI generativa basate sui foundation model. Crea una risorsa di domande e risposte da un'ampia Knowledge base interna o esterna con l'aiuto delle attività di AI in watsonx.ai, come la retrieval augmented generation.
Uno storage dei dati adatto allo scopo creato su un'architettura open data lakehouse per scalare i workload AI, per tutti i dati, ovunque. Memorizza, interroga e cerca incorporamenti di vettori in watsonx.data con funzionalità vettoriali integrate (anteprima tecnica prevista per il quarto trimestre del 2023).
La nostra offerta PostgreSQL database-as-a-service consente ai team di dedicare più tempo alla creazione con elevata disponibilità, orchestrazione del backup, ripristino a orari prestabiliti (PITR) e replica di lettura con facilità. PostgreSQL offre pgvector, un'estensione vettoriale open source che potrà essere configurata con le estensioni di IBM Cloud PostgreSQL (presto in arrivo), fornendo funzionalità di ricerca di somiglianze vettoriali.
Il nostro database-as-a-service Elasticsearch è dotato di un motore di ricerca full-text, la soluzione ideale per i dati di testo non strutturati. Elasticsearch supporta inoltre varie forme di ricerca di similarità semantica (link esterno a ibm.com). Supporta vettori densi (link esterno a ibm.com) per una ricerca prossimale esatta, ma fornisce anche modelli di AI integrati per calcolare i vettori sparsi e condurre la ricerca avanzata della similarità (link esterno a ibm.com).
Le organizzazioni che utilizzano correttamente i modelli generativi dell'AI possono riscontrare una miriade di benefici: dall'aumento dell'efficienza operativa e dal miglioramento del processo decisionale alla rapida creazione di contenuti di marketing.
IBM annuncia il rilascio dei primi modelli della serie di modelli Granite di watsonx, una raccolta di modelli di AI generativa con l'obiettivo di promuovere l'integrazione dell'AI generativa nelle applicazioni e nei workflow aziendali.
Il RAG è un framework di AI per recuperare dati da una knowledge base esterna per basare gli LLM sugli insight più accurati e aggiornati possibile e per fornire agli utenti informazioni sul processo generativo dei LLM.
1 Gartner Innovation Insight: Vector Databases (link esterno a ibm.com), richiede un account Gartner), Gartner
2 Gartner 2022 Strategic Roadmap for Storage (link esterno a ibm.com), richiede un account Gartner), Gartner