Che cos'è un database vettoriale?

Che cos'è un database vettoriale?

Un database vettoriale memorizza, gestisce e indicizza dati vettoriali altamente dimensionali.

In un database vettoriale, i dati sono memorizzati come array di numeri chiamati "vettori", che possono essere confrontati e raggruppati in base alla similarità. Questo design consente query a bassa latenza, rendendolo ideale per applicazioni di intelligenza artificiale (AI).

I database vettoriali sono sempre più popolari perché offrono la velocità e le prestazioni necessarie per promuovere casi d'uso di AI generativa. Infatti, secondo una ricerca del 2025, l'adozione dei database vettoriali è cresciuta del 377% su base annua, la crescita più rapida registrata tra tutte le tecnologie correlate ai modelli linguistici di grandi dimensioni (LLM).

Database vettoriali vs. database tradizionali

La natura dei dati è cambiata radicalmente negli ultimi anni. Non è più limitata alle informazioni strutturate memorizzate ordinatamente nelle righe e colonne dei database tradizionali. I dati non strutturati, inclusi post sui social media, immagini, video e audio, stanno crescendo sia in volume che in valore, rimodellando le strategie di AI aziendale e ponendo nuove richieste all'infrastruttura dati.

I database relazionali tradizionali eccellono nella gestione di set di dati strutturati e semistrutturati all'interno di schemi definiti. Tuttavia, caricare e preparare dati non strutturati in un database relazionale per workload di AI è laborioso.

La ricerca tradizionale è caratterizzata da questa limitazione: si basa su token discreti come parole chiave, tag o metadati e restituisce risultati basati su corrispondenze esatte. Una ricerca per "smartphone", ad esempio, recupera solo i contenuti che contengono quel termine specifico.

I database vettoriali adottano un approccio fondamentalmente diverso. Al posto di righe e colonne, i punti dati sono rappresentati come vettori densi in cui ogni dimensione rappresenta una caratteristica appresa dei dati. Questi embedding vettoriali ad alta dimensione esistono nello spazio vettoriale, dove le relazioni tra gli elementi possono essere misurate geometricamente.

Poiché ogni dimensione rappresenta una caratteristica latente, una caratteristica dedotta appresa tramite modelli matematici e algoritmi, le rappresentazioni vettoriali catturano schemi nascosti. Una query di ricerca vettoriale per "smartphone" può anche restituire risultati semanticamente correlati come "cellulare" o "dispositivo mobile", anche se non compaiono quelle parole esatte.

Modellando i dati in spazi ad alta dimensione e applicando tecniche di indicizzazione specializzate, i database vettoriali rendono consentono di eseguire ricerche di similarità a bassa latenza su grandi set di dati, cosa che i database relazionali non sono progettati per fare.

Perché i database vettoriali sono importanti?

La rapida crescita degli LLM, dei sistemi di AI generativa e dei workflow avanzati di elaborazione del linguaggio naturale (NLP) ha cambiato il modo in cui le organizzazioni gestiscono e conservano i dati. I workload AI di oggi dipendono da un'interazione veloce e in tempo reale con i dati vettoriali, nonché da un'integrazione perfetta con le pipeline di retrieval-augmented generation (RAG).

I database vettoriali forniscono l'infrastruttura per supportare queste richieste. Consentono una ricerca di similarità a bassa latenza su grandi volumi di dati non strutturati, alimentando applicazioni di AI come chatbot e sistemi di raccomandazione.

Concetti fondamentali dei database vettoriali

Per comprendere come funzionano i database vettoriali, è utile stabilire due concetti fondamentali: vettori, che descrivono dati in forma numerica, e embeddings vettoriali, che traducono contenuti non strutturati in rappresentazioni ad alta dimensione che catturano significato e contesto.

Vettori

