Un investigador ha implementado en Rust 'TurboQuant', un algoritmo de Google Research para la búsqueda vectorial, ofreciendo una alternativa más rápida y eficiente a métodos como FAISS. La implementación, disponible en GitHub, incluye bindings para Python a través de PyO3, facilitando su uso. TurboQuant comprime vectores de alta dimensión (hasta 1536 coordenadas) a 2-4 bits por coordenada, minimizando la distorsión y eliminando la necesidad de un proceso de entrenamiento previo, lo que acelera la creación de índices en un factor de 3 a 4. Las pruebas realizadas en Apple M3 Max muestran que TurboQuant iguala o supera a FAISS en velocidad, especialmente en arquitecturas ARM, y ofrece una mayor precisión (recall@1). La técnica de compresión, que reduce el tamaño de los vectores hasta 16 veces en comparación con FP32, se basa en una rotación aleatoria seguida de una cuantización escalar Lloyd-Max, permitiendo una adición de vectores online sin necesidad de reconstruir el índice. El proyecto consta de dos partes: una biblioteca Rust pura ('turbovec') y un wrapper de Python ('turbovec-python').
