Base de datos vectorial: cómo funciona y cuándo usarla
Entiende los embeddings, la búsqueda por similitud y los filtros. Descubre cuándo basta PostgreSQL con pgvector y cuándo conviene usar Pinecone o Qdrant.
Publicado el

Puedes incorporar búsquedas por significado sin adoptar otra base de datos: PostgreSQL, la base de datos relacional que quizá ya utilizas, permite hacerlo con la extensión pgvector. Para entender qué es una base de datos vectorial, conviene distinguir 3 tareas: representar el contenido con números, recuperar registros similares y limitar los resultados a los datos que cumplen las condiciones de acceso y búsqueda. Contrata un servicio independiente cuando sus funciones de recuperación o su forma de operar resuelvan una necesidad que tu sistema actual no pueda cubrir.
Las capacidades de las bases de datos que se describen a continuación se verificaron en la documentación oficial de sus creadores el 20 de octubre de 2026. El ejemplo de soporte es ilustrativo; no corresponde a una prueba de rendimiento ni a una implementación documentada.
¿Qué es una base de datos vectorial y cómo funciona?
Una base de datos vectorial almacena representaciones numéricas del contenido y encuentra registros cuyas representaciones están cerca de la consulta. Así, una búsqueda como «No puedo iniciar sesión» puede encontrar un artículo sobre recuperación de cuentas aunque use otras palabras. Puede ser un servicio especializado o una función añadida a una base de datos existente. La explicación de Pinecone describe las funciones de almacenamiento, indexación y búsqueda.
Imagina un embedding como una dirección en un mapa de ideas relacionadas. Un modelo de embeddings, un programa entrenado para convertir contenido en representaciones numéricas, sitúa cerca los elementos relacionados. La base de datos guarda esas direcciones y encuentra los elementos cercanos. Ese mapa se aprende durante el entrenamiento: la cercanía es un indicio útil de relevancia, pero no una garantía.
Un embedding es la lista de números. Una dimensión es una posición dentro de esa lista. Por lo general, no puedes asignar a cada posición una etiqueta como «facturación», «seguridad» o «satisfacción del cliente»: el significado se distribuye por toda la representación. Un modelo adecuado puede generar embeddings de texto, imágenes o audio. La documentación de vectores de Qdrant explica esta representación.
¿Qué guarda la base de datos?
Un registro útil para la búsqueda necesita más que un embedding. Conserva un ID estable, el vector y los metadatos: campos habituales como producto, idioma, organización cliente y estado de publicación. Guarda también el texto original junto al registro, o un identificador que permita a la aplicación recuperarlo. Un embedding por sí solo no proporciona al generador de respuestas el pasaje original que debe citar. Las definiciones de registros y documentos de Pinecone distinguen entre las representaciones que se pueden buscar y sus campos asociados.
En un artículo de soporte, cada registro de búsqueda puede representar un pasaje con sentido propio en lugar de la página completa. Ese fragmento se denomina chunk. Conviene mantener juntas las instrucciones de recuperación, sin cortarlas a mitad de la excepción que indica al cliente qué debe hacer después.
Cómo visualizar una base de datos vectorial
La distancia expresa similitud en el espacio del modelo. No es una distancia física, y un dibujo solo sirve para ilustrar la idea.

