¿Cómo afecta la compresión del índice vectorial a la recuperación de búsquedas y al uso de RAM?

Eva Wong es la Redactora técnica y manitas residente en ZimaSpace. Una geek de toda la vida con pasión por los homelabs y el software de código abierto, se especializa en traducir conceptos técnicos complejos en guías accesibles y prácticas. Eva cree que el autoalojamiento debe ser divertido, no intimidante. A través de sus tutoriales, empodera a la comunidad para desmitificar las configuraciones de hardware, desde construir su primer NAS hasta dominar los contenedores Docker.

La compresión del índice vectorial reduce la RAM al almacenar representaciones de menor precisión, pero la distorsión resultante de las distancias puede reducir la recuperación de vecinos más cercanos.

Un índice RAG doméstico puede caber cómodamente con cien mil fragmentos y quedar limitado por la memoria después de años de acumular documentos, fotos y transcripciones. La cuantización permite mantener más vectores residentes, pero la calidad de búsqueda depende de si las distancias comprimidas conservan el mismo orden de candidatos que las de precisión completa. El resultado cambia según la distribución de embeddings, la proporción de compresión, el tipo de índice, la amplitud de candidatos y si los vectores originales siguen disponibles para la reevaluación.

La compresión reduce la carga útil de los vectores, no todos los costes del índice

Un índice vectorial utiliza memoria para los valores de los embeddings, las estructuras de grafos o particiones, los identificadores, los metadatos, la sobrecarga del asignador y los búferes temporales de consulta. La compresión reduce principalmente la representación de los embeddings. Los enlaces HNSW y los metadatos pueden permanecer prácticamente iguales, por lo que el ahorro total de RAM puede ser menor de lo que sugiere la proporción de compresión de los vectores.

Los vectores de alta dimensionalidad son costosos porque cada dimensión almacenada como un valor de precisión completa contribuye al coste de memoria y de cálculo de distancias. Sustituir esos valores por códigos compactos reduce la carga útil residente y puede mejorar la eficiencia de la caché.

Por tanto, el ahorro práctico depende de la composición del índice. Los vectores float de alta dimensionalidad suelen ofrecer un objetivo de reducción considerable; los vectores pequeños con una conectividad de grafo elevada pueden ahorrar menos proporcionalmente. Mida la memoria residente del proceso y los archivos del índice antes y después de la compresión, en lugar de multiplicar los bytes de los vectores sin procesar por el número de documentos.

La cuantización introduce distorsión en las distancias

La cuantización escalar asigna cada dimensión a un rango numérico más pequeño, mientras que la cuantización de producto divide un vector en subespacios y almacena las opciones del libro de códigos. Ambos métodos sustituyen las coordenadas exactas por aproximaciones. Por ello, la distancia de consulta se calcula con valores reconstruidos o distancias del libro de códigos, en lugar del vector float original.

Los experimentos con la cuantización de producto evalúan la compresión midiendo la distorsión de las distancias reconstruidas y la recuperación. Los códigos más compactos pueden reducir la latencia o el uso de memoria, pero también dificultan ordenar correctamente los candidatos cercanos cuando sus distancias reales son similares.

La recuperación disminuye cuando un vecino relevante queda por debajo del límite de candidatos, no simplemente porque todas las distancias sean ligeramente incorrectas. Las consultas con una diferencia clara entre los fragmentos relevantes e irrelevantes pueden soportar una compresión intensa; los vecindarios semánticos densos con muchos empates aproximados son más sensibles.

La ampliación de candidatos y la reevaluación pueden recuperar la recuperación

Una búsqueda en dos etapas utiliza vectores comprimidos para encontrar una lista preliminar amplia y después vuelve a calcular las distancias con vectores de mayor precisión para esos candidatos. La sobremuestra ofrece a los elementos relevantes más oportunidades de superar la primera etapa aproximada; la reevaluación restaura el orden cuando los códigos compactos han difuminado pequeñas diferencias de distancia.

Los niveles de compresión más altos suelen reducir la recuperación, mientras que la sobremuestra y la reevaluación pueden mejorar la precisión. La recuperación consume lecturas, memoria y trabajo de consulta adicionales, por lo que la compresión desplaza los recursos en lugar de eliminar el coste de calidad.

Mantener los vectores completos en el disco puede conservar un uso reducido de RAM, pero añade latencia de almacenamiento durante la reordenación. Mantenerlos en la RAM mejora la latencia, pero reduce el beneficio de memoria. La configuración adecuada depende de si el servidor doméstico está limitado por la capacidad de memoria, las operaciones de E/S por segundo del almacenamiento o los objetivos de tiempo de respuesta.

La recuperación debe medirse en la tarea de recuperación local

Construya un conjunto de referencia ejecutando búsquedas exactas o de alta precisión para consultas representativas y, después, compare si la búsqueda comprimida devuelve los mismos vecinos relevantes dentro de los primeros k resultados. Incluya paráfrasis, nombres propios, documentos casi duplicados, términos poco frecuentes y consultas cuya respuesta dependa de una pequeña diferencia en la evidencia.

Esto complementa la confianza en la fundamentación de la recuperación: la similitud entre vecinos y el respaldo de la respuesta están relacionados, pero no son idénticos. Mida Recall@k respecto a la búsqueda de referencia y compruebe también si los fragmentos perdidos o reordenados cambian la evidencia disponible para el generador.

No existe un ganador universal entre la compresión máxima y la precisión máxima. Aumente la compresión hasta alcanzar el equilibrio deseado entre RAM, latencia y recuperación de la tarea, y vuelva a probar después de cambiar el modelo de embeddings o el corpus. Una configuración adecuada para una similitud fotográfica amplia puede resultar demasiado destructiva para la recuperación de documentos técnicos con muchos pasajes semánticamente adyacentes.

Centro de Tecnología e IA

Más para leer

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.