I vettori sono un sottoinsieme di tensori. In machine learning (ML), tensore è un termine generico per un gruppo di numeri, o un raggruppamento di gruppi di numeri, in uno spazio n-dimensionale. I tensori funzionano come uno strumento matematico per la registrazione e l'organizzazione dei dati. Partendo dall'elemento più piccolo:

  • Uno scalare è un tensore a dimensione zero contenente un singolo numero. Ad esempio, un sistema di modellazione dei dati meteorologici potrebbe rappresentare la temperatura massima di un singolo giorno (in gradi Fahrenheit) in forma scalare come 85.
  • Un vettore è un tensore monodimensionale (o di primo grado o primo ordine), contenente più scalari dello stesso tipo di dati. Partendo dal nostro esempio, un modello meteorologico potrebbe utilizzare le temperature minime, medie e alte per un singolo giorno in forma vettoriale: 62, 77, 85. Ogni componente scalare è una caratteristica (cioè una dimensione) del vettore, che rappresenta una caratteristica del meteo di quel giorno.

In altre parole, i vettori sono un modo per organizzare i numeri in una forma strutturata. Ma affinché i sistemi di AI elaborino queste informazioni non strutturate, i dati devono essere tradotti in array numerici. Questa traduzione è ottenuta tramite embedding vettoriali.

Embedding vettoriali

Gli incorporamenti vettoriali sono rappresentazioni numeriche di punti dati che convertono vari tipi di dati, fra cui testo e immagini, in array di numeri che i modelli ML possono elaborare.

Per raggiungere questo obiettivo, i modelli di embedding imparano a mappare i dati di input in uno spazio vettoriale ad alta dimensione. Quello spazio vettoriale riflette i modelli appresi tramite una funzione di perdita specifica per compito, che quantifica gli errori di previsione. Gli embedding vettoriali possono poi essere utilizzati dai modelli AI a valle, come le reti neurali usate nel deep learning, per svolgere compiti come classificazione, recupero o clustering.

Considera un piccolo corpus di parole, in cui i word embedding sono rappresentati come vettori a 3 dimensioni:

  • cat [0.2, -0.4, 0.7]
  • dog [0.6, 0.1, 0.5]

In questo esempio, ogni parola ("cat") è associata a un vettore univoco ([0.2, -0.4, 0.7]). I valori nel vettore rappresentano la posizione della parola in uno spazio vettoriale tridimensionale. Si prevede che le parole con significati o contesti simili abbiano rappresentazioni vettoriali simili. I vettori per "cat" e "dog" sarebbero vicini tra loro, riflettendo la loro relazione semantica.

Allo stesso modo, le parole "auto" e "veicolo" condividono lo stesso significato ma sono scritte in modo diverso. Per consentire a un'applicazione AI di eseguire una ricerca semantica, le rappresentazioni vettoriali di "auto" e "veicolo" devono catturare il loro significato condiviso. Gli embedding vettoriali codificano questo significato numericamente, rendendoli la spina dorsale dei motori di raccomandazione, chatbot e applicazioni generative come ChatGPT di OpenAI.

AI Academy

È la gestione dei dati il segreto dell’AI generativa?

Scopri perché i dati di alta qualità sono fondamentali per un uso efficace dell'AI generativa.

Come funzionano i database vettoriali?

Per facilitare un recupero semantico rapido e scalabile, i database vettoriali si basano su tre funzioni fondamentali:

  • Storage vettoriale
  • Indicizzazione vettoriale
  • Ricerca vettoriale

Storage vettoriale

A livello fondamentale, i database vettoriali memorizzano gli embedding. Ognuno ha un numero fisso di dimensioni ed è tipicamente memorizzato insieme a metadati come titolo, fonte, timestamp o categorie, che possono essere interrogati tramite filtri di metadati.

Poiché gli embedding vengono generati in anticipo e memorizzati, i database vettoriali possono recuperare embedding vettoriali simili senza ricalcolare le rappresentazioni al momento della consulta. Questa separazione tra generazione e recupero supporta la ricerca di similarità a bassa latenza su larga scala.

