Calor de verano — todo se derrite, hasta nuestros precios.−25%−25 % en cada plan anual, hasta el 31 de agostoVer planes
EQVPS
Empezar

Aloja una base de datos vectorial para la memoria de un agente de IA en un VPS

15 jun 2026 · 3 min de lectura · EQVPS Team

Un agente de IA sin memoria se queda reintroduciéndose cada conversación. La solución es una base de datos vectorial — almacena embeddings de tus documentos, notas o chats pasados para que el agente pueda recordar las partes relevantes bajo demanda (esa es la «R» de RAG). Puedes alquilarlo como servicio gestionado, o puedes ejecutarlo tú mismo en un VPS y mantener tus datos — que a menudo son tus datos privados — en una máquina que controlas. Aquí está cómo, y lo que cuesta realmente en RAM.

Dos buenas opciones

No necesitas nada exótico. Dos caminos cubren a casi todos:

pgvector — una extensión de Postgres. Si ya ejecutas Postgres (o estás contento de hacerlo), esto añade búsqueda vectorial a la base de datos que ya tienes. Un servicio, una copia de seguridad, SQL que conoces. El comienzo de menor esfuerzo por amplio margen.

Qdrant — un motor vectorial a medida. Recurre a él cuando tengas muchos vectores (millones bajos+) o quieras filtrado rápido de metadatos y una API dedicada. Es un servicio aparte que ejecutar, pero está construido para exactamente este trabajo.

Para la mayoría de los agentes que dan sus primeros pasos, pgvector es la primera respuesta correcta. Pasa a Qdrant cuando lo hayas superado, no antes.

La realidad de la RAM (esta es la parte que la gente subestima)

La búsqueda vectorial es rápida porque el índice vive en memoria — así que la RAM, no el disco, es tu restricción real. Una guía aproximada:

Así que dimensiona para el índice, no para el archivo. (La misma lógica que la guía general de dimensionamiento — lo pesado no es obvio hasta que lo mides.)

Inicio rápido: pgvector

En una máquina con Postgres (Docker es lo más fácil — el mismo patrón que autoalojar n8n):

CREATE EXTENSION IF NOT EXISTS vector;

CREATE TABLE memory (
  id bigserial PRIMARY KEY,
  content text,
  embedding vector(1536)        -- coincide con las dimensiones de tu modelo de embeddings
);

-- después de tener datos, construye un índice para búsqueda rápida:
CREATE INDEX ON memory USING hnsw (embedding vector_cosine_ops);

Tu agente inserta content + su embedding, luego consulta con ORDER BY embedding <=> $query_embedding LIMIT 5 para extraer los recuerdos más cercanos. Ese es todo el bucle.

¿Prefieres Qdrant? Es un único contenedor Docker que expone una API HTTP/gRPC; creas una colección con tu tamaño de vector y haces upsert de puntos. La misma idea, motor dedicado.

¿Puede compartir máquina con el agente?

Sí — para almacenes de memoria pequeños a medianos, ejecuta la BD vectorial en el mismo VPS que el agente. Es más simple y la latencia es básicamente cero. Sepáralos en servidores distintos solo cuando uno empiece a expulsar al otro de la RAM. Esa es una decisión posterior, buen-problema-para-tener, no una del primer día.

Salvedades honestas

Dentro de eso, un almacén vectorial autoalojado es una forma limpia de dar a un agente memoria duradera sin entregar tus datos privados a un tercero. Empieza con pgvector en una máquina de 2 GB, vigila la RAM, y crece a Qdrant o a un plan más grande solo cuando los números te lo digan.

Preguntas frecuentes

pgvector o Qdrant — ¿cuál debería autoalojar?

Si ya ejecutas Postgres (o quieres una base de datos tanto para los datos de tu app como para los embeddings), pgvector es la opción de menor esfuerzo — es solo una extensión. Si tienes millones de vectores o quieres un motor a medida con filtrado rápido, Qdrant vale el servicio aparte. Para la mayoría de los agentes que empiezan, pgvector sobre Postgres es de sobra.

¿Cuánta RAM necesita una base de datos vectorial?

Más de lo que adivinarías, porque una buena búsqueda quiere el índice en memoria. Una regla aproximada: unos pocos cientos de miles de embeddings caben cómodamente en 2 GB; una vez que alcanzas los pocos millones, planea 4 GB+ y afina el índice. Empieza en 2 GB, vigila la memoria, cambia el tamaño cuando la búsqueda se ralentice.

¿Por qué autoalojar un almacén vectorial en lugar de uno gestionado?

Dos razones por las que la gente lo hace de verdad: tus embeddings a menudo contienen tus datos privados (notas, docs, contenido de clientes), y un almacén autoalojado mantiene eso en un servidor que controlas. Y es de coste plano — un servicio vectorial gestionado factura por vectores y consultas, mientras que un VPS es una cifra mensual sin contador por consulta.

¿Pueden una BD vectorial y mi agente funcionar en el mismo VPS?

Sí, para workloads pequeños a medianos — colocar el agente y una instancia de pgvector/Qdrant en una máquina es simple y reduce la latencia a casi cero. Sepáralos en servidores distintos solo cuando uno empiece a dejar sin RAM al otro, que es un buen problema para tener más tarde, no una preocupación del primer día.

¿Ocupan mucho disco los embeddings?

Un único embedding son unos pocos kilobytes, así que un millón de ellos son unos pocos gigabytes más el overhead del índice — significativo pero no enorme. 25–45 GB de disco cubren un almacén de memoria sustancial para la mayoría de los agentes. La RAM, no el disco, suele ser el primer límite que chocas.

← Volver al blogVer planes y precios →

Comentarios

Aún no hay comentarios. Sé el primero.

Deja un comentario

Los comentarios se moderan antes de aparecer.