Un sistema de gestió de bases de dades vectorials (VDBMS) o simplement una base de dades vectorial o una botiga de vectors és una base de dades que pot emmagatzemar vectors (llistes de nombres de longitud fixa) juntament amb altres elements de dades. Les bases de dades vectorials solen implementar un o més algorismes d'Aproximate Nearest Neighbor (ANN), de manera que es pot cercar a la base de dades amb un vector de consulta per recuperar els registres de la base de dades més propers.
Els vectors són representacions matemàtiques de dades en un espai d'alta dimensió. En aquest espai, cada dimensió correspon a una característica de les dades, amb el nombre de dimensions que oscil·la entre pocs centenars i desenes de milers, depenent de la complexitat de les dades que es representen. La posició d'un vector en aquest espai representa les seves característiques. Es poden vectoritzar paraules, frases o documents sencers, i imatges, àudio i altres tipus de dades.
Aquests vectors de característiques es poden calcular a partir de les dades en brut mitjançant mètodes d'aprenentatge automàtic com ara algorismes d'extracció de característiques, incrustacions de paraules o xarxes d'aprenentatge profund. L'objectiu és que els elements de dades semànticament similars rebin vectors de característiques que estiguin a prop els uns dels altres.
Les bases de dades vectorials es poden utilitzar per a cerca de semblances, cerca multimodal, motors de recomanacions, grans models de llenguatge (LLM), etc.
Les bases de dades vectorials també s'utilitzen per implementar la Retrieval-Augmented Generation (RAG), un mètode per millorar les respostes específiques del domini dels grans models de llenguatge. Es recullen documents de text que descriuen el domini d'interès i per a cada document es calcula un vector de característiques (conegut com a " incrustació "), normalment utilitzant una xarxa d'aprenentatge profund, i s'emmagatzema en una base de dades vectorial. Donat una indicació d'usuari, es calcula el vector de característica de la sol·licitud i es consulta la base de dades per recuperar els documents més rellevants. A continuació, s'afegeixen automàticament a la finestra de context del model de llenguatge gran i el model de llenguatge gran passa a crear una resposta a l'indicador donat aquest context.
Tècniques Les tècniques més importants per a la cerca de similitud en vectors d'alta dimensió inclouen:
Gràfics jeràrquics del petit món navegable (HNSW). Hashing sensible a la localitat (LSH) i Sketching Quantificació del producte (PQ) Fitxers invertits
i combinacions d'aquestes tècniques
En els darrers punts de referència, les implementacions basades en HNSW es troben entre les millors. Conferències com la International Conference on Similarity Search and Applications, SISAP i la Conference on Neural Information Processing Systems (NeurIPS) acullen concursos sobre cerca vectorial en grans bases de dades.
Implementacions NomLlicènciaApache CassandraApache CassandraChromaChromaAzure Cosmos DB Integrated Vector DatabaseAzure Cosmos DB Integrated Vector DatabaseCouchbaseCouchbaseElasticsearchElasticsearchLanternLanternLlamaIndexLlamaIndexMariaDBMariaDBMilvusMilvusMongoDB AtlasMongoDB AtlasOpenSearchOpenSearchPineconePineconePostgres with pgvectorPostgres with pgvectorQdrantQdrantRedis StackRedis StackSurrealDBSurrealDBVespaVespaWeaviateWeaviate
Referències
Categoria:Aprenentatge automàtic