Molti sistemi supportano anche la ricerca ibrida che combina la somiglianza vettoriale con vincoli di metadati, ad esempio, recuperando documenti semanticamente simili creati all'interno di un intervallo di date o categoria specifica.

Indicizzazione vettoriale

Per accelerare la ricerca di similarità nello spazio ad alta dimensione, i database vettoriali creano indici sugli embedding vettoriali memorizzati. L'indicizzazione mappa i vettori a nuove strutture dati, consentendo ricerche di similarità o distanza più rapide tra vettori.

Questi indici supportano la ricerca approssimativa del vicino più prossimo (ANN), che consente di recuperare vettori simili senza scansionare l’intero set di dati. Gli algoritmi di indicizzazione ANN comuni includono hierarchical navigable small world (HNSW) e locality-sensitive hashing (LSH):

  • HNSW crea un grafico gerarchico multistrato che utilizza collegamenti a lungo raggio nei livelli superiori e collegamenti locali densi nel livello inferiore.1
  • LSH raggruppa i vettori in bucket utilizzando una funzione hash in modo che i vettori simili rientrino nello stesso bucket.

Oltre agli indici ANN, i database vettoriali utilizzano spesso la product quantization (PQ) per ridurre l'utilizzo della memoria. La PQ converte ogni set di dati in un codice breve che conserva le distanze relative (anziché memorizzare ogni singolo vettore), consentendo ai sistemi di memorizzare raccolte più grandi, mantenendo al contempo prestazioni di ricerca efficienti.

Ricerca vettoriale

La ricerca vettoriale è il livello di recupero di un database vettoriale, utilizzato per individuare e confrontare punti dati simili. Invece di confrontare parole chiave o valori esatti, cattura le relazioni semantiche tra gli elementi. Questa capacità di recupero consapevole del contesto è alla base dei sistemi RAG, che a loro volta forniscono un contesto pertinente ai sistemi di AI e ai modelli di machine learning basati sul recupero.

Quando un utente effettua un prompt in un modello AI, il modello genera un embedding di quella query, noto come vettore di interrogazione. Il database confronta quindi il vettore di query con i vettori indicizzati e calcola i punteggi di similarità per identificare i vicini più vicini.

La ricerca vettoriale applica più algoritmi per condurre una ricerca ANN. Questi algoritmi vengono raccolti in una pipeline per recuperare rapidamente e con precisione i dati correnti al vettore interrogato (ad esempio, prodotti visivamente simili in un catalogo e-commerce). Poiché gli embedding sono precalcolati e memorizzati in forma indicizzata, i risultati vengono restituiti entro millisecondi.

Una volta identificati i vettori rilevanti, vengono confrontati calcolando la loro somiglianza o con una metrica di distanza. I metodi comuni includono:

  • Similitudine del coseno: misura la distanza angolare tra i vettori per determinare quanto sono allineati nella direzione.
  • Prodotto di punti: valuta la somiglianza in base alla grandezza e alla direzione dei vettori.
  • Distanza euclidea: calcola la distanza in linea retta tra i vettori nello spazio ad alta dimensione.

Il database restituisce i vettori di maggior rango secondo questi calcoli di similarità, supportando compiti di apprendimento automatico come la ricerca semantica e altri workflow di elaborazione del linguaggio naturale.

Quali sono i vantaggi dei database vettoriali?

I database vettoriali stanno diventando sempre più centrali nelle strategie di enterprise AI perché offrono una serie di benefici:

  • Velocità e prestazioni: i database vettoriali utilizzano varie tecniche di indicizzazione per consentire una ricerca più rapida. Gli algoritmi di indicizzazione vettoriale e calcolo della distanza possono aiutare a ottimizzare le prestazioni nella ricerca di risultati pertinenti in set di dati con milioni, se non miliardi, di punti dati.
  • Scalabilità: i database vettoriali possono memorizzare e gestire enormi quantità di dati non strutturati, scalando orizzontalmente con nodi aggiuntivi, mantenendo le prestazioni man mano che le richieste di query e i volumi di dati aumentano.
  • Costo di proprietà inferiore: poiché consentono un recupero più rapido dei dati, i database vettoriali velocizzano l'addestramento dei foundation model.
  • Flessibilità: i database vettoriali sono progettati per gestire la complessità aggiuntiva dell'utilizzo di immagini, video o altri dati multidimensionali.

