Una base de datos vectorial, también llamada vector database, es un tipo especializado de base de datos diseñado para almacenar, indexar y buscar de forma muy eficiente vectores de alta dimensión (normalmente cientos o miles de números). Estos vectores suelen ser incrustaciones o embeddings generados por modelos de inteligencia artificial (como los de OpenAI, Google, Cohere, Hugging Face, etc.), y representan el "significado" o características semánticas de datos no estructurados. Los vectores que representan cosas parecidas están matemáticamente cerca en ese espacio de muchas dimensiones.
¿Qué representa un vector?
Un vector es simplemente una lista larga de números (por ejemplo: [0.21, -0.45, 0.78, ..., 0.12]) que captura el significado de algo:
Una frase o párrafo: su significado semántico.
Una imagen: sus características visuales.
Un audio: patrones sonoros.
Un producto; sus atributos combinados.
Código, PDF, usuario, etc.
Usos de bases de datos vectoriales
Búsqueda semántica: En vez de buscar palabras exactas buscar por significado. Ejemplo: Google, Perplexity, ChatGPT con RAG.
RAG (Retrieval-Augmented Generation): Alimentar LLMs con información actualizada/propia de la empresa.
Sistemas de recomendación avanzados: "películas parecidas", "productos similares".
Búsqueda multimodal: Buscar imágenes con texto.
Buscar audio con descripción textual.
Detección de duplicados / clustering: Encontrar textos/imágenes casi idénticos.
Agentes IA con memoria larga: Recordar conversaciones, documentos, etc..