mirror of
				https://github.com/KevinMidboe/immich.git
				synced 2025-10-29 17:40:28 +00:00 
			
		
		
		
	fix(ml): model downloading improvements (#3988)
* handle ort `NoSuchFile` error, stricter file check * keep exception order
This commit is contained in:
		| @@ -8,7 +8,7 @@ from typing import Any | ||||
| from zipfile import BadZipFile | ||||
|  | ||||
| import onnxruntime as ort | ||||
| from onnxruntime.capi.onnxruntime_pybind11_state import InvalidProtobuf  # type: ignore | ||||
| from onnxruntime.capi.onnxruntime_pybind11_state import InvalidProtobuf, NoSuchFile  # type: ignore | ||||
|  | ||||
| from ..config import get_cache_dir, log, settings | ||||
| from ..schemas import ModelType | ||||
| @@ -57,7 +57,7 @@ class InferenceModel(ABC): | ||||
|  | ||||
|         try: | ||||
|             loader(**model_kwargs) | ||||
|         except (OSError, InvalidProtobuf, BadZipFile): | ||||
|         except (OSError, InvalidProtobuf, BadZipFile, NoSuchFile): | ||||
|             log.warn( | ||||
|                 ( | ||||
|                     f"Failed to load {self.model_type.replace('_', ' ')} model '{self.model_name}'." | ||||
|   | ||||
| @@ -131,6 +131,10 @@ class CLIPEncoder(InferenceModel): | ||||
|             os.remove(file) | ||||
|         return True | ||||
|  | ||||
|     @property | ||||
|     def cached(self) -> bool: | ||||
|         return (self.cache_dir / "textual.onnx").is_file() and (self.cache_dir / "visual.onnx").is_file() | ||||
|  | ||||
|  | ||||
| # same as `_transform_blob` without `_blob2image` | ||||
| def _transform_pil_image(n_px: int) -> Compose: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user