From e76d26914d712258246b3099273aa6ff5f5fccd0 Mon Sep 17 00:00:00 2001 From: laurenspriem Date: Tue, 2 Jul 2024 17:47:40 +0530 Subject: [PATCH] [mob][photos] Delete clip ggml --- .../semantic_search/frameworks/ggml.dart | 115 ------------------ 1 file changed, 115 deletions(-) delete mode 100644 mobile/lib/services/machine_learning/semantic_search/frameworks/ggml.dart diff --git a/mobile/lib/services/machine_learning/semantic_search/frameworks/ggml.dart b/mobile/lib/services/machine_learning/semantic_search/frameworks/ggml.dart deleted file mode 100644 index f83a2a6698..0000000000 --- a/mobile/lib/services/machine_learning/semantic_search/frameworks/ggml.dart +++ /dev/null @@ -1,115 +0,0 @@ -import "package:clip_ggml/clip_ggml.dart"; -import "package:computer/computer.dart"; -import "package:logging/logging.dart"; -import 'package:photos/services/machine_learning/semantic_search/frameworks/ml_framework.dart'; - -class GGML extends MLFramework { - static const kModelBucketEndpoint = "https://models.ente.io/"; - static const kImageModel = "clip-vit-base-patch32_ggml-vision-model-f16.gguf"; - static const kTextModel = "clip-vit-base-patch32_ggml-text-model-f16.gguf"; - - final _computer = Computer.shared(); - final _logger = Logger("GGML"); - - GGML(super.shouldDownloadOverMobileData); - - @override - String getImageModelRemotePath() { - return kModelBucketEndpoint + kImageModel; - } - - @override - String getTextModelRemotePath() { - return kModelBucketEndpoint + kTextModel; - } - - @override - Future loadImageModel(String path) async { - final startTime = DateTime.now(); - await _computer.compute( - loadModel, - param: { - "imageModelPath": path, - }, - ); - final endTime = DateTime.now(); - _logger.info( - "Loading image model took: ${(endTime.millisecondsSinceEpoch - startTime.millisecondsSinceEpoch).toString()}ms", - ); - } - - @override - Future loadTextModel(String path) async { - final startTime = DateTime.now(); - await _computer.compute( - loadModel, - param: { - "textModelPath": path, - }, - ); - final endTime = DateTime.now(); - _logger.info( - "Loading text model took: ${(endTime.millisecondsSinceEpoch - startTime.millisecondsSinceEpoch).toString()}ms", - ); - } - - @override - Future> getImageEmbedding(String imagePath) async { - try { - final startTime = DateTime.now(); - final result = await _computer.compute( - _createImageEmbedding, - param: { - "imagePath": imagePath, - }, - taskName: "createImageEmbedding", - ) as List; - final endTime = DateTime.now(); - _logger.info( - "createImageEmbedding took: ${(endTime.millisecondsSinceEpoch - startTime.millisecondsSinceEpoch)}ms", - ); - return result; - } catch (e, s) { - _logger.severe(e, s); - rethrow; - } - } - - @override - Future> getTextEmbedding(String text) async { - try { - final startTime = DateTime.now(); - final result = await _computer.compute( - _createTextEmbedding, - param: { - "text": text, - }, - taskName: "createTextEmbedding", - ) as List; - final endTime = DateTime.now(); - _logger.info( - "createTextEmbedding took: ${(endTime.millisecondsSinceEpoch - startTime.millisecondsSinceEpoch)}ms", - ); - return result; - } catch (e, s) { - _logger.severe(e, s); - rethrow; - } - } -} - -void loadModel(Map args) { - if (args["imageModelPath"] != null) { - CLIP.loadImageModel(args["imageModelPath"]); - } else if (args["textModelPath"] != null) { - CLIP.loadTextModel(args["textModelPath"]); - } -} - -List _createImageEmbedding(Map args) { - return CLIP.createImageEmbedding(args["imagePath"]); -} - -List _createTextEmbedding(Map args) { - return CLIP.createTextEmbedding(args["text"]); -}