Casi d'uso dei database vettoriali

I database vettoriali possono essere personalizzati per soddisfare specifici casi d'uso aziendali e di AI. Spesso, le organizzazioni partono da un modello di embedding a uso generale come IBM® Granite, Llama-2 di Meta o Flan di Google. I modelli vengono poi migliorati utilizzando dati aziendali memorizzati in un database vettoriale. Questa combinazione migliora la pertinenza e la precisione delle applicazioni AI a valle.

Le applicazioni dei database vettoriali sono vaste e in espansione. I principali casi d'uso includono:

  • Retrieval Augmented Generation (RAG)
  • AI conversazionale
  • Motori di raccomandazione
  • Rilevamento delle anomalie

Retrieval Augmented Generation

La RAG consente agli LLM di recuperare fatti da una base di conoscenza esterna. Le imprese preferiscono sempre più la RAG per il suo time-to-market più rapido,l'inferenza efficiente e l'output affidabile, in particolare in ambiti come l'assistenza clienti, le risorse umane e la gestione dei talenti.

Fondando il modello su dati aziendali affidabili, la RAG riduce le allucinazioni e offre agli utenti accesso alle fonti sottostanti per la verifica. Poiché la fase di inferenza esegue le operazioni di recupero a volume più elevato, richiede un accesso rapido, preciso e scalabile agli embedding vettoriali ad alta dimensione.

I database vettoriali eccellono nell'indicizzare, memorizzare e recuperare questi embeddings, fornendo la velocità, la precisione e la scalabilità necessarie per applicazioni come sistemi di rilevamento delle frodi e piattaforme di manutenzione predittiva.

AI conversazionale

I database vettoriali, in particolare se utilizzati per implementare framework RAG, possono aiutare a migliorare le interazioni con gli agenti virtuali migliorando la capacità degli agenti di analizzare le basi di conoscenza pertinenti in modo efficiente e accurato. Gli agenti possono fornire risposte contestuali in tempo reale alle query degli utenti, insieme ai documenti di origine e ai numeri di pagina di riferimento.

Motori di raccomandazione

I siti di e-commerce possono utilizzare i vettori per rappresentare le preferenze dei clienti e gli attributi dei prodotti. Questo permette loro di migliorare l'esperienza del cliente e la fidelizzazione suggerendo articoli simili agli acquisti precedenti. Le piattaforme di streaming e le applicazioni social adottano lo stesso approccio, raccomandando video, musica o post basandosi sulla somiglianza con contenuti che un utente ha già visto o condiviso.

Rilevamento delle anomalie

Rappresentando il comportamento normale come vettori nello spazio ad alta dimensione, le organizzazioni possono rilevare outlier basati sulla distanza vettoriale. I dati che si allontanano molto dai cluster consolidati possono segnalare frodi, guasti di sistema o schemi di attività insoliti. Poiché la somiglianza viene calcolata matematicamente, le anomalie possono essere rilevate in tempo reale attraverso enormi set di dati, dal traffico di rete alle letture dei sensori nei sistemi industriali. Questo permette alle squadre di intervenire prima che piccole deviazioni degenerino in incidenti costosi.

Sebbene i database vettoriali siano adatti per il recupero basato sui fatti in molte applicazioni di AI, non sono ideali per ogni tipo di query.

Workload come la sintesi di argomenti o l'analisi tematica di ampio respiro richiedono che un LLM legga tutto il contesto pertinente, piuttosto che affidarsi esclusivamente alle corrispondenze di prossimità. In questi scenari, un indice di lista o un'altra struttura non vettoriale può fornire risultati più rapidi ed efficienti, poiché può rapidamente far emergere i primi elementi rilevanti senza dover navigare nello spazio vettoriale.

