From 8f5e05fc7107330f4a5bda801485fe2f164cc519 Mon Sep 17 00:00:00 2001 From: Nicolas Mowen Date: Thu, 10 Oct 2024 13:09:31 -0600 Subject: [PATCH] Don't run download --- frigate/embeddings/functions/onnx.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/frigate/embeddings/functions/onnx.py b/frigate/embeddings/functions/onnx.py index 46d557a07..021e4af90 100644 --- a/frigate/embeddings/functions/onnx.py +++ b/frigate/embeddings/functions/onnx.py @@ -59,15 +59,19 @@ class GenericONNXEmbedding: self.feature_extractor = None self.session = None - print("starting model download") - self.downloader = ModelDownloader( + if not all(os.path.exists(os.path.join(self.download_path, n)) for n in self.download_urls.keys()): + print("starting model download") + self.downloader = ModelDownloader( model_name=self.model_name, download_path=self.download_path, file_names=list(self.download_urls.keys()) + ([self.tokenizer_file] if self.tokenizer_file else []), download_func=self._download_model, - ) - self.downloader.ensure_model_files() + ) + self.downloader.ensure_model_files() + else: + self.downloader = None + print("models are already downloaded") def _download_model(self, path: str): try: @@ -104,7 +108,8 @@ class GenericONNXEmbedding: def _load_model_and_tokenizer(self): if self.session is None: - self.downloader.wait_for_download() + if self.downloader: + self.downloader.wait_for_download() if self.model_type == "text": self.tokenizer = self._load_tokenizer() else: