{"record":{"id":"1bfd5ce0f06d81b2","repo":"blakeblackshear/frigate","slug":"model-file-not-found-at-self-model-path","errorCode":null,"errorMessage":"Model file not found at: {self.model_path}","messagePattern":"Model file not found at: (.+?)","errorType":"exception","errorClass":"FileNotFoundError","httpStatus":null,"severity":"error","filePath":"frigate/detectors/plugins/hailo8l.py","lineNumber":331,"sourceCode":"        if not self.model_path and not self.url:\n            if os.path.exists(cached_model_path):\n                logger.debug(f\"Model found in cache: {cached_model_path}\")\n                return cached_model_path\n            else:\n                logger.debug(f\"Downloading default model: {model_name}\")\n                if ARCH == \"hailo8\":\n                    self.download_model(H8_DEFAULT_URL, cached_model_path)\n                else:\n                    self.download_model(H8L_DEFAULT_URL, cached_model_path)\n        elif self.url:\n            logger.debug(f\"Downloading model from URL: {self.url}\")\n            self.download_model(self.url, cached_model_path)\n        elif self.model_path:\n            if os.path.exists(self.model_path):\n                logger.debug(f\"Using existing model at: {self.model_path}\")\n                return self.model_path\n            else:\n                raise FileNotFoundError(f\"Model file not found at: {self.model_path}\")\n        return cached_model_path\n\n    def detect_raw(self, tensor_input):\n        tensor_input = self.preprocess(tensor_input)\n\n        if isinstance(tensor_input, np.ndarray) and len(tensor_input.shape) == 3:\n            tensor_input = np.expand_dims(tensor_input, axis=0)\n\n        request_id = self.input_store.put(tensor_input)\n\n        try:\n            _, infer_results = self.response_store.get(request_id, timeout=1.0)\n        except TimeoutError:\n            logger.error(\n                f\"Timeout waiting for inference results for request {request_id}\"\n            )\n\n            if not self.inference_thread.is_alive():","sourceCodeStart":313,"sourceCodeEnd":349,"githubUrl":"https://github.com/blakeblackshear/frigate/blob/ca18b8dc131ccb3e086f13a780853b775ef13426/frigate/detectors/plugins/hailo8l.py#L313-L349","documentation":"The hailo8l detector was configured with a local model.path, but no file exists at that path inside the container. check_and_prepare raises FileNotFoundError during __init__, meaning the model was never downloaded (path config bypasses download) and the mount/volume is missing or wrong.","triggerScenarios":"Setting model.path for the hailo8l detector to a path that does not exist in the container (not mounted, typo, or file on host not inside container).","commonSituations":"Forgetting to mount the models volume into the Frigate container; absolute host path used instead of container path; filename typo; model on a USB drive not attached at boot.","solutions":["Verify with docker exec that the file exists at the exact configured path inside the container","Fix the volume mount so the host directory with the .hef is available at the configured path","Correct typos in path/filename; prefer copying the .hef into a mounted /config or /models dir"],"exampleFix":"# docker-compose\n# before\nvolumes:\n  - /mnt/models:/opt/frigate/models  # but config says /models/yolo.hef\n# after\nvolumes:\n  - /mnt/models:/models\n# config: path: /models/yolo.hef","handlingStrategy":"validation","validationCode":"import os\n\ndef model_file_ready(path: str) -> bool:\n    return bool(path) and os.path.isfile(path) and os.access(path, os.R_OK)","typeGuard":null,"tryCatchPattern":"try:\n    detector = HailoDetector(config)\nexcept FileNotFoundError as e:\n    if 'Model file not found' in str(e):\n        raise SystemExit(f'Mount the volume containing {config.model.path}') from None\n    raise","preventionTips":["Always docker-exec to confirm model paths exist inside the container","Mount a dedicated models volume and use container-relative paths","Add a startup preflight check for configured model files"],"tags":["hailo","file-not-found","model-path","docker-mount"],"backgroundTag":"model-file-missing","analyzedSha":"ca18b8dc131ccb3e086f13a780853b775ef13426","analyzedAt":"2026-08-27T11:28:05.618Z","schemaVersion":2},"datasetVersion":"2026-08-27T13:17:12.746Z"}