Chi userà un database vettoriale?

I database vettoriali supportano un'ampia gamma di workload di AI, ma il valore che offrono varia in base al ruolo. Nella maggior parte delle aziende, gli utenti si dividono in due grandi gruppi: i costruttori, che progettano e implementano esperienze basate su AI, e gli operatori, che scalano e gestiscono tali sistemi in produzione.

Builders

Gli sviluppatori creano le applicazioni, le pipeline e i modelli che si basano sulla ricerca vettoriale, utilizzando i database vettoriali per memorizzare gli embedding e alimentare le applicazioni di AI.

Sviluppatori

Gli sviluppatori si affidano a database vettoriali per kit di sviluppo software specifici per linguaggio (SDK) e interfacce di programmazione applicativa prevedibili (API). Spesso integrano la ricerca vettoriale in applicazioni come chatbot e motori di raccomandazione.

Data engineer

I data engineer progettano le pipeline che generano, trasformano e convalidano gli embedding. I database vettoriali semplificano i workflow di ingestione, la cattura dei metadati e il tracciamento del lineage tra ambienti dati distribuiti.

Ingegneri di AI e ML

Gli ingegneri di AI e ML rendono operativi i modelli di embedding e gestiscono la logica di recupero per i sistemi RAG e altri workload di inferenza. Dipendono dai database vettoriali per eseguire ricerche a bassa latenza e gestire le versioni degli embedding.

Data scientist

I data scientist valutano la qualità dell'embedding e analizzano le prestazioni del modello. Utilizzano database vettoriali per esplorare dati ad alta dimensione, arricchire set di addestramento e convalidare le relazioni semantiche tra set di dati.

Operatori 

Gli operatori garantiscono che i workload vettoriali rimangano scalabili e affidabili. Gestiscono come i database vettoriali funzionano in produzione e come si inseriscono in ecosistemi di dati e AI più ampi.

Squadre operative e SRE

I team operazioni e di ingegneria dell'affidabilità del sito (SRE) monitorano le prestazioni per garantire che le query vettoriali soddisfino i requisiti di latenza, throughput e disponibilità.

Architetti enterprise

Gli architetti aziendali determinano in che modo i database vettoriali si integrano con lakehouse, framework di governance e piattaforme di dati esistenti, valutando l'interoperabilità e l'adattamento architetturale nel lungo termine.

Team di sicurezza e governance

I team di sicurezza e governance garantiscono che gli embedding e i metadati siano conformi ai requisiti aziendali e normativi. Applicano i controlli di accesso e confermano che i dati vettoriali mantengono livelli di privacy e protezione adeguati.

Business e data executive

I dirigenti valutano il modo in cui i database vettoriali supportano la strategia AI aziendale. Si concentrano sull'efficienza dei costi, sulla governance, sulla gestione del rischio e sul modo in cui le funzionalità si integrano con i modelli operativi esistenti.

Come scegliere un database vettoriale

Le organizzazioni hanno un'ampia gamma di opzioni nella scelta di un database vettoriale. Per trovarne uno che soddisfi le loro esigenze in materia di dati e AI, molte organizzazioni considerano diversi aspetti:

  • Tipi di database vettoriali
  • Integrazione con un ecosistema di dati
  • Strumenti per la creazione e la distribuzione di database vettoriali

Tipi di database vettoriali