El modelo de embeddings determina ese mapa. Cambiar de base de datos no mejora automáticamente la posición que el modelo asigna a una consulta confusa. Para elegir un modelo, empieza por la comparativa de los mejores modelos de embeddings y después evalúalo con las preguntas de tus usuarios.
Búsqueda semántica: similitud e índices
La consulta pasa por un modelo de embeddings y una configuración compatibles con los usados para el contenido almacenado. Si el modelo distingue entre modos para consultas y para documentos, utiliza el que corresponda en cada caso. La base de datos compara el vector resultante mediante la métrica de distancia adecuada, una regla como la distancia coseno o la distancia euclidiana, y devuelve los registros más cercanos. La guía de indexación de Pinecone documenta este proceso.
Un índice es una estructura adicional que permite buscar sin comparar la consulta con todos los vectores almacenados. La búsqueda exacta encuentra los registros más cercanos según la métrica elegida. La búsqueda aproximada de vecinos más cercanos, conocida por las siglas ANN, puede omitir algunos de los vecinos realmente más cercanos para reducir el trabajo de búsqueda. Aquí, recall mide qué proporción de esos vecinos recupera la búsqueda aproximada; no mide si una respuesta es verdadera.
Dos familias de índices habituales son HNSW, un grafo de conexiones entre vecinos, e IVFFlat, que agrupa vectores y busca en los grupos más cercanos. El README de pgvector documenta ambas. Para tu producto, la pregunta es si el trabajo de búsqueda que ahorras compensa los resultados relevantes que podrías perder.
Filtrado por metadatos
Los filtros determinan qué registros pueden aparecer; la similitud ordena las coincidencias. Una consulta puede exigir product=workspace, language=en y status=published, además de limitarse a la organización a la que el cliente tiene acceso. Son condiciones explícitas: no conviene confiar en que un embedding las entienda. La guía de filtrado por metadatos de Pinecone muestra cómo acotar una búsqueda con filtros.
El servidor debe determinar la organización y los permisos a partir de la identidad autenticada. Un filtro enviado por un navegador o un agente no constituye, por sí solo, una autorización. Antes de enviar pasajes privados a un modelo de respuestas, comprueba que el usuario sigue teniendo acceso a los registros de origen.
Ejemplo de base de datos vectorial: buscar respuestas en artículos de soporte
Una búsqueda de soporte debe recuperar el pasaje que resuelve el problema del cliente, aunque este no conozca el título del artículo.
Considera 3 artículos hipotéticos:
- Recuperación de la cuenta: «Si no tienes disponible el dispositivo de autenticación, usa un código de recuperación guardado. Si no tienes ningún código de recuperación, contacta con soporte».
- Dirección de facturación: «Cambia la dirección que aparecerá en las próximas facturas desde la configuración de facturación».
- Invitar a un compañero de equipo: «Un administrador puede enviar una invitación al espacio de trabajo desde la configuración de miembros».
El cliente pregunta: «Perdí el teléfono y no puedo pasar de la pantalla del código de acceso». El resultado esperado es el artículo de recuperación de la cuenta. Ese es el objetivo de la evaluación, no una afirmación de que todos los modelos de embeddings lo colocarán en primer lugar.
Prepara los pasajes de origen
Conserva cada pasaje que pueda responder una pregunta junto con el ID del artículo, el título, la ubicación de la fuente y los permisos vigentes. Evita separar una instrucción de la excepción que la matiza.
Genera los embeddings y guárdalos
Procesa cada pasaje con el modelo de embeddings elegido. Guarda su vector junto con el ID de origen y los metadatos, incluidos el producto, el idioma y el estado de publicación. Conserva la configuración del modelo para que las consultas futuras utilicen representaciones compatibles.
Busca dentro del contenido permitido
Genera el embedding de la pregunta del cliente, aplica las restricciones de producto y permisos, y recupera los registros cercanos. Revisa los pasajes recuperados, además de sus puntuaciones de similitud.
Devuelve las fuentes o redacta una respuesta
Una interfaz de búsqueda puede mostrar directamente el artículo coincidente. Una interfaz de respuestas puede entregar el pasaje a un modelo de lenguaje con instrucciones de citar la fuente y reconocer cuándo no hay información suficiente.
Una respuesta razonable a partir del pasaje proporcionado sería: «Usa un código de recuperación guardado. Si no tienes ninguno, contacta con soporte». La respuesta no debe inventar una forma de eludir la seguridad de la cuenta porque el cliente parezca frustrado.
Cómo crear una base de datos vectorial para RAG
Construye primero la recuperación de información y después incorpora la generación de respuestas. La generación aumentada por recuperación, o RAG, consiste en proporcionar material recuperado a un modelo de lenguaje cuando redacta una respuesta. La base de datos vectorial encuentra posibles fuentes; el modelo de lenguaje compone la respuesta. Son responsabilidades distintas, aunque un proveedor las ofrezca juntas. La explicación de RAG de Pinecone describe esa relación.

