Búsqueda semántica en el navegador: un modelo de 4 MB sin servidor
Semantic/Hybrid Search in the Browser

El autor de este blog, que ya tenía búsqueda por palabras clave con Lunr.js, quería añadir búsqueda semántica a su sitio estático sin depender de un servidor ni de APIs. Descubrió que los modelos de sentence-transformers son demasiado pesados (23 MB) para una simple caja de búsqueda. La solución fue usar un modelo estático tipo lookup table (model2vec) que, cuantizado a int8, ocupa solo 4 MB y corre en el navegador. El artículo detalla cómo construir el índice, tokenizar en JavaScript y realizar la búsqueda con productos punto, además de revelar un bug en su búsqueda anterior que las evaluaciones sacaron a la luz.
La lista de stopwords del modelo está en las magnitudes de sus vectores: una palabra con un vector diminuto apenas mueve el resultado, y una con un vector grande lo domina.