Un vector database è un database costruito per memorizzare impronte numeriche di contenuti (embedding) e trovare in millisecondi quelle più vicine a una qualsiasi query: è il motore della ricerca semantica, dei suggerimenti e del retrieval dell'AI.
Niente gergo, niente formule
Un vector database memorizza gli embedding, le impronte numeriche dei contenuti, e risponde a una sola domanda, in fretta: quali impronte salvate sono le più vicine a questa nuova? Dentro, ogni record è un array di qualche centinaio di float più un puntatore al testo originale. Per non confrontare ogni record con tutti, il database costruisce un indice, quasi sempre un grafo (HNSW) che collega ogni vettore ai suoi vicini: la ricerca cammina sul grafo e arriva alle corrispondenze più vicine in millisecondi, anche su milioni di righe. Inserisci, interroghi con un vettore e un numero k, ricevi candidati con punteggi di distanza. Dove si rompe: l'indice vale per un modello di embedding specifico, cambi modello e re-indicizzi; embedding datati avvelenano silenziosamente il retrieval; e una corrispondenza vettoriale è somiglianza, non verità: in produzione ci metti filtri e reranking sopra.
Un embedding è una lista di numeri che cattura il significato di un testo, un'immagine o un audio, così che contenuti dal significato simile ricevano numeri simili e il computer possa misurare la vicinanza con aritmetica normale.
LeggiLa ricerca semantica trova contenuti per significato invece che per parole esatte: la query e i documenti vengono convertiti in embedding, e vengono restituite le corrispondenze più vicine anche quando non condividono una parola.
LeggiIl reranking è una seconda passata, più lenta, sui risultati di una ricerca: un modello cross-encoder legge ogni candidato insieme alla query e lo ripunteggia per rilevanza vera, così in cima finiscono i risultati giusti, non i soli approssimativamente simili.
Leggi§ 03
Progettiamo e rilasciamo sistemi AI con permessi, log e approvazione umana. Si parte con una call di scoping di 30 minuti.