En el producto de soporte, verifica primero que las preguntas sobre recuperación de cuentas devuelvan el pasaje correspondiente. Después comprueba que la respuesta generada se ciña a ese pasaje. Si llega el documento equivocado, cambiar el prompt de respuesta no permite corregir de forma fiable la recuperación.
Un agente puede decidir repetir la búsqueda, reformular una pregunta o consultar otra fuente. Eso añade un bucle de control alrededor de la recuperación; no cambia lo que almacenan los vectores. La guía de RAG con agentes explica ese siguiente paso de la arquitectura.
Cuándo basta PostgreSQL y cuándo compensa un servicio gestionado
Mantén los vectores en tu base de datos actual si la recuperación cumple allí los requisitos del producto. Sepáralos cuando la búsqueda necesite capacidad independiente, funciones especializadas de recuperación o una forma de operar que tu equipo no pueda asumir razonablemente. Es una recomendación de arquitectura basada en el comportamiento documentado a continuación, no una clasificación obtenida mediante pruebas de rendimiento.
Para una comparación más amplia de productos y precios, consulta la comparativa de las mejores bases de datos vectoriales. Aquí, la decisión parte de lo que necesita hacer tu aplicación.
pgvector: la recuperación junto a los datos de la aplicación
pgvector añade búsqueda por similitud vectorial a PostgreSQL y conserva las uniones SQL, que combinan registros relacionados, y las transacciones, que confirman cambios de forma conjunta. Por eso es un buen punto de partida para un producto SaaS cuyos documentos y permisos de cuenta ya comparten base de datos. Su README documenta esas capacidades.
La ventaja de esta arquitectura es poder asociar cada pasaje con su propietario, estado y fuente en un mismo lugar. Sigues teniendo que regenerar los embeddings cuando cambia el contenido, pero puedes evitar copiar los metadatos de permisos a otra base de datos solo para poner en marcha la búsqueda.
Las limitaciones están en la recuperación aproximada con filtros y en los recursos compartidos. pgvector utiliza búsqueda exacta de forma predeterminada. Con índices aproximados, los filtros se aplican después de explorar los candidatos del índice, por lo que una consulta puede devolver muy pocas filas que cumplan las condiciones. El README propone opciones como exploraciones iterativas, índices sobre las columnas de filtrado, índices parciales y particionamiento. Consulta las indicaciones sobre filtrado.
Por ejemplo, un filtro de permisos podría excluir a la mayoría de los candidatos iniciales. Abórdalo como un problema de diseño de la consulta antes de concluir que la base de datos no sirve. Después mide si resolverlo consume más memoria o tiempo de búsqueda de lo que el producto puede tolerar junto con sus transacciones habituales.
Elige pgvector si esta configuración cumple tus requisitos y tu equipo puede operar PostgreSQL. No migres solo porque un prototipo haya crecido; hazlo cuando puedas identificar el requisito que sigue sin cumplirse.
Pinecone: pagar por una infraestructura de recuperación gestionada
Pinecone encaja cuando quieres un servicio de recuperación independiente sin operar la infraestructura que lo sostiene. Su documentación de arquitectura describe un servicio gestionado con infraestructura serverless, donde Pinecone administra la capacidad subyacente y las rutas de lectura y escritura escalan de forma independiente.
Su descripción general documenta el uso de vectores aportados por el usuario, las opciones de embeddings integradas, los filtros de metadatos y los espacios de nombres, particiones lógicas que permiten separar organizaciones cliente. En la práctica, encaja con un equipo de producto pequeño que necesita capacidad de búsqueda independiente y que, de otro modo, tendría que hacerse cargo de otra implementación de base de datos.
La integración con la aplicación sigue siendo responsabilidad de tu equipo. Tu producto debe enviar al servicio los cambios de contenido, las eliminaciones y las actualizaciones de permisos, y detectar fallos en esa sincronización. Una infraestructura gestionada no determina si un artículo está actualizado o si un usuario tiene autorización.
Pinecone también documenta la consistencia eventual: los registros modificados pueden tardar en aparecer en las consultas. Consulta sus indicaciones sobre actualización de datos al diseñar experiencias de «subir un archivo y preguntar de inmediato». Que una escritura haya finalizado correctamente no demuestra que la siguiente búsqueda ya refleje el cambio.
Pinecone justifica su costo cuando delegar la operación de la infraestructura y separar la búsqueda del tráfico de la aplicación responden a necesidades concretas. Es más difícil justificarlo si la base de datos existente ya cubre esas necesidades y la sincronización se convierte en el principal problema nuevo.
Qdrant: un motor especializado con distintas opciones de implementación
Qdrant ofrece un motor especializado de búsqueda vectorial tanto de código abierto como en la nube gestionada. Su descripción general describe puntos que contienen vectores y un payload: los campos adicionales que aportan contexto y permiten filtrar los resultados.
Si tu producto de conocimiento combina condiciones de organización cliente, estado del documento y grupos de acceso, conviene revisar su documentación de filtrado y su guía de indexación. Los índices de payload ayudan a evaluar filtros y planificar consultas; el HNSW con filtrado añade conexiones asociadas a los valores indexados del payload.
Exige diseñar los índices con cuidado y hacerse cargo de otro almacén de datos. Qdrant recomienda crear los índices de payload antes de la ingesta para que el grafo vectorial pueda incluir esas conexiones que tienen en cuenta los filtros. Añadirlos después puede exigir reconstruir el índice HNSW para obtener esa ventaja. Si lo alojas por tu cuenta, la operación también queda en manos de tu equipo; Qdrant Managed Cloud ofrece clústeres gestionados, escalado, supervisión y copias de seguridad.
Evalúa Qdrant cuando su comportamiento de filtrado o sus opciones de implementación resuelvan un requisito concreto. Un motor especializado exige el mismo rigor al actualizar y eliminar contenido de origen que cualquier otro almacén de búsqueda independiente.
Qué límites debes comprobar antes del lanzamiento
Mide la recuperación con los filtros y las actualizaciones que experimentarán tus usuarios. Una búsqueda rápida sobre todos los documentos dice poco sobre la experiencia de un cliente que solo puede acceder a un pequeño subconjunto.
El número de dimensiones debe ser compatible con la representación del índice. El README de pgvector establece un límite de 2,000 dimensiones para índices vector que usan HNSW o IVFFlat, y de 4,000 para halfvec, su representación de media precisión. Son límites de los índices, no límites universales de las filas almacenadas. Comprueba la compatibilidad antes de decidir qué salida de embeddings utilizarás. Documentación de índices de pgvector.
El recall y la calidad de la respuesta se comprueban por separado. Compara los resultados aproximados con los vecinos más cercanos obtenidos mediante búsqueda exacta para detectar las pérdidas del índice. Por otro lado, clasifica si los pasajes recuperados responden a la pregunta del usuario. Una búsqueda exacta puede devolver fielmente las fuentes equivocadas si el modelo representa mal la tarea.
Mantener los datos al día también implica eliminarlos. Al editar un artículo, los pasajes obsoletos deben sustituirse; al eliminarlo, deben desaparecer sus registros de búsqueda. Revocar un permiso también debe impedir que esos pasajes lleguen al modelo. Prueba estas transiciones con el mismo cuidado que una ingesta correcta.
El consumo de recursos incluye tareas ajenas a la búsqueda. Regenerar embeddings de contenido revisado, mantener índices y sincronizar registros de origen siguen siendo tareas del sistema. El límite de capacidad útil es el que alcanza tu carga de trabajo real, no una cifra aislada de vectores.
¿Qué se exagera sobre las bases de datos vectoriales?
La mayor exageración es afirmar que añadir almacenamiento vectorial dota a una aplicación de memoria fiable. Lo que ofrece es una forma de recuperar representaciones almacenadas. Aún debes decidir qué recordar, quién puede acceder a ello, cuándo caduca y cómo una corrección reemplaza a un registro anterior.
Otra exageración es que la búsqueda por significado sustituye a las coincidencias exactas. Los códigos de producto, los mensajes de error y los nombres suelen requerir recuperación léxica, que busca coincidencias de términos. La búsqueda híbrida combina esa señal con la recuperación semántica. La descripción general de Qdrant señala expresamente que los vectores densos pueden pasar por alto términos técnicos e identificadores.
La tercera es equiparar similitud con veracidad. Un pasaje que suena convincente puede estar obsoleto, no estar autorizado o tratar simplemente de un problema relacionado. Mantén las fuentes vinculadas al resultado y permite que la aplicación indique cuándo no dispone de respaldo suficiente para responder.
Para quien funda una empresa, esto implica financiar la evaluación de la recuperación antes de ampliar la infraestructura. Para quien desarrolla el producto, supone probar todo el recorrido desde la actualización de la fuente hasta la respuesta autorizada. Para quien opera el sistema, exige asignar responsables de los fallos de indexación y del contenido obsoleto, incluso cuando la base de datos es gestionada.
Cómo crear una base de datos vectorial: por dónde empezar
Empieza con la base de datos que ya utilizas, una colección de artículos de soporte capaz de responder preguntas y un criterio de aceptación por escrito. Si dispones de PostgreSQL, comprueba que tu proveedor admite pgvector y habilita la extensión mediante el procedimiento de instalación compatible con su servicio.
Elige el modelo de embeddings y una representación vectorial compatible. Guarda cada pasaje con su ID de origen y sus campos de permisos. Empieza con recuperación exacta cuando resulte práctico para establecer una referencia; añade un índice aproximado solo cuando lo exija el tiempo de búsqueda medido.
Reúne preguntas reales de soporte junto con los pasajes de origen que deberían responderlas. Incluye preguntas reformuladas, mensajes de error exactos, artículos de acceso restringido, contenido recién editado y preguntas que la documentación no pueda responder. Comprueba tanto la relevancia como la exclusión: devolver un pasaje útil y excluir uno no autorizado son requisitos distintos.
Define los valores aceptables para tu producto en latencia de búsqueda, calidad de recuperación y tiempo que tardan en reflejarse las actualizaciones. Si la base de datos actual cumple, lanza el producto con ella. Si no, lleva las consultas que fallan y los requisitos operativos a una evaluación de Pinecone o Qdrant. Así, el servicio gestionado tendrá una tarea concreta con la que justificar su costo.
Preguntas frecuentes
¿Para qué sirven las bases de datos vectoriales en la IA?
Permiten buscar por significado, recuperar información para generar respuestas, recomendar por similitud y recuperar contexto almacenado. El modelo de embeddings debe representar el tipo de similitud que necesita la aplicación.
¿Para qué necesitaría un archivo vectorial?
Un archivo de gráficos vectoriales describe formas y trazados para crear imágenes. Ese uso de «vector» es distinto de los embeddings numéricos tratados aquí. Una función de búsqueda con IA no requiere un archivo de gráficos vectoriales.
¿Cuáles son algunos ejemplos de datos vectoriales?
El embedding de un pasaje de soporte, una imagen de producto o un clip de audio es un dato vectorial: números que representan el elemento para una tarea concreta de similitud. No son lo mismo que los vectores geográficos o de dibujo utilizados en otros campos.
¿Qué es un vector en ciencia de datos?
Un vector es una colección ordenada de números. En un sistema de embeddings, esos números representan un elemento de modo que las comparaciones matemáticas permitan identificar otros elementos relacionados.
¿SQL es una base de datos vectorial?
SQL es un lenguaje de consulta. PostgreSQL con pgvector es un ejemplo de base de datos relacional que también puede almacenar y buscar vectores. Usar un servicio vectorial independiente es una decisión de arquitectura, no una exigencia de la IA.
¿Cuáles son las 3 mejores bases de datos vectoriales?
Para la decisión que aborda esta guía, evalúa pgvector si ya operas PostgreSQL, Pinecone si buscas infraestructura de recuperación gestionada y Qdrant si necesitas un motor especializado con opciones de código abierto y de implementación gestionada. Son puntos de partida según el caso de uso, no una clasificación basada en pruebas de rendimiento.
¿ChatGPT usa una base de datos vectorial?
Una interfaz conversacional o una función de memoria no permiten deducir qué base de datos utiliza un servicio. Este artículo no establece cuál es la arquitectura de almacenamiento interna de ChatGPT. Para tu producto, elige dónde almacenar la información que vas a recuperar según sus requisitos, sin basarte en una supuesta implementación de otro servicio.
¿Cuál es la mejor base de datos vectorial gratuita?
Empieza por evaluar pgvector, de código abierto, si ya tienes PostgreSQL; considera Qdrant, también de código abierto, si necesitas un motor especializado. Ninguna de las opciones elimina el alojamiento ni el trabajo operativo. El modelo de datos existente y los requisitos de recuperación importan más que la etiqueta del software.
¿Qué base de datos utiliza la IA?
No existe una única base de datos obligatoria. Una aplicación puede usar un almacén relacional para cuentas y transacciones, búsqueda vectorial para encontrar similitudes y un almacenamiento de origen para los documentos. Estas capacidades pueden compartir sistema o residir en servicios distintos.
¿Qué es una base de datos vectorial en IA?
Es el componente de almacenamiento y recuperación que busca entre representaciones numéricas del contenido. Proporciona registros relevantes a una aplicación de IA; por sí solo, no entrena el modelo ni determina si una respuesta es correcta.
Suscríbete al boletín para recibir guías prácticas sobre cómo crear productos de IA.
- Publicado
- Categoría
- Build
- Idioma










