Tiger Data lancia pg_vectorsearch, ricerca vettoriale più efficiente in PostgreSQL
Testo scritto con l’intelligenza artificiale a partire da una fonte citata, senza revisione umana prima della pubblicazione.
L'estensione alpha introduce l'indice PRISM: partizionamento e compressione per ricerche più veloci e meno esigenti di memoria rispetto all'HNSW di pgvector.
Su 100 milioni di vettori, il nuovo indice PRISM ha costruito l’indice in 1 ora e 40 minuti su una macchina con 128 GB di memoria. L’HNSW di pgvector ha impiegato 42 ore su una macchina con 512 GB. Tiger Data ha pubblicato in alpha pg_vectorsearch, estensione open source per PostgreSQL che porta questa tecnica dentro il database1.
PRISM abbandona il grafo di HNSW. Usa partizionamento dei dati e compressione delle liste, riducendo memoria e tempi di build. L’estensione abilita ricerche più rapide e più parsimoniose direttamente in PostgreSQL, evitando un database separato per i vettori. Supporta colonne già create con pgvector. Per provarla serve installare l’estensione e creare un indice PRISM sulla colonna vettore: CREATE EXTENSION pg_vectorsearch; CREATE INDEX ON documents USING prism (embedding vec32_l2_ops);1
PRISM raggruppa vettori simili in partizioni e li conserva come liste compresse, densamente impacchettate nelle pagine del database. Restringe la ricerca alle partizioni rilevanti e scansiona sequenzialmente i vettori compressi. Riduce la dimensione dell’indice ed evita accessi casuali a memoria o disco. Michael Freedman descrive l’architettura come una combinazione di clustering gerarchico per tagliare lo spazio di ricerca, vettori compressi e quantizzazione RaBitQ per limitare i calcoli di distanza. Duplica i vettori vicino ai confini di partizione per migliorare la recall. Usa i meccanismi nativi di PostgreSQL per storage, logging e concorrenza1.
I numeri usano un tool open source e misurano recall@10 contro i risultati esatti. Confrontano PRISM e HNSW nella stessa configurazione PostgreSQL e sugli stessi tipi di istanza. Per HNSW è stato usato halfvec a 16 bit di pgvector. Le prove non sono ancora validate in modo indipendente1.
La release è alpha. Le ricerche filtrate che combinano WHERE e ORDER BY non arriveranno prima della general availability. L’estensione richiede PostgreSQL 18 o successivo e supporta vettori fino a 1968 dimensioni. Il ribilanciamento incrementale non è completo. Con modifiche frequenti ai dati può servire ricostruire l’indice per mantenere l’efficienza. Freedman: «Il problema più difficile è mantenere il clustering quando il dataset cambia. I centroidi non si muovono automaticamente quando arrivano nuovi vettori»1.
La discussione su Hacker News chiede validazioni indipendenti, se pg_vectorsearch possa sostituire pgvectorscale, e segnala l’assenza di ricerche filtrate. Hermon Hagos sintetizza la posizione di chi lavora con budget stretti: «La ricerca vettoriale è appena diventata più economica (...) Fast semantic search senza avviare un vector store separato o un server più grande è denaro risparmiato. È ancora alpha, quindi non speditela ai clienti, ma è da seguire»1.
Tiger Data, già Timescale e nota per TimescaleDB, pubblica il codice su GitHub. L’azienda porterà l’estensione pgvectorscale in maintenance mode1.
Fonti
Come è nato questo articolo Scritto da un sistema di intelligenza artificiale, con controlli automatici
Millebit non ha giornalisti che scrivono gli articoli: li scrive un motore editoriale basato su modelli di intelligenza artificiale, a partire dalle fonti elencate qui sopra. Prima di uscire, ogni testo passa questi controlli:
- Rilettura. Un passaggio toglie i tic della prosa generata da un modello, come i contrasti costruiti e le frasi che annunciano invece di informare, senza toccare fatti e fonti.
- Fedeltà alle fonti. Un passaggio dedicato toglie ogni affermazione che le fonti non sostengono. Valutazione su questo pezzo: 9/10.
- Anti-cliché. Un filtro scarta frasi fatte, enfasi e tic della prosa artificiale: superato.
- Giudizio editoriale. Un modello valuta il pezzo su sette criteri (apertura, chiarezza, economia, concretezza, voce, struttura, fedeltà) e sotto 7,8/10 non si pubblica. Questo articolo ha preso 8,2/10.
I controlli riducono gli errori ma non li eliminano: un modello può fraintendere una fonte. Per le decisioni importanti, risali alla fonte originale. Se trovi un errore, segnalacelo.
Per vedere Millebit nelle notizie principali di Google, aggiungilo alle tue fonti preferite. Oppure segui l’edizione di oggi, il feed RSS o La Sintesi.