Varias colecciones RAG compiten por la RAM porque cada una mantiene sus propios vectores, grafo de búsqueda, índices de metadatos, cachés y conjunto de trabajo activo.
Un servidor doméstico puede separar documentos familiares, manuales técnicos, metadatos de fotos, notas de trabajo e historial del hogar inteligente en diferentes colecciones RAG para mejorar la privacidad o la precisión de las búsquedas. Los archivos de origen pueden caber cómodamente en el disco, mientras que la capa de búsqueda consume mucha más memoria de la esperada. Cada colección puede cargar un índice de vecinos más cercanos aproximados, filtros de contenido, metadatos de segmentos, páginas accedidas recientemente y búferes de consulta; además, los servicios de generación de embeddings y reranking añaden sus propios modelos residentes junto a esas colecciones.
Cada colección crea una estructura de búsqueda independiente
Una colección de vectores no es simplemente una carpeta de embeddings. Los motores de búsqueda suelen mantener los valores de los vectores y un grafo de vecindad u otra estructura de búsqueda aproximada que ayuda a evitar el análisis de cada registro.
Weaviate identifica los vectores y grafos HNSW como dos de los principales consumidores de memoria en un índice de vecinos más cercanos aproximados residente en memoria.
Por tanto, crear cinco colecciones puede significar cinco índices direccionables de forma independiente, incluso cuando comparten el mismo modelo de embeddings y se ejecutan en un único proceso de base de datos. La separación mejora las políticas y el mantenimiento solo cuando sus ventajas de recuperación justifican la multiplicación de los conjuntos de trabajo.
Las dimensiones y la sobrecarga del índice multiplican la base
La memoria de los vectores sin procesar aumenta con la cantidad de vectores, las dimensiones de los embeddings y los bytes por componente. El índice consultable añade enlaces del grafo, identificadores, alineación, metadatos y sobrecarga del asignador, además de esa matriz sin procesar.
Milvus ofrece una fórmula de memoria para vectores e índices y señala que una implementación HNSW puede requerir bastante más memoria que los vectores sin indexar por sí solos.
Estima cada colección por separado y después suma los resultados. Una colección con menos documentos aún puede ser costosa si utiliza embeddings de alta dimensionalidad, componentes de precisión completa o un grafo configurado para obtener una alta recuperación.
La conectividad del grafo intercambia RAM por recuperación y velocidad
HNSW conecta cada vector con nodos vecinos. Un mayor número de conexiones puede mejorar la navegación y la recuperación, pero cada enlace almacenado consume memoria y hace más costosa la creación del índice.
Redis explica cómo la conectividad del grafo se controla mediante parámetros que equilibran el tamaño del índice, la recuperación y el comportamiento de las búsquedas.
Es posible que distintas colecciones hereden los mismos valores predeterminados agresivos, aunque solo una los necesite. Usa un perfil de menor consumo de memoria para archivos pequeños o colecciones con poca concurrencia, en lugar de ajustar todos los índices para la carga de búsqueda más exigente.
El mapeo de memoria traslada la presión a la caché de páginas compartida
Colocar los vectores o los datos del grafo en el disco mediante el mapeo de memoria puede reducir la asignación permanentemente residente del proceso. No hace que las páginas activas queden libres; el sistema operativo sigue almacenando en la RAM los bloques del índice a los que se accede recientemente.
La comparación de memoria de Qdrant muestra cómo los vectores mapeados en memoria reducen el uso de RAM medido, aunque introducen un intercambio de rendimiento debido a que los datos se recuperan desde el almacenamiento.
Cuando las consultas saltan entre varias colecciones, sus páginas activas pueden expulsarse mutuamente de la caché de páginas. Esta misma presión puede desplazar los datos del sistema de archivos utilizados por aplicaciones de fotos, contenedores, bases de datos y recursos compartidos de red del servidor doméstico.
Los índices mayores que la RAM pagan el coste con más E/S de almacenamiento
Un índice puede superar la memoria física y seguir permitiendo consultas, pero una mayor parte de cada ruta de búsqueda deberá leerse desde el SSD. El acceso aleatorio y los fallos de caché pasan entonces a formar parte de la latencia de recuperación.
PlanetScale describe índices mayores que la RAM que mantienen en memoria una estructura de navegación más pequeña y trasladan más datos de publicaciones o vectores al almacenamiento.
Puede ser un buen compromiso para un servidor doméstico cuando las búsquedas son ocasionales y el índice reside en un SSD rápido. Es una mala suposición cuando varias colecciones reciben consultas simultáneas o comparten un disco lento con bases de datos de aplicaciones y cargas de trabajo multimedia.
El almacenamiento duplicado y los servicios independientes añaden copias ocultas
El mismo embedding puede existir en un almacén de documentos, un índice vectorial, una caché de aplicaciones y una colección de respaldo o preparación. Además, los contenedores independientes pueden cargar modelos idénticos de embeddings o reranking en espacios de direcciones de procesos distintos.
El análisis de Memgraph sobre cómo evitar el almacenamiento duplicado de vectores muestra por qué la arquitectura del índice cambia la cantidad de copias en memoria que se conservan para un registro consultable.
Por tanto, el número de colecciones es solo una parte del presupuesto. Haz un inventario de los vectores duplicados, las versiones antiguas de los índices, las colecciones temporales de reconstrucción, los procesos de modelos y los resultados almacenados en caché antes de concluir que la base de datos vectorial es la única responsable.
Consolida las colecciones según las políticas de acceso y la carga de trabajo
Usa colecciones independientes cuando necesiten permisos, dimensiones de embeddings, políticas de retención, programaciones de actualización o límites de fallo diferentes. Las etiquetas temáticas por sí solas no siempre requieren un índice físico separado.
Una colección compartida con metadatos de inquilino, propietario, origen o categoría puede reutilizar un único índice, mientras que los filtros mantienen la recuperación dentro del ámbito previsto. Prueba la recuperación filtrada antes de consolidar, porque una colección mixta demasiado grande puede introducir sus propios costes de clasificación y mantenimiento.
La explicación de ZimaSpace sobre por qué un entorno de ejecución de IA local reserva memoria ayuda a interpretar la monitorización: las páginas retenidas y las cachés pueden ser un estado de trabajo reutilizable en lugar de una fuga, pero aun así compiten con el resto del servidor.
Establece un presupuesto de RAM antes de añadir otra colección
Registra la cantidad de vectores, las dimensiones, la precisión, el tipo de índice, la configuración del grafo, el tamaño del índice de metadatos, la memoria residente después del calentamiento y la memoria máxima durante la ingesta y las consultas simultáneas. Mide toda la pila, no solo el panel de la base de datos.
Deja margen para el sistema operativo, la caché de páginas, los contenedores, las bases de datos, el uso compartido de archivos y el modelo de lenguaje local. Si la actividad de intercambio o los fallos de página importantes aumentan al consultar una segunda colección, los conjuntos de trabajo ya no caben cómodamente juntos.
Reduce las dimensiones o la precisión cuando las pruebas de recuperación lo permitan, disminuye la conectividad del grafo, mueve los vectores fríos a un almacenamiento con mapeo de memoria, limita la concurrencia de las consultas, descarga los modelos que no utilices y elimina las colecciones reemplazadas antes de comprar más RAM.
Preguntas frecuentes
¿Una colección RAG grande siempre consume menos memoria?
A menudo evita la duplicación de la sobrecarga de los índices, pero puede requerir filtros más complejos y reducir la calidad de recuperación cuando contenido no relacionado comparte el mismo espacio de clasificación. Consolida solo después de probar los límites de acceso y la recuperación.
¿El mapeo de memoria elimina la competencia por la RAM?
No. Reduce las asignaciones permanentemente residentes, pero las páginas activas del índice siguen ocupando la caché de páginas del sistema operativo y pueden expulsar las páginas utilizadas por otras colecciones y aplicaciones.
¿Por qué la RAM sigue alta después de terminar una consulta RAG?
La base de datos, el asignador, el sistema operativo o el entorno de ejecución del modelo pueden conservar páginas y búferes reutilizables. Comprueba si la memoria se reutiliza en consultas posteriores y si aparece actividad de intercambio o presión por falta de memoria antes de considerarlo una fuga.
Centro de Tecnología e IA
Más para leer

¿Qué es la deriva de las incrustaciones y cuándo es necesario reconstruir un índice de búsqueda privado?
Decodifica el desplazamiento del modelo, el preprocesamiento, el corpus y las consultas; distingue entre la monitorización y la incompatibilidad; y decide cuándo es necesario...

¿Qué es la compatibilidad del tokenizador y por qué puede hacer que el cambio de modelo falle?
Descifra la identidad del vocabulario, la semántica de los tokens especiales, las plantillas de chat, los tokens en caché, los adaptadores y las comprobaciones...

¿Qué es la permanencia del modelo y cuándo debe un servicio de IA local mantener las ponderaciones cargadas?
Descubre la permanencia de los pesos, los niveles de caché, los arranques en frío, la expulsión, la multiplexación, la presión de memoria y cuándo...

