Sobre el proyecto

smartscan-lib es una biblioteca Python que proporciona infraestructura central de ML y datos para aplicaciones de IA on-device. Según el README, impulsa SmartScan Server utilizado por la Desktop App. La biblioteca expone proveedores de embeddings cuantizados. Para imágenes: CLIP ViT-B-32, DINOv2 Small e Inception ResNet V2 para reconocimiento facial. Para texto: CLIP ViT-B-32, all-MiniLM-L6-v2 y all-distilroberta-v1. Un ModelManager da acceso a embedders de imagen y texto, compatibles con embedding individual y por lotes. Los indexadores se construyen sobre una abstracción BatchProcessor e incluyen ImageIndexer, VideoIndexer y DocIndexer. Aceptan URLs o rutas locales, usan el embedder configurado y pueden tomar un ProcessorListener opcional para retroalimentación de progreso y lotes. Los componentes adicionales incluyen IncrementalClusterer para agrupar embeddings por similitud con umbrales adaptativos, asignaciones existentes y grupos, y auto-fusión opcional; además de clasificación few-shot vía few_shot_classify o FewShotClassifier, que compara embeddings contra centroides de grupos pre-etiquetados con soporte por lotes. La instalación requiere Python 3.10+ y puede realizarse desde el repositorio Git con pip. El README se enfoca en ejemplos de uso de la biblioteca más que en detalles de implementación.