Una base de datos vectorial , un almacén vectorial o un motor de búsqueda vectorial es una base de datos que puede almacenar vectores (listas de números de longitud fija) junto con otros elementos de datos. Las bases de datos vectoriales suelen implementar uno o más algoritmos de vecino más cercano aproximado , [1] [2] [3] de modo que se pueda buscar en la base de datos con un vector de consulta para recuperar los registros de base de datos coincidentes más cercanos.
Los vectores son representaciones matemáticas de datos en un espacio de alta dimensión. En este espacio, cada dimensión corresponde a una característica de los datos, y el número de dimensiones varía de unos pocos cientos a decenas de miles, según la complejidad de los datos representados. La posición de un vector en este espacio representa sus características. Se pueden vectorizar palabras, frases o documentos completos, así como imágenes, audio y otros tipos de datos. [4]
Estos vectores de características se pueden calcular a partir de los datos sin procesar utilizando métodos de aprendizaje automático, como algoritmos de extracción de características , incrustaciones de palabras [5] o redes de aprendizaje profundo . El objetivo es que los elementos de datos semánticamente similares reciban vectores de características cercanos entre sí.
Las bases de datos vectoriales también se utilizan a menudo para implementar la generación aumentada por recuperación (RAG), un método para mejorar las respuestas específicas del dominio de los modelos de lenguaje grandes. El componente de recuperación de un RAG puede ser cualquier sistema de búsqueda, pero se implementa con mayor frecuencia como una base de datos vectorial. Se recopilan documentos de texto que describen el dominio de interés y, para cada documento o sección de documento, se calcula un vector de características (conocido como " incrustación "), generalmente utilizando una red de aprendizaje profundo, y se almacena en una base de datos vectorial. Dado un mensaje de usuario, se calcula el vector de características del mensaje y se consulta la base de datos para recuperar los documentos más relevantes. Luego, estos se agregan automáticamente a la ventana de contexto del modelo de lenguaje grande, y el modelo de lenguaje grande procede a crear una respuesta al mensaje dado este contexto. [7]
Técnicas
Las técnicas más importantes para la búsqueda de similitud en vectores de alta dimensión incluyen:
En evaluaciones comparativas recientes, las implementaciones basadas en HNSW han estado entre las de mejor desempeño. [8] [9] Conferencias como la Conferencia Internacional sobre Búsqueda de Similitudes y Aplicaciones, SISAP y la Conferencia sobre Sistemas de Procesamiento de Información Neural (NeurIPS) organizan competencias sobre búsqueda de vectores en bases de datos grandes.
Sistema de recomendación – Sistema de filtrado de información para predecir las preferencias de los usuarios
Referencias
^ Roie Schwaber-Cohen. "¿Qué es una base de datos vectorial y cómo funciona?". Pinecone . Consultado el 18 de noviembre de 2023 .
^ "¿Qué es una base de datos vectorial?". Elastic . Consultado el 18 de noviembre de 2023 .
^ "¿Qué es una base de datos vectorial?" . Consultado el 10 de julio de 2023 .
^ "Base de datos de vectores". learn.microsoft.com . 2023-12-26 . Consultado el 2024-01-11 .
^ Evan Chaki (31 de julio de 2023). "¿Qué es una base de datos vectorial?". Microsoft. Una base de datos vectorial es un tipo de base de datos que almacena datos como vectores de alta dimensión, que son representaciones matemáticas de características o atributos.
^ "Base de datos de vectores". learn.microsoft.com . 2023-12-26 . Consultado el 2024-01-11 .
^ Lewis, Patrick; Perez, Ethan; Piktus, Aleksandra; Petroni, Fabio; Karpukhin, Vladimir; Goyal, Naman; Küttler, Heinrich (2020). "Generación aumentada por recuperación para tareas de PNL intensivas en conocimiento". Avances en sistemas de procesamiento de información neuronal 33 : 9459–9474. arXiv : 2005.11401 .
^ Aumüller, Martin; Bernhardsson, Erik; Faithfull, Alexander (2017), Beecks, Christian; Borutta, Felix; Kröger, Peer; Seidl, Thomas (eds.), "ANN-Benchmarks: una herramienta de evaluación comparativa para algoritmos de aproximación del vecino más cercano", Similarity Search and Applications , vol. 10609, Cham: Springer International Publishing, págs. 34–49, arXiv : 1807.05614 , doi :10.1007/978-3-319-68474-1_3, ISBN978-3-319-68473-4, consultado el 19 de marzo de 2024
^ Aumüller, Martin; Bernhardsson, Erik; Faithfull, Alexander (2017). "ANN-Benchmarks: una herramienta de evaluación comparativa para algoritmos de vecino más cercano aproximado". En Beecks, Christian; Borutta, Felix; Kröger, Peer; Seidl, Thomas (eds.). Búsqueda de similitud y aplicaciones . Apuntes de clase en informática. Vol. 10609. Cham: Springer International Publishing. págs. 34–49. arXiv : 1807.05614 . doi :10.1007/978-3-319-68474-1_3. ISBN .978-3-319-68474-1.
^ "Aerospike reconocido por una empresa de investigación independiente entre los proveedores destacados en el informe Vector Databases". Morningstar . 2024-05-07 . Consultado el 2024-08-01 .
^ "Aerospike recauda 109 millones de dólares para su plataforma de base de datos en tiempo real para capitalizar el auge de la IA". TechCrunch . 2024-04-04 . Consultado el 2024-08-01 .
^ "AllegroGraph 8.0 incorpora IA neurosimbólica, un camino hacia la inteligencia artificial general". TheNewStack . 2023-12-29 . Consultado el 2024-06-06 .
^ "Franz Inc. presenta AllegroGraph Cloud: un servicio administrado para gráficos de conocimiento de IA neurosimbólicos". Datanami . 18 de enero de 2024 . Consultado el 6 de junio de 2024 .
^ "5 problemas difíciles en la búsqueda vectorial y cómo los resuelve Cassandra". TheNewStack . 2023-09-22 . Consultado el 2023-09-22 .
^ "Guía de inicio rápido de búsqueda de vectores" . Consultado el 21 de noviembre de 2023 .
^ Palazzolo, Stephanie. "La base de datos vectorial Chroma obtuvo $18 millones en financiación inicial con una valoración de $75 millones. Esta es la razón por la que su tecnología es clave para ayudar a las empresas emergentes de IA generativa". Business Insider . Consultado el 16 de noviembre de 2023 .
^ MSV, Janakiram (28 de julio de 2023). "Explorando Chroma: la base de datos de vectores de código abierto para LLM". The New Stack . Consultado el 16 de noviembre de 2023 .
^ "chroma/LICENCIA en main · chroma-core/chroma". GitHub .
^ "Base de datos de vectores". learn.microsoft.com . 26 de diciembre de 2023 . Consultado el 10 de enero de 2024 .
^ "Couchbase busca aumentar la productividad de la base de datos de los desarrolladores con la herramienta de inteligencia artificial Capella IQ". VentureBeat . 2023-08-30.
^ "Presentación para inversores del tercer trimestre del año fiscal 2024". Relaciones con inversores de Couchbase . 6 de diciembre de 2023.
^ Anderson, Scott (26 de marzo de 2021). "Couchbase adopta la licencia BSL". El blog de Couchbase . Consultado el 14 de febrero de 2024 .
^ "Base de datos de vectores de código abierto". Blog de CrateDB . 16 de noviembre de 2023. Consultado el 6 de noviembre de 2024 .
^ Sean Michael Kerner (18 de julio de 2023). "DataStax lleva la búsqueda de bases de datos vectoriales a la nube múltiple con Astra DB". Venture Beat.
^ Kerner, Sean (23 de mayo de 2023). "Elasticsearch Relevance Engine aporta nuevos vectores a la IA generativa". VentureBeat . Consultado el 18 de noviembre de 2023 .
^ "elasticsearch/LICENSE.txt en main · elastic/elasticsearch". GitHub .
^ "Indexación de consultas HDF5". GitHub . 27 sep 2019 . Consultado el 3 de mayo de 2024 .
^ "HDFGroup/COPYING en master · HDFGroup/hdf5". GitHub . Consultado el 29 de octubre de 2023 .
^ "Linterna". 2024-04-05 . Consultado el 2024-04-05 .
^ "lantern/LICENSE en main /lanterndata/lantern". GitHub . Consultado el 10 de abril de 2024 .
^ Wiggers, Kyle (6 de junio de 2023). "LlamaIndex agrega datos privados a modelos de lenguaje grandes". TechCrunch . Consultado el 29 de octubre de 2023 .
^ "llama_index/LICENSE en main · run-llama/llama_index". GitHub . Consultado el 29 de octubre de 2023 .
^ "Vector MariaDB". MariaDB.org . Consultado el 30 de julio de 2024 .
^ "Búsqueda de vectores en bases de datos antiguas y modernas". manticoresearch.com . Consultado el 30 de julio de 2024 .
^ "Preguntas frecuentes sobre licencias". Base de conocimientos de MariaDB . Consultado el 30 de julio de 2024 .
^ Sawers, Paul (16 de agosto de 2023). «Conoce a Marqo, un motor de búsqueda vectorial de código abierto para aplicaciones de IA». TechCrunch . Consultado el 20 de agosto de 2024 .
^ marqo-ai/marqo, Marqo, 2024-08-20 , consultado el 2024-08-20
^ "Página de inicio de Meilisearch". Meilisearch . 8 de octubre de 2024 . Consultado el 29 de octubre de 2023 .
^ "meilisearch/LICENSE en main · meilisearch/meilisearch". GitHub . Consultado el 8 de octubre de 2024 .
^ "Base de datos de vectores de código abierto - Milvus - LFAI y DATOS" . Consultado el 29 de octubre de 2023 .
^ Liao, Ingrid Lunden y Rita (24 de agosto de 2022). "Zilliz recauda 60 millones de dólares y se muda a San Francisco". TechCrunch . Consultado el 29 de octubre de 2023 .
^ "Presentación de Atlas Vector Search: cree aplicaciones inteligentes con búsqueda semántica e inteligencia artificial sobre cualquier tipo de datos". MongoDB . 2023-06-22.
^ "Neo4j mejora su base de datos de gráficos con búsqueda vectorial". itbrief . 2023-08-22.
^ "Índices de búsqueda vectorial". neo4j .
^ "Licencia de Neo4j".
^ "Las quince mejores bases de datos vectoriales". db-engines.com . 2024-07-03 . Consultado el 2024-07-03 .
^ "Licencia Java de ObjectBox". github .
^ "Uso de OpenSearch como base de datos vectorial". OpenSearch.org . 2023-08-02 . Consultado el 2024-02-07 .
^ Pan, James Jie; Wang, Jianguo; Li, Guoliang (21 de octubre de 2023), Estudio de sistemas de gestión de bases de datos vectoriales , arXiv : 2310.14021
^ "AWS presenta nuevas herramientas de análisis y gestión de datos basadas en IA". SiliconANGLE . 2023-07-26 . Consultado el 2024-02-07 .
^ "Licencia de OpenSearch". github .
^ Hook(1) y Priyadarshi(2), Doug(1) y Ranjan(2) (2 de mayo de 2024). "Oracle anuncia la disponibilidad general de AI Vector Search en Oracle Database 23ai". oracle . Consultado el 9 de julio de 2024 .{{cite web}}: CS1 maint: numeric names: authors list (link)
^ "Pinecone lidera la 'explosión' de bases de datos vectoriales para IA generativa". VentureBeat . 2023-07-14 . Consultado el 2023-10-29 .
^ "pgvector". GitHub . Consultado el 27 de noviembre de 2023 .
^ "pgvector/License". GitHub . Consultado el 27 de noviembre de 2023 .
^ Sawers, Paul (19 de abril de 2023). "Qdrant, una startup de bases de datos vectoriales de código abierto, quiere ayudar a los desarrolladores de IA a aprovechar los datos no estructurados". TechCrunch . Consultado el 29 de octubre de 2023 .
^ "qdrant/LICENSE en master · qdrant/qdrant". GitHub . Consultado el 29 de octubre de 2023 .
^ "Uso de Redis como base de datos vectorial con OpenAI | Libro de recetas de OpenAI". cookbook.openai.com . Consultado el 10 de febrero de 2024 .
^ "Guía de inicio rápido de Redis como base de datos vectorial". Redis . Consultado el 31 de enero de 2024 .
^ "Búsqueda y consulta". Redis . Consultado el 10 de febrero de 2024 .
^ "Tipos de datos vectoriales y funciones de similitud vectorial: disponibilidad general". Snowflake . 2024-05-17 . Consultado el 2024-05-17 .
^ Wiggers, Kyle (4 de enero de 2023). "SurrealDB recauda 6 millones de dólares para su oferta de base de datos como servicio". TechCrunch . Consultado el 19 de enero de 2024 .
^ "SurrealDB | Preguntas frecuentes sobre licencias | La base de datos multimodelo definitiva". SurrealDB . Consultado el 14 de febrero de 2024 .
^ Martinez, Miguel (2024-06-20). «Página de inicio de Typesense». Typesense . Consultado el 20 de junio de 2024 .
^ Riley, Duncan (4 de octubre de 2023). "Yahoo se deshace del motor de escalado de IA Vespa y lo convierte en una empresa independiente". siliconANGLE . Consultado el 18 de noviembre de 2023 .
^ "vespa/LICENCIA en master · vespa-engine/vespa". GitHub .
^ "Weaviate recauda 50 millones de dólares por su base de datos de vectores optimizada para IA". SiliconANGLE . 2023-04-21 . Consultado el 2023-10-29 .
^ "weaviate/LICENCIA en master · weaviate/weaviate". GitHub . Consultado el 29 de octubre de 2023 .
Enlaces externos
Sawers, Paul (20 de abril de 2024). "Por qué las bases de datos vectoriales están de moda en un momento en que el ciclo de la IA alcanza su máximo auge". TechCrunch . Consultado el 23 de abril de 2024 .