ENES

Base de datos vectorial

Una base de datos que busca por significado parecido y no por palabras exactas.

Un mapa de puntos donde gato, gatito y perro están cerca entre sí y factura y recibo quedan lejos; una búsqueda de cachorro dibuja un círculo alrededor de las palabras de animales cercanas

Una base de datos vectorial (vector database) guarda embeddings: listas de números que produce un modelo de IA para representar el significado de un texto, una imagen o un sonido. Las cosas con significado parecido reciben números parecidos, así que quedan cerca, como puntos en un mapa. 'Cachorro' cae cerca de 'perro' y de 'gatito', lejos de 'factura'. Una base de datos vectorial está hecha para responder rápido una sola pregunta: ¿qué elementos guardados están más cerca de este?

Eso es distinto de buscar en una base de datos común. Si buscás 'no puedo entrar' por palabras clave en un centro de ayuda, no aparece el artículo 'Cómo restablecer tu contraseña'. Buscando por vectores sí aparece, porque los significados están cerca aunque las palabras sean otras. Para hacer esto entre millones de elementos sin comparar contra cada uno, las bases vectoriales usan índices especiales (aparecen nombres como HNSW) que encuentran casi los más cercanos muy rápido, a cambio de resignar un poquito de precisión.

Se volvieron populares con los grandes modelos de lenguaje porque son la memoria habitual detrás de RAG: tus documentos se parten en pedazos, cada pedazo se convierte en embedding y se guarda, y cuando alguien hace una pregunta se buscan los pedazos más cercanos y se le pasan al modelo como contexto. También sirven para búsqueda semántica, recomendaciones de 'productos parecidos' y detección de duplicados. Algunas son productos dedicados; otras son funciones agregadas a sistemas que ya existían, como la extensión pgvector para PostgreSQL.

Para quedarse

Para seguir leyendo

Términos relacionados

Más de IA