Le organizzazioni possono scegliere tra diverse opzioni, tra cui:

  • Database vettoriali autonomi: database proprietari e completamente vettorializzati come Pinecone.
  • Database vettoriali open source: soluzioni open source come Weaviate o Milvus, che offrono API RESTful integrate e supporto per linguaggi di programmazione come Python e Java.
  • Data lakehouse con capacità vettoriali integrate: data lakehouses con capacità di database vettoriali integrate, come IBM watsonx.data.
  • Estensioni vettoriali per database esistenti: estensioni di database vettoriali e di ricerca nei database (come l'estensione open source pgvector di PostgreSQL) che fornisce funzionalità di ricerca per similarità vettoriale. Un database vettoriale SQL può combinare i vantaggi di un database SQL tradizionale con la potenza di un database vettoriale.
  • Motori di ricerca con supporto vettoriale: piattaforme come OpenSearch, che offrono funzionalità di ricerca vettoriale integrate insieme a API RESTful per l'inserimento e la query degli embedding.

Un'opzione emergente per eseguire workload vettoriali è un database vettoriale serverless. I design serverless eliminano la necessità di gestire o allocare l’infrastruttura, permettendo ai team di concentrarsi sulla generazione degli embedding e sullo sviluppo delle applicazioni, anziché sulle operazioni del cluster. La capacità può essere scalata automaticamente in base al volume delle query e alle dimensioni dei dati, aiutando i team a gestire workload imprevedibili senza dover ottimizzare le prestazioni.

I database vettoriali serverless sono particolarmente utili per la prototipazione rapida, le applicazioni AI basate sugli eventi e gli ambienti di sviluppo in cui il controllo dei costi e la semplicità operativa sono prioritari.

Integrazione con un ecosistema di dati

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 database. Poiché i database vettoriali sono costruiti per utilizzare i dati aziendali al fine di migliorare i modelli, le organizzazioni devono anche disporre di una governance e una sicurezza dei dati adeguate per garantire che i dati utilizzati per addestrare i modelli linguistici di grandi dimensioni (LLMs) siano affidabili.

Oltre alle API, molti database vettoriali usano SDK specifici per linguaggi di programmazione, che possono interfacciarsi con le API. Utilizzando gli SDK, gli sviluppatori trovano spesso più facile lavorare con i dati nelle loro applicazioni.

Strumenti per la creazione e la distribuzione di database vettoriali

Per ottimizzare lo sviluppo di database vettoriali, LangChain è un framework di orchestrazione open-source per sviluppare applicazioni che utilizzano LLM.

Disponibili sia in librerie basate su Python che su JavaScript, gli strumenti e le API di LangChain semplificano il processo di costruzione di app basate su LLM, come gli agenti virtuali, utilizzando database vettoriale locali e basati su cloud. Infatti, LangChain offre accesso a un ecosistema ampio con 1.000+ Integrazioni totali tra LLM, embedding, database vettoriale, documenti loader, strumenti e altro ancora. 

Un data lakehouse può essere abbinato a un database vettoriale integrato per aiutare le Organizzazioni a unificare, rendere accurato e preparare embedding per le loro applicazioni di AI generativa. Questo migliora la rilevanza e la precisione dei workload di AI e, in definitiva, garantisce risultati aziendali migliori.

Autori

Tom Krantz

Staff Writer

IBM Think

Jim Holdsworth

Staff Writer

IBM Think

Matthew Kosinski

Staff Editor

IBM Think

Soluzioni correlate
IBM StreamSets

Crea e gestisci pipeline di dati intelligenti in streaming attraverso un'interfaccia grafica intuitiva, che facilita la perfetta integrazione dei dati in ambienti ibridi e multicloud.

Esplora StreamSets
IBM watsonx.data™

Watsonx.data ti consente di scalare analytics e AI con tutti i tuoi dati, ovunque risiedano, attraverso uno storage dei dati aperto, ibrido e governato.

Scopri watsonx.data
Servizi di consulenza per dati e analytics

Sblocca il valore dei dati enterprise con IBM Consulting, creando un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Esplora i servizi di analytics
Fai il passo successivo

Progetta una strategia dati che elimini i silo, riduca la complessità e migliori la qualità dei dati per esperienze eccezionali di clienti e dipendenti.

  1. Esplora le soluzioni di gestione dei dati
  2. Scopri watsonx.data
Note a piè di pagina