{"log":"\u001b[2;36m[11/09/26 06:08:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Starting gunicorn \u001b[1;36m25.3\u001b[0m.\u001b[1;36m0\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:08:52.078464444Z"} {"log":"\u001b[2;36m[11/09/26 06:08:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Listening at: \u001b[4;94mhttp://\u001b[0m\u001b[1m[\u001b[0m::\u001b[1m]\u001b[0m:\u001b[1;36m3003\u001b[0m \u001b[1m(\u001b[0m\u001b[1;36m11\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:08:52.082809215Z"} {"log":"\u001b[2;36m[11/09/26 06:08:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Using worker: immich_ml.config.CustomUvicornWorker \n","stream":"stdout","time":"2026-11-09T06:08:52.085682144Z"} {"log":"\u001b[2;36m[11/09/26 06:08:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m15\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:08:52.114986693Z"} {"log":"\u001b[2;36m[11/09/26 06:08:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m15\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:08:54.509889804Z"} {"log":"\u001b[2;36m[11/09/26 06:08:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-09T06:08:54.513551887Z"} {"log":"\u001b[2;36m[11/09/26 06:08:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-09T06:08:54.518601427Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-09T06:08:54.518684155Z"} {"log":"\u001b[2;36m[11/09/26 06:08:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-09T06:08:54.523367879Z"} {"log":"\u001b[2;36m[11/09/26 06:08:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-09T06:08:54.527369722Z"} {"log":"\u001b[2;36m[11/09/26 06:33:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:33:50.091171293Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/clip/ViT-B-32__openai/\u001b[0m\u001b[95mvisual.\u001b[0m This may take \n","stream":"stdout","time":"2026-11-09T06:33:50.091262782Z"} {"log":"\u001b[2;36m \u001b[0m a while. \n","stream":"stdout","time":"2026-11-09T06:33:50.091280081Z"} {"log":"\u001b[2;36m[11/09/26 06:33:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'buffalo_l'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:33:50.198415564Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/facial-recognition/buffalo_l/\u001b[0m\u001b[95mdetection.\u001b[0m This\n","stream":"stdout","time":"2026-11-09T06:33:50.198542826Z"} {"log":"\u001b[2;36m \u001b[0m may take a while. \n","stream":"stdout","time":"2026-11-09T06:33:50.198561511Z"} {"log":"\rFetching 11 files: 0%| | 0/11 [00:00\u003c?, ?it/s]\n","stream":"stderr","time":"2026-11-09T06:33:51.314894186Z"} {"log":"\rFetching 4 files: 0%| | 0/4 [00:00\u003c?, ?it/s]\u001b[AWarning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.\n","stream":"stderr","time":"2026-11-09T06:33:51.569741825Z"} {"log":"\u001b[2;36m[11/09/26 06:33:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Warning: You are sending unauthenticated requests \n","stream":"stdout","time":"2026-11-09T06:33:51.584682884Z"} {"log":"\u001b[2;36m \u001b[0m to the HF Hub. Please set a HF_TOKEN to enable \n","stream":"stdout","time":"2026-11-09T06:33:51.584798412Z"} {"log":"\u001b[2;36m \u001b[0m higher rate limits and faster downloads. \n","stream":"stdout","time":"2026-11-09T06:33:51.584810079Z"} {"log":"\rFetching 11 files: 9%|▉ | 1/11 [00:00\u003c00:08, 1.23it/s]\rFetching 11 files: 36%|███▋ | 4/11 [00:00\u003c00:01, 5.10it/s]\n","stream":"stderr","time":"2026-11-09T06:33:52.300121219Z"} {"log":"\u001b[2;36m[11/09/26 06:33:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:33:52.424829368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:33:52.424892966Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T06:33:52.42490475Z"} {"log":"\u001b[2;36m[11/09/26 06:33:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T06:33:52.465751957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:33:52.465849273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:33:52.46586247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:33:52.465902017Z"} {"log":"\u001b[2;36m[11/09/26 06:33:53]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T06:33:53.620983696Z"} {"log":"\rFetching 4 files: 25%|██▌ | 1/4 [00:00\u003c00:02, 1.02it/s]\u001b[A\rFetching 11 files: 64%|██████▎ | 7/11 [00:01\u003c00:00, 6.47it/s]\rFetching 11 files: 82%|████████▏ | 9/11 [00:01\u003c00:00, 7.31it/s]\rFetching 11 files: 82%|████████▏ | 9/11 [00:12\u003c00:00, 7.31it/s]\n","stream":"stderr","time":"2026-11-09T06:34:21.023450074Z"} {"log":"\u001b[2;36m[11/09/26 06:34:26]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T06:34:26.731816886Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:26.731924885Z"} {"log":"\u001b[2;36m[11/09/26 06:34:26]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T06:34:26.739062052Z"} {"log":"\u001b[2;36m[11/09/26 06:34:26]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:34:26.745524947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:34:26.745609583Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:34:26.745663297Z"} {"log":"\u001b[2;36m[11/09/26 06:34:26]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T06:34:26.753466378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T06:34:26.753586906Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:26.753638414Z"} {"log":"\rFetching 4 files: 75%|███████▌ | 3/4 [00:29\u003c00:10, 10.89s/it]\u001b[A\u001b[0;93m2026-11-09 06:34:32.039757317 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T06:34:32.04003982Z"} {"log":"\n","stream":"stderr","time":"2026-11-09T06:34:36.406914466Z"} {"log":"\rFetching 4 files: 100%|██████████| 4/4 [00:45\u003c00:00, 12.45s/it]\u001b[A\rFetching 4 files: 100%|██████████| 4/4 [00:45\u003c00:00, 11.27s/it]\n","stream":"stderr","time":"2026-11-09T06:34:36.411042625Z"} {"log":"\u001b[2;36m[11/09/26 06:34:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T06:34:36.417649076Z"} {"log":"\u001b[2;36m[11/09/26 06:34:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:34:36.425181778Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:34:36.42527583Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:34:36.425302145Z"} {"log":"\u001b[2;36m[11/09/26 06:34:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T06:34:36.433769651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/facial-recognition/buffalo_l/detection/\u001b[0m\u001b[95mmodel\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:34:36.433861102Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[95m.onnx\u001b[0m for CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m, \n","stream":"stdout","time":"2026-11-09T06:34:36.433895917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'height'\u001b[0m: \u001b[1;36m640\u001b[0m, \u001b[32m'width'\u001b[0m: \u001b[1;36m640\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:36.433921308Z"} {"log":"\u001b[0;93m2026-11-09 06:34:42.449563055 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T06:34:42.449868558Z"} {"log":"\u001b[2;36m[11/09/26 06:34:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:34:46.106894285Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:46.106992558Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T06:34:46.107058183Z"} {"log":"\u001b[2;36m[11/09/26 06:34:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T06:34:46.111856601Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:34:46.111925238Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:34:46.111937108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:46.111948698Z"} {"log":"\u001b[2;36m[11/09/26 06:34:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m15.\u001b[0m86MB \n","stream":"stdout","time":"2026-11-09T06:34:47.200664974Z"} {"log":"\u001b[2;36m[11/09/26 06:34:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T06:34:47.691082326Z"} {"log":"\u001b[2;36m[11/09/26 06:34:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:34:47.694351621Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:34:47.694493229Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:34:47.694506933Z"} {"log":"\u001b[2;36m[11/09/26 06:34:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T06:34:47.698589367Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/facial-recognition/buffalo_l/recognition/\u001b[0m\u001b[95mmod\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:34:47.698662354Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[95mel.onnx\u001b[0m for CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:47.698675761Z"} {"log":"\rFetching 11 files: 91%|█████████ | 10/11 [00:56\u003c00:10, 10.84s/it]\rFetching 11 files: 100%|██████████| 11/11 [01:00\u003c00:00, 9.41s/it]\rFetching 11 files: 100%|██████████| 11/11 [01:00\u003c00:00, 5.54s/it]\n","stream":"stderr","time":"2026-11-09T06:34:52.250726302Z"} {"log":"\u001b[2;36m[11/09/26 06:34:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T06:34:52.255413653Z"} {"log":"\u001b[2;36m[11/09/26 06:34:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:34:52.260964638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:34:52.261041923Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:34:52.261058272Z"} {"log":"\u001b[2;36m[11/09/26 06:34:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T06:34:52.266580639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/clip/ViT-B-32__openai/visual/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for \n","stream":"stdout","time":"2026-11-09T06:34:52.266704902Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:34:52.26672014Z"} {"log":"\u001b[0;93m2026-11-09 06:34:55.679770780 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T06:34:55.682679882Z"} {"log":"\u001b[0;93m2026-11-09 06:35:03.454058920 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T06:35:03.455295192Z"} {"log":"\u001b[2;36m[11/09/26 06:39:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T06:39:06.387740002Z"} {"log":"\u001b[2;36m[11/09/26 06:39:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:39:06.408763861Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:39:06.408866304Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:39:06.408885576Z"} {"log":"\u001b[2;36m[11/09/26 06:39:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m.\n","stream":"stdout","time":"2026-11-09T06:39:12.256330285Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T06:39:12.256387641Z"} {"log":"\u001b[2;36m[11/09/26 06:39:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T06:39:12.272710146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T06:39:12.272783353Z"} {"log":"\u001b[2;36m[11/09/26 06:39:15]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:39:15.075300511Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:39:15.075357566Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T06:39:15.075374915Z"} {"log":"\u001b[2;36m[11/09/26 06:39:15]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T06:39:15.127939357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:39:15.128010347Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:39:15.12802875Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:39:15.128087184Z"} {"log":"\u001b[2;36m[11/09/26 06:39:15]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:39:15.430418884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:39:15.430483511Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T06:39:15.430498364Z"} {"log":"\u001b[2;36m[11/09/26 06:39:15]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T06:39:15.460760242Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:39:15.460864466Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T06:39:15.460888272Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:39:15.4609016Z"} {"log":"\u001b[2;36m[11/09/26 06:39:16]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m15.\u001b[0m86MB \n","stream":"stdout","time":"2026-11-09T06:39:16.825880746Z"} {"log":"\u001b[2;36m[11/09/26 06:39:20]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m15.\u001b[0m86MB \n","stream":"stdout","time":"2026-11-09T06:39:20.835778665Z"} {"log":"\u001b[2;36m[11/09/26 06:40:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T06:40:29.323241764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:40:29.323401841Z"} {"log":"\u001b[2;36m[11/09/26 06:40:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T06:40:29.344531552Z"} {"log":"\u001b[2;36m \u001b[0m memory \n","stream":"stdout","time":"2026-11-09T06:40:29.34460398Z"} {"log":"\u001b[2;36m[11/09/26 06:40:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:40:29.358045067Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:40:29.358189974Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:40:29.358208983Z"} {"log":"\u001b[2;36m[11/09/26 06:40:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T06:40:29.387282113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:40:29.387347339Z"} {"log":"\u001b[2;36m \u001b[0m for CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:40:29.387363652Z"} {"log":"\u001b[0;93m2026-11-09 06:40:47.812108914 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T06:40:47.81277184Z"} {"log":"\u001b[2;36m[11/09/26 06:51:23]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T06:51:23.522669001Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:51:23.522855979Z"} {"log":"\u001b[2;36m[11/09/26 06:51:23]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load recognition model \n","stream":"stdout","time":"2026-11-09T06:51:23.529864846Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T06:51:23.529968046Z"} {"log":"\u001b[2;36m[11/09/26 06:51:23]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T06:51:23.537043301Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T06:51:23.537187644Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T06:51:23.537211893Z"} {"log":"\u001b[2;36m[11/09/26 06:58:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down due to inactivity. \n","stream":"stdout","time":"2026-11-09T06:58:04.784061187Z"} {"log":"\u001b[2;36m[11/09/26 06:58:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down \n","stream":"stdout","time":"2026-11-09T06:58:04.837560435Z"} {"log":"\u001b[2;36m[11/09/26 06:58:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application shutdown. \n","stream":"stdout","time":"2026-11-09T06:58:04.943578165Z"} {"log":"\u001b[2;36m[11/09/26 06:58:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application shutdown complete. \n","stream":"stdout","time":"2026-11-09T06:58:05.059046789Z"} {"log":"\u001b[2;36m[11/09/26 06:58:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Finished server process \u001b[1m[\u001b[0m\u001b[1;36m15\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:58:05.06160689Z"} {"log":"\u001b[2;36m[11/09/26 06:58:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Worker \u001b[1m(\u001b[0mpi\u001b[1;92md:15\u001b[0m\u001b[1m)\u001b[0m was sent SIGINT! \n","stream":"stdout","time":"2026-11-09T06:58:05.087528708Z"} {"log":"\u001b[2;36m[11/09/26 06:58:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m764\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:58:05.104186688Z"} {"log":"\u001b[2;36m[11/09/26 06:58:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m764\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T06:58:07.091135273Z"} {"log":"\u001b[2;36m[11/09/26 06:58:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-09T06:58:07.09333921Z"} {"log":"\u001b[2;36m[11/09/26 06:58:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-09T06:58:07.096749075Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-09T06:58:07.096797473Z"} {"log":"\u001b[2;36m[11/09/26 06:58:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-09T06:58:07.099919968Z"} {"log":"\u001b[2;36m[11/09/26 06:58:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-09T06:58:07.102470134Z"} {"log":"\u001b[2;36m[11/09/26 07:20:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:20:52.774462677Z"} {"log":"\u001b[2;36m[11/09/26 07:20:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:20:52.783860977Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:20:52.783934038Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:20:52.783949595Z"} {"log":"\u001b[2;36m[11/09/26 07:20:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:20:52.829799724Z"} {"log":"\u001b[2;36m[11/09/26 07:20:53]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:20:53.890783452Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:20:53.890849824Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:20:53.890865703Z"} {"log":"\u001b[2;36m[11/09/26 07:20:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:20:57.032741647Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:20:57.032828502Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:20:57.032847577Z"} {"log":"\u001b[2;36m[11/09/26 07:20:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:20:57.048777421Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:20:57.048914751Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:20:57.048933419Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:20:57.048950475Z"} {"log":"\u001b[2;36m[11/09/26 07:20:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:20:58.244891392Z"} {"log":"\u001b[2;36m[11/09/26 07:20:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:20:59.718915096Z"} {"log":"\u001b[2;36m[11/09/26 07:20:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:20:59.742830828Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:20:59.742898486Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:20:59.742911402Z"} {"log":"\u001b[2;36m[11/09/26 07:25:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:25:54.373237948Z"} {"log":"\u001b[2;36m[11/09/26 07:25:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:25:54.3759279Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:25:54.375964867Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:25:54.375978053Z"} {"log":"\u001b[2;36m[11/09/26 07:25:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:25:54.379455529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:25:54.379506721Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:25:54.379519911Z"} {"log":"\u001b[2;36m[11/09/26 07:25:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:25:59.276399827Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:25:59.276471567Z"} {"log":"\u001b[2;36m[11/09/26 07:25:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:25:59.27956422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:25:59.279636937Z"} {"log":"\u001b[2;36m[11/09/26 07:25:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:25:59.296699946Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:25:59.296796213Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:25:59.296812572Z"} {"log":"\u001b[2;36m[11/09/26 07:25:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:25:59.300693158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:25:59.300805233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:25:59.300819313Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:25:59.300830722Z"} {"log":"\u001b[2;36m[11/09/26 07:26:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:26:00.301052106Z"} {"log":"\u001b[2;36m[11/09/26 07:27:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:27:34.16573655Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:27:34.16585581Z"} {"log":"\u001b[2;36m[11/09/26 07:27:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:27:34.172415374Z"} {"log":"\u001b[2;36m[11/09/26 07:27:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:27:34.179131517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:27:34.179212508Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:27:34.17924601Z"} {"log":"\u001b[2;36m[11/09/26 07:27:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:27:34.18675505Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:27:34.186825217Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:27:34.186859551Z"} {"log":"\u001b[2;36m[11/09/26 07:27:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:27:39.360476762Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:27:39.36054906Z"} {"log":"\u001b[2;36m[11/09/26 07:27:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:27:39.363050096Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:27:39.36308264Z"} {"log":"\u001b[2;36m[11/09/26 07:27:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:27:39.369997763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:27:39.370059181Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:27:39.370072905Z"} {"log":"\u001b[2;36m[11/09/26 07:27:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:27:39.376335833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:27:39.37640502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:27:39.376427376Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:27:39.376450543Z"} {"log":"\u001b[2;36m[11/09/26 07:27:40]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:27:40.362674396Z"} {"log":"\u001b[2;36m[11/09/26 07:30:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:30:55.19750825Z"} {"log":"\u001b[2;36m[11/09/26 07:30:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:30:55.203112988Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:30:55.203144446Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:30:55.203158424Z"} {"log":"\u001b[2;36m[11/09/26 07:30:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:30:55.210028651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:30:55.210081301Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:30:55.210105173Z"} {"log":"\u001b[2;36m[11/09/26 07:31:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:31:00.017067845Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:31:00.017142313Z"} {"log":"\u001b[2;36m[11/09/26 07:31:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:31:00.020795597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:31:00.020856961Z"} {"log":"\u001b[2;36m[11/09/26 07:31:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:31:00.027847753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:31:00.027916055Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:31:00.027931786Z"} {"log":"\u001b[2;36m[11/09/26 07:31:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:31:00.033101271Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:31:00.033216038Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:31:00.033233255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:31:00.033247745Z"} {"log":"\u001b[2;36m[11/09/26 07:31:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:31:01.663364157Z"} {"log":"\u001b[2;36m[11/09/26 07:31:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:31:59.189584715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:31:59.189746158Z"} {"log":"\u001b[2;36m[11/09/26 07:31:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T07:31:59.196825388Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:31:59.19690797Z"} {"log":"\u001b[2;36m[11/09/26 07:31:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:31:59.203268637Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:31:59.203325288Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:31:59.203357138Z"} {"log":"\u001b[2;36m[11/09/26 07:31:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:31:59.21073931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:31:59.21080921Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:31:59.21084228Z"} {"log":"\u001b[2;36m[11/09/26 07:32:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:32:06.25326804Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.2533432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253356712Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25337232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253418552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253430802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253442037Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253452505Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253463413Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253474509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253485444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253496843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253508094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253518498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253531186Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253541912Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253551991Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253562054Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253572286Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253581984Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253602874Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253645276Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25365582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253666794Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.2536763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253685847Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253695605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253704923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253714574Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253724081Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253735605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253746652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253756687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253766697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253777862Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253797544Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253808859Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253818462Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253828129Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253837076Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253846956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253857991Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253868152Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25388146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253892731Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253903201Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253913353Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25392313Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253933849Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253959374Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253972643Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253982615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.253994196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254005138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254016465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254027868Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254039828Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254052083Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254063489Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254073719Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254084519Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25409485Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254105484Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.2541165Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254137322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254151485Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254164097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25417499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254186908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254198973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25421034Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254223324Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254235238Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254246502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25425749Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254269659Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254281536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254294141Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254306441Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254328329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25434162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25435509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254367326Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254378679Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254390084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254401961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254414329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254426125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254438433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254450508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254462177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254474188Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254486247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254498387Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254511326Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254533961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254546676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254557456Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254568205Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25457889Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254589911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254605245Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25465447Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254667049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254678432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25468946Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254699635Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254710827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254721249Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254731689Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254742288Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254764566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254779617Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254791508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254804507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254818813Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254830891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254842858Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25485422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254866503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254877527Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:32:06.254888547Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254899168Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254909751Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254920659Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.254931385Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254942327Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254954438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254976349Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.254989057Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255000858Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255014133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255026277Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255038609Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255050634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255061784Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255073295Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255084337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255096041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255106265Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255118348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255130482Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255142122Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255164954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255178003Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255188272Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255201361Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255213261Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255223589Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255234482Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255244663Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255254957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25526547Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255276866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255288844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255300154Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255311458Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255322331Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255343437Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25535562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25536603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25537808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255390241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255401278Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255412084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25542466Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255437612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255449652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255461743Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25547439Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255486596Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255497Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255507889Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255519551Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255542998Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255556086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255569117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255580985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255592501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255603418Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255651919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255665949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255677614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255688069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25569911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255710332Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255721249Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25573235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255744746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255756513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255778963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255792369Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25580527Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25581652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255826898Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255838942Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255849998Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255860434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25588002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255892454Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255904488Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255916214Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255928393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255939442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255950563Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25596245Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255984899Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.255998627Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256009071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256019273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256029759Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256039962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256059973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256073941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256085222Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256096378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256108785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256120031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256131235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256141587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25615255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256177017Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256189567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256201281Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256212443Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256224612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256236166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256247667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256258892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256269561Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256281328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256291598Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256302241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256312591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256325793Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256345828Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256358217Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256369554Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256380231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256392112Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25640329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256413582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256424203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256434366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.2564446Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256455491Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256466699Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256477684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256490518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256501748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256523417Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25653582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256546432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256556792Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256568643Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256578996Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256589492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256600759Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256628259Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256650823Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256663601Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256674252Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256685239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256698147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256710254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256732287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256743808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256754366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256764652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256774994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256786274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256797392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25680842Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256819348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256830588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256841239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256852694Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256863125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256875373Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256886299Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256896929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256908084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256929237Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.25694168Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256952754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256964052Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256975614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256986704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.256997296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257008308Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257018867Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257029262Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257040038Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257052716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257064908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257076032Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257088213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257109884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257124552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257136753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:32:06.257148549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.257160472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:32:06.257171315Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:32:06.257182233Z"} {"log":"\u001b[2;36m[11/09/26 07:34:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:34:07.767807391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:07.76792516Z"} {"log":"\u001b[2;36m[11/09/26 07:34:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T07:34:07.775312478Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:34:07.775402679Z"} {"log":"\u001b[2;36m[11/09/26 07:34:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:34:07.782208539Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:34:07.782270166Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:34:07.782304149Z"} {"log":"\u001b[2;36m[11/09/26 07:34:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:34:07.789689693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:34:07.789756445Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:07.789789154Z"} {"log":"\u001b[2;36m[11/09/26 07:34:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:34:14.715981723Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.716095469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716106912Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716121547Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716131791Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716141025Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716150844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716160612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71617018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716179921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716190002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7161999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716210027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71621954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716231442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716241339Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716250813Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716269191Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716280503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716290509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716300556Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716309868Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716319222Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716329064Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716338162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716346798Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716356044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716365162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716374632Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716383786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716394917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716405754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716424131Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716435058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716444954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716454866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716463966Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716473094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716482529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716492182Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716501866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716512201Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716521993Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716534444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716545285Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716555263Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716573618Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716588213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716598031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716606713Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716648365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716658908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716668504Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716677498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716687368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716696947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716707202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71671708Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716726456Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716743786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716762026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7167713Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716781534Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716791423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716801083Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716811324Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716820872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716830676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716840434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716850013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71686018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716870027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716879101Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716888259Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716898003Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716916957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716928411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716938212Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716946891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716956181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716975135Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716985235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.716994648Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717003931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717013557Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71702424Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71703378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717043615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717053573Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717063164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717072999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71709222Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717103752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717114956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717124743Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71713494Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717144604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717154535Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717164662Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717175028Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717188433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717199401Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717210027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71722075Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717231123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717240785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717260013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717271071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717280386Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71728989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717299218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717309314Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717319181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71732994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717341671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7173518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717361579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717370937Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717380878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717406255Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:34:14.71742622Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717445619Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717464666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717502452Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.717526527Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717547406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717572536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717595219Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71764485Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717687938Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717699414Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717710972Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717721849Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717732367Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717742435Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717752508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717762308Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717772473Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71778234Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717803298Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717815308Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717825755Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717835943Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7178457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717855097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717865823Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717876224Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717885582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717895187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717904394Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717913699Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717923237Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717933764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717944454Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717963791Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717975142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717985021Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.717994891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718004209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71801355Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71802385Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71803379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718043345Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718052836Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718063091Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71807409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718084057Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718093844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718117833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718139947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718178593Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71820414Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718227127Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718249619Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718271458Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718295827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718318259Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718340741Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718363999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71838716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71841076Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718433402Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718455612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718477825Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718499221Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718521264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718561932Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718588804Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718635834Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718669198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718696137Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718720342Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718741078Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718761802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718783804Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718804158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718825353Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718845704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718867688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7188899Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71891157Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718954254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.718979816Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719001941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719025622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719049316Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719073128Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719094851Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719117168Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719139478Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719160986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719184876Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719210181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719234044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719257386Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719282571Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71930668Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719349501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719373579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719395936Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719420907Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719445202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719469982Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719493825Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719519381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719544177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719568084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719591818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7196337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719668172Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719697939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719715952Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719726132Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719736544Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719745703Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719755177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719764688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7197735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719783052Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719792519Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719801049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719809876Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71981827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719826989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719835969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719845245Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719862461Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719874522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719884745Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719947438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719959446Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719972915Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.719982435Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.71999188Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720000929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720010031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720019875Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.72002967Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720040066Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720050739Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720060072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720078667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720090575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720101056Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720119062Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720140798Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720167396Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720192935Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720215005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.72023943Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.72026282Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720285831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720309303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720336149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720359827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720384066Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720405712Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720448612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720473738Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720494139Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720515123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720536629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720558883Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720580755Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.7206026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720658921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720684501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.72070502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720726463Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720746438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720766316Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720787579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720810933Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720853536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720878762Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720904002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720928499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.72095119Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720974149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:34:14.720996184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.721019263Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:34:14.721040241Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:34:14.721061333Z"} {"log":"\u001b[2;36m[11/09/26 07:35:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:35:55.96412279Z"} {"log":"\u001b[2;36m[11/09/26 07:35:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:35:55.966791296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:35:55.966821235Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:35:55.966835403Z"} {"log":"\u001b[2;36m[11/09/26 07:35:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:35:55.969945437Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:35:55.969983579Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:35:55.969997638Z"} {"log":"\u001b[2;36m[11/09/26 07:36:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:36:00.817778674Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:36:00.817847959Z"} {"log":"\u001b[2;36m[11/09/26 07:36:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:36:00.822023734Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:36:00.822089264Z"} {"log":"\u001b[2;36m[11/09/26 07:36:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:36:00.832563136Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:36:00.832669149Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:36:00.832704934Z"} {"log":"\u001b[2;36m[11/09/26 07:36:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:36:00.83958885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:36:00.839683452Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:36:00.839709722Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:36:00.839732624Z"} {"log":"\u001b[2;36m[11/09/26 07:36:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:36:01.836806974Z"} {"log":"\u001b[2;36m[11/09/26 07:39:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:39:11.49766536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:11.497781006Z"} {"log":"\u001b[2;36m[11/09/26 07:39:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T07:39:11.50474684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:39:11.504832825Z"} {"log":"\u001b[2;36m[11/09/26 07:39:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:39:11.511188355Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:39:11.511246623Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:39:11.51128027Z"} {"log":"\u001b[2;36m[11/09/26 07:39:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:39:11.518642907Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:39:11.518759916Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:11.518786846Z"} {"log":"\u001b[2;36m[11/09/26 07:39:16]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:39:18.458373659Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.458449885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458461537Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458473289Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458483896Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458494398Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458505287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458516183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458527041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458538064Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458548843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458560245Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45857147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458641139Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458661872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458674242Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458684759Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458696176Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458707266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45871806Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458729607Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458739012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458749546Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458760839Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458770171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45878075Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458791196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458801456Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458811945Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458822426Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458845246Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458858468Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458869275Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458880156Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458891925Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458903604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458914735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45892515Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458935696Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458944944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458955629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458967383Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.458978459Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459000639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459013809Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459025189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459036337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459047449Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459059148Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459069639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459080292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459090738Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45910203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459112754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459124035Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459135419Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45914757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45915986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459180493Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459191813Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459202109Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459212294Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459222331Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459233232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459243268Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459254049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459265519Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459276327Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459287229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459298333Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459308888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459320603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459331412Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459341515Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459360712Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459372852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459383963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459395522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459407053Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459422716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459433422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459444681Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45945575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459465957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459476198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459486989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459498217Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459508761Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459520132Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459540095Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459551831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459563069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459574241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459584976Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459596209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459606321Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459641081Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459651422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459661475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459671704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45968264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45969669Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459708166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459719442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459741286Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459753519Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459764328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459773893Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459782843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459791994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459801338Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45981062Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459821103Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459832553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459843359Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459856575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459866919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.45987707Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459887523Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.459898653Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.459917704Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:39:18.459928954Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.459938403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.45994799Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.459957816Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.459967447Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459977503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459988526Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.459998922Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460008978Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460019536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460031998Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460044118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460055381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460066144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460076365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460086717Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460105758Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460117407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460127546Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460138444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460148615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460158934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460169065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460179955Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460190413Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460202287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460213986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460224329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460235142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460245831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46025598Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460266473Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460286667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460299052Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460309877Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460321177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460332139Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460343102Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460353137Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460363687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460374943Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460386004Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460396274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46040645Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460417722Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460429411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.4604407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460465628Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460477943Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460488054Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460498438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460509189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460519685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46052998Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460540198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460552001Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460563013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460573455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.4605844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460605943Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460665279Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460676764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460687291Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460706831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460717949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460728805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460739598Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460751081Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460762365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460772992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460784698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460796591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460807147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460817711Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460829048Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460839294Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460849808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46085995Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460871025Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460891158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460902021Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460913202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46092359Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460933923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460944994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460956522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460967447Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460977955Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460988312Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.460998883Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461009151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461020457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461037589Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461050077Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461070748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461085494Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461096756Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461107785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46111814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461129049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461142118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461152811Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461164519Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461175572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46118767Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461199337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461210568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461221874Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461242545Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461255124Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46126539Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46127584Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461286181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461298298Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461309579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46132071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461332018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461343163Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461354733Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461365935Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461376209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461386746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461397085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461416488Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461428301Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461439411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461450239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461462963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461474469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461485324Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461496585Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46150701Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461517377Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461528068Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461538239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461548406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461559569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461570706Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461591432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461604002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461635646Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461647928Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461660435Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461672173Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461682489Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461692884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461703637Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461714031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461724247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461735196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461746218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461756915Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461768125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461778879Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461808138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461821949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461833241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461846273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461856925Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.4618683Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461879676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461891644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461904833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461916703Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46192909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461941626Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461952409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461963753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461974507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.461985891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462007379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462020737Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462034717Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462047934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462058958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.46207093Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462082766Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462094733Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462106744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:39:18.462117104Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.462129447Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:39:18.462140822Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:39:18.462151457Z"} {"log":"\u001b[2;36m[11/09/26 07:40:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:40:56.778454519Z"} {"log":"\u001b[2;36m[11/09/26 07:40:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:40:56.781165482Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:40:56.781196541Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:40:56.781244499Z"} {"log":"\u001b[2;36m[11/09/26 07:40:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:40:56.784645183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:40:56.784691037Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:40:56.784700691Z"} {"log":"\u001b[2;36m[11/09/26 07:41:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:41:01.6114157Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:41:01.61148301Z"} {"log":"\u001b[2;36m[11/09/26 07:41:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:41:01.614695252Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:41:01.614729185Z"} {"log":"\u001b[2;36m[11/09/26 07:41:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:41:01.621160964Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:41:01.621217519Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:41:01.62122807Z"} {"log":"\u001b[2;36m[11/09/26 07:41:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:41:01.625512474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:41:01.625565835Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:41:01.625584069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:41:01.625600415Z"} {"log":"\u001b[2;36m[11/09/26 07:41:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:41:03.304835098Z"} {"log":"\u001b[2;36m[11/09/26 07:42:20]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:42:22.905745799Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.905836171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905852929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905908061Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905921763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905933229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905945262Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905956703Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905968572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905980539Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.905992038Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906004405Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90601694Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906027666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906042184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906053226Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906064439Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906076391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906088409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90611131Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906124977Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906135452Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90614681Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906158816Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906169861Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906181281Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906193204Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906204346Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906215592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906226702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906239981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90625341Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906264181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90627623Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906299048Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906312287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906324118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906335073Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906346381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906357416Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90636906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906381772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906393453Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906407992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906420999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906433056Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906445065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906456606Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906478692Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906490909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906502356Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906513279Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906525642Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906537427Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906549588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906561731Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906574561Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906587483Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906599894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906624256Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906644112Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906656085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906667238Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906689777Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90670281Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906714525Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906726715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906738255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906749812Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906761486Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906772498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906785164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906796989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906807708Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906818587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90683026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906842003Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906854502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906877057Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906889338Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906900757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906912818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906924775Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90693603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906946901Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906958227Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906970142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906981436Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.906993102Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907004845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90701677Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907028565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907040597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907064885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907108915Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907131596Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907154009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907175615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907197455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907219572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907242364Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907269671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907293873Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907317322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907340732Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907363881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907385471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907407871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907429179Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907450902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907493275Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907517576Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907541457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907565169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907590664Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907645981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907682612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907707544Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907729652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907752918Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907774473Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:42:22.907796408Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907817119Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907838044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907859251Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.907880529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90790131Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907946553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90797121Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.907993205Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90801581Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908041151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908066957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908090709Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908113624Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90813543Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908157529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908179521Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908201753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908223183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908246032Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908269944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908313698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908339927Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908363809Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908386149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90841135Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908436004Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908458578Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908481439Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908503073Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908525298Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908548356Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908572202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908597229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908656479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908686991Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908709662Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90872264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908732645Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908743756Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908755669Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908767303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908778073Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908788891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908800936Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.9088144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908826228Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908845732Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908856556Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908867172Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908877016Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908887276Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908906303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90892136Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908931829Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908943535Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908954167Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908964472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908977518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.908988603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90899973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909010266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909020293Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909030249Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90903996Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909050167Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909060176Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909071254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909091343Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909102711Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909113983Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909125364Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909135384Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909145567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909156495Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90916638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90917672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909188673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909199583Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909210438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909221085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909232059Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909242059Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909266511Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909308722Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909334805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909357878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909379634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909401052Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90942343Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909445409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909468983Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909493663Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909516634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909539868Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90956479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909588568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909633296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909665991Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90970961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90973718Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909761746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90978547Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909808901Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909835398Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909862652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909885963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909911785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.9099366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.909960036Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.90998185Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910004505Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910025748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910049507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910091587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910118583Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910142282Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910165026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910187983Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910211445Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910235209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910258032Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910281171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910302502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910324125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910346914Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910368391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910391198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910415415Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.91045743Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910483312Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910506108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910528865Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910552152Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910574236Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910596597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910639192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910671956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910694194Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910705133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910715788Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910727362Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910739397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910750392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910769923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910781103Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.91079097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:822 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910801098Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910811301Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 819 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910821029Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 820 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94myield from\u001b[0m \u001b[96mself\u001b[0m.raw. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910831405Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 821 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ProtocolError \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.91084213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 822 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m ChunkedEncodin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910852844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910863435Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.91087415Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910884666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:42:22.910896422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mChunkedEncodingError: \u001b[0m\u001b[1m(\u001b[0m\u001b[32m'Connection broken: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.910907437Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mIncompleteRead\u001b[0m\u001b[32m(\u001b[0m\u001b[32m2078157 bytes read, 2741419 more \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.91091729Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mexpected\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m, \u001b[1;35mIncompleteRead\u001b[0m\u001b[1m(\u001b[0m\u001b[1;36m2078157\u001b[0m bytes read, \n","stream":"stdout","time":"2026-11-09T07:42:22.910927138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;36m2741419\u001b[0m more expected\u001b[1m)\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:42:22.910946746Z"} {"log":"\u001b[2;36m[11/09/26 07:45:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:45:57.542111496Z"} {"log":"\u001b[2;36m[11/09/26 07:45:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:45:57.544791845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:45:57.544823199Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:45:57.544837334Z"} {"log":"\u001b[2;36m[11/09/26 07:45:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:45:57.548024413Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:45:57.548067195Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:45:57.548081148Z"} {"log":"\u001b[2;36m[11/09/26 07:46:02]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:46:02.389304822Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:46:02.389375805Z"} {"log":"\u001b[2;36m[11/09/26 07:46:02]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:46:02.392276573Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:46:02.392311588Z"} {"log":"\u001b[2;36m[11/09/26 07:46:02]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:46:02.399919034Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:46:02.39998182Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:46:02.399997634Z"} {"log":"\u001b[2;36m[11/09/26 07:46:02]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:46:02.405995737Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:46:02.40606635Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:46:02.406098987Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:46:02.40612987Z"} {"log":"\u001b[2;36m[11/09/26 07:46:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:46:03.467281665Z"} {"log":"\u001b[2;36m[11/09/26 07:50:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:50:58.306720914Z"} {"log":"\u001b[2;36m[11/09/26 07:50:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:50:58.309627936Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:50:58.309693232Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:50:58.309708691Z"} {"log":"\u001b[2;36m[11/09/26 07:50:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:50:58.313869529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:50:58.313933107Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:50:58.313950096Z"} {"log":"\u001b[2;36m[11/09/26 07:51:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:51:03.394740892Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:51:03.394812609Z"} {"log":"\u001b[2;36m[11/09/26 07:51:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:51:03.399955099Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:51:03.400000293Z"} {"log":"\u001b[2;36m[11/09/26 07:51:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:51:03.407005471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:51:03.407076908Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:51:03.40709625Z"} {"log":"\u001b[2;36m[11/09/26 07:51:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:51:03.411426657Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:51:03.411480269Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:51:03.41150107Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:51:03.41152072Z"} {"log":"\u001b[2;36m[11/09/26 07:51:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:51:04.400400095Z"} {"log":"\u001b[2;36m[11/09/26 07:54:27]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:54:27.172554009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:27.172691619Z"} {"log":"\u001b[2;36m[11/09/26 07:54:27]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T07:54:27.179695108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:54:27.179776731Z"} {"log":"\u001b[2;36m[11/09/26 07:54:27]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:54:27.186164564Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:54:27.186224641Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:54:27.186256132Z"} {"log":"\u001b[2;36m[11/09/26 07:54:27]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:54:27.193747726Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:54:27.193817713Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:27.193850426Z"} {"log":"\u001b[2;36m[11/09/26 07:54:32]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:54:34.040039711Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.040116403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040131512Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040151236Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04016633Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040180782Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040194578Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040208195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040257698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040270418Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04028121Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040292653Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040304137Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040314462Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040327315Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040338192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040348148Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040358987Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040370251Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040380972Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040392265Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040402483Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040412587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040433066Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040444195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040454589Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040465034Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040474292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040484681Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040494909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040507364Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040519596Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040530389Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040541202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040551997Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040562756Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040573843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040584179Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040603368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040645131Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040657296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040668872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040679831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04069381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040705815Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040717049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04072805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040738433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040749669Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040759673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040769914Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040779935Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040801462Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040813118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040824372Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040835483Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040846952Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040858615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040869597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040879657Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040890047Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040900053Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040909885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040920496Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040931381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040942014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040953255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040973844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04098564Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.040996553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041006706Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041017843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041028546Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04103856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041048777Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041059767Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041070639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041102051Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041127204Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041149702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041172684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041197465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041240072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041264855Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041287034Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041309604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041333501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041356049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041379086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041402291Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041424956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041448376Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041471508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041494277Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041518913Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041546007Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041568678Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041590503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041638734Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041692177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041704279Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041717123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041728566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041739635Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041750502Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04176122Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041771133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041781433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041791382Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041801479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041811866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041822011Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041832918Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041843548Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041864162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041877579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041888552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041899066Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.041909166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.041919805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.041929569Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:54:34.041939372Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.04194881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.041958303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.04196846Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.041978389Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04198795Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04199949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042009885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042018799Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042029192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042051208Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042064049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042074797Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042085332Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042095533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042124976Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042146818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042169629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042191911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042215232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042239163Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042263114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042286774Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042309931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042332458Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04237687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042404255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042426459Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042449122Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042471319Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042492898Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04251597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042540377Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042565736Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042589274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042635903Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042669592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042695186Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042717319Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042747395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042772262Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042815749Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042840425Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042862166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042886106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042911241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042935138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042958229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.042981855Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043005677Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043027394Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043050218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043073069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043095485Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043117223Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043141651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043164219Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043205514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043231739Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043255307Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043279144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043302377Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043324475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043346391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04336837Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043390932Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04341098Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.0434357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04346044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043483323Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043508704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043533947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043575894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043600481Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04365864Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043688589Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043698834Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04370912Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043719928Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043731114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043741838Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043752902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043762985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04377334Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043784305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04379525Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043806157Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043816192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043835602Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043847037Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043856947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043867958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043879393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043890147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043900856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04391266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043923698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043934494Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043944429Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04395485Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043966715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043978018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.043989358Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044009424Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044022192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044033579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044044487Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044055439Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044065981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044077097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044087189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044107125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044128567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044155132Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044179254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044203362Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044227514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044269818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044296873Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044320779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044342803Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044365321Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044387067Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044408888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044432047Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044453666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044476817Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044503459Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044527235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044550887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044574515Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044597051Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044657793Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044700406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044723912Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044745468Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044768886Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044792779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044816934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044841417Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044863492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044886113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044912302Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044937546Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.044959947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04498193Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04500475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045026328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045067167Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045092712Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045115715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045138564Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045161438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045184586Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045207584Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045232391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045254264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045278914Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045301594Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045322946Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045345626Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045368343Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045390344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045413467Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045455655Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.04548141Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045504599Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045526041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045548569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045569814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045591676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045634521Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045672572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045698921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045721921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045752235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045777763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045800569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045824009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:54:34.045865252Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.045891116Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:54:34.045912468Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:54:34.045933926Z"} {"log":"\u001b[2;36m[11/09/26 07:55:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T07:55:59.110286955Z"} {"log":"\u001b[2;36m[11/09/26 07:55:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:55:59.116010896Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:55:59.116039508Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:55:59.116052401Z"} {"log":"\u001b[2;36m[11/09/26 07:55:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:55:59.122944444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:55:59.122993209Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:55:59.12301183Z"} {"log":"\u001b[2;36m[11/09/26 07:56:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:56:03.989648308Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T07:56:03.989726407Z"} {"log":"\u001b[2;36m[11/09/26 07:56:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T07:56:04.000477107Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T07:56:04.000547615Z"} {"log":"\u001b[2;36m[11/09/26 07:56:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T07:56:04.005869747Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:56:04.005937185Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T07:56:04.005953368Z"} {"log":"\u001b[2;36m[11/09/26 07:56:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T07:56:04.019824013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:56:04.019951417Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:56:04.019964826Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:56:04.01997644Z"} {"log":"\u001b[2;36m[11/09/26 07:56:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T07:56:08.441376086Z"} {"log":"\u001b[2;36m[11/09/26 07:59:23]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:59:25.217826489Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.217893368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.217908614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.217926036Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.217941187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.217955923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21797115Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.217985787Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218000772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21801615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21803106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21804684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218079605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218091789Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218105041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218116246Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218126444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218137392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218148474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218159258Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218170323Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218180814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218191139Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218201965Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218212014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218222665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218232997Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218242927Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218253409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218274425Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218287835Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218300318Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218310036Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218320077Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218332Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21834218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218354709Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218364794Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218375586Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218385724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218396693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218408225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21841908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218441927Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21845432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21846702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218478251Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218488807Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21849996Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218509874Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218520336Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218530336Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218541323Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218552273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218563474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218574607Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218586577Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218607822Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218645648Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218656786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21866625Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218676466Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218686543Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218697171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218708001Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218718682Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218729953Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218740595Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218750997Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218761884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21877185Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218783009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218803321Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218824577Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218835684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218847446Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21885953Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218871754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218884128Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218895567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21890708Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218931136Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218942182Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218953129Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218964573Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218976678Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.218987944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219009617Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219022352Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219033735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219050962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219063046Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219074379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219086634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219097504Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219108764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219119711Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21913074Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219142146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219153752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219167669Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219180014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21919189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219213655Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219226533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219238086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219249366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219260355Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219271389Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219282846Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219294438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219305633Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219317221Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219329986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219343661Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219355457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219367118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219378378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219399106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219411309Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:59:25.219422484Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219433019Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219443575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219454294Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.219464985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219475551Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219488326Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219499647Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219510513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219522029Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219535124Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219547867Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219559783Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219570476Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219580445Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219600364Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219624618Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219641533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219653305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219664969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219676886Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219689465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219701958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219713748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219725114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219737988Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219750395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219761632Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219773087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219784184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219795508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219831375Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219845366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21985812Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219870144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219882412Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219893987Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21990569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.2199166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219927892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219939788Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219951784Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219962941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.21997399Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219986106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.219998757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220020808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220033779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220045714Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220058019Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220069064Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220080499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220091999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220103266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220114381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220127471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220139109Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220152852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220164025Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220175965Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220188038Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220199595Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220220518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220232921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220243754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220254869Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220265693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220277964Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220290183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220301635Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220314187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22032673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220337935Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220349044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220361038Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220372216Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220383586Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220394453Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220419679Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220433065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220444786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220457104Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220468391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220479573Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220491479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220503306Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220515318Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220526445Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220537425Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22054881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220559936Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220572192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220584673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220607264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220640231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220653989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22066585Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220677724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220688632Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220700217Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22071331Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22072573Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220737537Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220748832Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220760731Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220773207Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220785639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220809067Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220822906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220834697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220845705Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220857114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220868538Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220880873Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22089297Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220905577Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220917704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220929235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220940894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220952819Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220965021Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220976691Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.220998041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221010274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221021363Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221032704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221043915Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221055623Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221068087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221080221Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221092069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22110344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221115123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221127115Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221138291Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221149381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221160604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221171463Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221182269Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.22120378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221216706Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221229627Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221243742Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221256549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221268095Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221279337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221290465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:822 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221301786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221313187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 819 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221324169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 820 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94myield from\u001b[0m \u001b[96mself\u001b[0m.raw. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221335963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 821 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ProtocolError \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221347989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 822 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m ChunkedEncodin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221359869Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221372149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221393698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221406597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:25.221419713Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mChunkedEncodingError: \u001b[0m\u001b[1m(\u001b[0m\u001b[32m'Connection broken: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.221431879Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mIncompleteRead\u001b[0m\u001b[32m(\u001b[0m\u001b[32m4428189 bytes read, 391387 more \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.221443175Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mexpected\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m, \u001b[1;35mIncompleteRead\u001b[0m\u001b[1m(\u001b[0m\u001b[1;36m4428189\u001b[0m bytes read, \n","stream":"stdout","time":"2026-11-09T07:59:25.221454111Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;36m391387\u001b[0m more expected\u001b[1m)\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:25.22146582Z"} {"log":"\u001b[2;36m[11/09/26 07:59:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T07:59:46.901859788Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:46.901958554Z"} {"log":"\u001b[2;36m[11/09/26 07:59:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T07:59:46.908976919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T07:59:46.909056361Z"} {"log":"\u001b[2;36m[11/09/26 07:59:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T07:59:46.91549177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T07:59:46.915545959Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T07:59:46.915572583Z"} {"log":"\u001b[2;36m[11/09/26 07:59:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T07:59:46.923026082Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T07:59:46.923093853Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:46.923119651Z"} {"log":"\u001b[2;36m[11/09/26 07:59:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T07:59:53.775377367Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.775448192Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775460246Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775472523Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775482589Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77549239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775502678Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775512547Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775522382Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775532486Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775542242Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77555309Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775563597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775573317Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775588985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775599416Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775712567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775730854Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775742939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775753527Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775764788Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775774166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775784385Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775795084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775805056Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775815406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775825498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775835368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775845632Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775855023Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775867156Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775889602Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775901484Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775912151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775923851Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775935028Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775945999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77595619Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775966673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77597582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775985785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.775997661Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776008678Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776022859Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776035225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776056112Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776068072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776077947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776088385Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776097674Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776107213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776116449Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776126696Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776136289Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776146522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776156779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77616752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776178433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77618877Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776198093Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776216904Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776228395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776238188Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776248774Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776259551Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776270388Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776281965Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776292501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776303142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776314235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776324307Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776335215Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776345997Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776356019Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776366065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776376883Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77639706Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776409222Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776439845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77646007Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776481317Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776503725Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776526077Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776546881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776567571Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776588504Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776634382Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776667108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776690423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776700399Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776710187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776729691Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77674053Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776749986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776760433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776769627Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776779113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77678829Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776797357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776806948Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776816746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776829116Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776839376Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776849349Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776859282Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776869059Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776878286Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776897878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776908029Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776917283Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776926919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776936348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776946616Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776956657Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776967597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776981711Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.776993592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777003594Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.7770133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777023318Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777032321Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:59:53.777041584Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777052255Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777070717Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777081881Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.777091413Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777119671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777144792Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777167553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777189329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77721213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777237839Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777263676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777287562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777310734Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777333049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777355319Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777377045Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777399681Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777421651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777495741Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777522341Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777545338Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777567408Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777588839Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777609449Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777671555Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777693772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777703033Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777712588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777721892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777731072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777740709Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777750843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777761451Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777780872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777793108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777804128Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777814956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777824919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777835056Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777846003Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777856847Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777866813Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777876964Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777887119Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777898513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777909523Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777920148Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777931005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777951402Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777962423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777972888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77798321Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.777993698Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778003592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778014929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778025197Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778035286Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778045981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77805671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778067578Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77807812Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778088259Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778107665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778129537Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778169146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778193271Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778217582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778242425Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.7782651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778290268Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778315233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77833754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778359882Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77838375Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778405532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778428392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778450214Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77847378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778495923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778519223Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778562612Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778587087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778609329Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778668393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778693925Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778717687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778740232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778762431Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778785071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778807086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778831638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778857151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778880657Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778904187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778929942Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.778974024Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779000165Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779022309Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779045591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779070654Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77909486Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779120151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779144155Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77917002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779195116Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77921956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779243312Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779265887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779290514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779331322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77935713Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779379278Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779405715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779429895Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77945403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779478747Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779501949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779526743Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779550978Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779573174Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77959611Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779638588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779669852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779693158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779713522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779725826Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77973818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.77974939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779759999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779770859Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779781042Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779791085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779801768Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779811794Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.7798218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779833052Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779844062Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.7798554Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779866628Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779886144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779897608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779909751Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779921091Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779931257Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779941297Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779951794Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779961829Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779971901Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779982693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.779993507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780003958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780014734Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780025403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780035818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780047125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780066305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780078543Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780088164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780097212Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780124917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780146225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780168679Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780190331Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780211929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780233622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.78025571Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780275889Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780296761Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780316603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780336973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780357749Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780400042Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780427718Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.78045108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780476768Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780502392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780525343Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780548496Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T07:59:53.780570986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.780594694Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T07:59:53.78063646Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T07:59:53.780669606Z"} {"log":"\u001b[2;36m[11/09/26 08:00:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T08:00:59.908513137Z"} {"log":"\u001b[2;36m[11/09/26 08:00:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:00:59.914069692Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:00:59.914104396Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:00:59.914118028Z"} {"log":"\u001b[2;36m[11/09/26 08:00:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:00:59.919769335Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:00:59.919814009Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:00:59.919850291Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:01:05.541268266Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T08:01:05.541375949Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T08:01:05.54873476Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:01:05.548808394Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T08:01:05.558915303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:01:05.559016666Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T08:01:05.559052126Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T08:01:05.569901419Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:01:05.569966561Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:01:05.569979233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:01:05.569990418Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:01:05.909453846Z"} {"log":"\u001b[2;36m[11/09/26 08:01:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:01:05.914344328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:01:05.914418538Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:01:05.914431649Z"} {"log":"\u001b[2;36m[11/09/26 08:01:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:01:06.868719558Z"} {"log":"\u001b[2;36m[11/09/26 08:01:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:01:06.873761433Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:01:06.873835981Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:01:06.873889774Z"} {"log":"\u001b[2;36m[11/09/26 08:01:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T08:01:07.760703883Z"} {"log":"\u001b[2;36m[11/09/26 08:01:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:01:08.595968087Z"} {"log":"\u001b[2;36m[11/09/26 08:01:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:01:08.598897352Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:01:08.598923912Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:01:08.598940944Z"} {"log":"\u001b[2;36m[11/09/26 08:03:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T08:03:55.361641373Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:03:55.361756029Z"} {"log":"\u001b[2;36m[11/09/26 08:03:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T08:03:55.369013191Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:03:55.36910577Z"} {"log":"\u001b[2;36m[11/09/26 08:03:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:03:55.375792587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:03:55.375877097Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:03:55.375910286Z"} {"log":"\u001b[2;36m[11/09/26 08:03:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:03:55.383436767Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:03:55.383513788Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:03:55.383543991Z"} {"log":"\u001b[2;36m[11/09/26 08:04:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:04:02.246760176Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.24683579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246849845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246899604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246911014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246920827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246930962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24694071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246950274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246960382Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246970114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246980733Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.246991253Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247000951Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247012467Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247023196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247032267Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247042051Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247052015Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247070803Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247082179Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247091594Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247100864Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247110575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247119666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247128894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24713808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247147048Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247156266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247165359Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247176595Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247187441Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247197039Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247206903Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247226249Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247237379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247247309Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247256638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247265999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247275169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247285161Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247295668Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247305533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247317849Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247328757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247338931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247348697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247358232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24737715Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247387301Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247396246Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247404591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247413753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247422532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247446939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247469285Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247492955Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247516673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247538789Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247558892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247579653Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247600321Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247659572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247703929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247730761Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247756559Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247784023Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247804996Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247827746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247851113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247873185Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24789737Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247920823Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247941939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247963355Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.247986855Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248010014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248034133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248130614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248156443Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248179348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248203526Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248226992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248249368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248270835Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24829322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248317047Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248340156Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248363552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248386684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248409178Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248432161Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248455117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248478097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248520803Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248545185Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248567908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248589346Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248634609Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248667742Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248692213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248719334Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248744625Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248767923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248791568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248814595Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248836753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248858984Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248878984Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248899907Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248943103Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24896791Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.248990549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249012024Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24903609Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249061754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249083518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249105228Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249125688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249147315Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249166932Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:04:02.249186866Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249206002Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249225206Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249244582Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.249264203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249283416Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249326296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24935145Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249373208Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249396111Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249421402Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249447166Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249470341Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249493398Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249515177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249537138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249558366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249580992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249601005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249657356Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249683101Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249727901Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.24975466Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249776574Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249797061Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249820774Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249843455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249863591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249884548Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249904634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249924768Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249946183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249968495Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.249991749Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250013902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25003653Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250076469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250100738Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25012134Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250141877Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250164012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250185556Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250205922Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.2502262Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250248613Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250271595Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25029372Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25031513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250337348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250359149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25037932Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250400347Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250438955Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250463917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250486019Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250510907Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250533878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250555565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250579227Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250602598Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250661614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250686393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250708398Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250730962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250752566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250780274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250802241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250826961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250871472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250897076Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250920397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25094392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25096469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.250985114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251007514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251028167Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251049184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251068934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251090872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251113165Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251134781Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251157118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25117763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251197959Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251238675Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251265699Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25128929Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251311892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251333871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251356477Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25137802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251402085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251426674Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251450014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251473091Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251498705Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251522651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251546452Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251567876Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251631676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25166892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251694596Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251719594Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251743552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251769481Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251794218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251818503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251841566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251863948Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251888354Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251909834Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251931979Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251953608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.251998335Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25202465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252047534Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252069975Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252090814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25211423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252136529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252156693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252177654Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252197665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252217773Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252239517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252262068Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252283621Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25230832Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252349087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252375012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252398995Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252420888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25244257Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252465126Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252486534Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252508042Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252531538Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25255497Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252579173Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252603492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252662461Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.2526869Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252712528Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252756961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252781374Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252802897Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252826221Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252848454Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252870202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252893403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252916582Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252939209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252962227Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.252984919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253007214Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253031749Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25305315Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253077311Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253100041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253121644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253161666Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253186983Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253210637Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25323368Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253257058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253280478Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253303186Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253324949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253347353Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253368735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25339024Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253412524Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253437397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25346253Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253485313Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253528778Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25355622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.25357769Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253599Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:04:02.253654342Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.253678753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:04:02.253697739Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:04:02.253717846Z"} {"log":"\u001b[2;36m[11/09/26 08:06:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T08:06:01.016941682Z"} {"log":"\u001b[2;36m[11/09/26 08:06:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:06:01.019562497Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:06:01.019588106Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:06:01.019601227Z"} {"log":"\u001b[2;36m[11/09/26 08:06:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:06:01.022733656Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:06:01.022772213Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:06:01.022785662Z"} {"log":"\u001b[2;36m[11/09/26 08:06:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:06:05.890714444Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T08:06:05.890797198Z"} {"log":"\u001b[2;36m[11/09/26 08:06:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T08:06:05.894360724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:06:05.894426371Z"} {"log":"\u001b[2;36m[11/09/26 08:06:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T08:06:05.901687615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:06:05.901745534Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T08:06:05.90175724Z"} {"log":"\u001b[2;36m[11/09/26 08:06:05]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T08:06:05.906950071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:06:05.907015585Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:06:05.907037961Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:06:05.907054125Z"} {"log":"\u001b[2;36m[11/09/26 08:06:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T08:06:07.484553412Z"} {"log":"\u001b[2;36m[11/09/26 08:10:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:10:48.5246413Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.524728469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524742562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524761724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524777006Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524791515Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524806665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524821543Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524836501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524884904Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524897597Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524909401Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524920911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524932042Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524945746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524956765Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524966884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524977983Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.524989477Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525000288Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525011608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525022584Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525032572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525043475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525063775Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525075455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525085644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525095928Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525106563Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52511688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525129188Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525141209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525151093Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525161069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525173325Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525184836Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525195891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52520613Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525216737Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525235882Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525247744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525259274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525270601Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525284375Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525296479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525307634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52531842Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525328841Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525340513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525350867Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525361233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525371309Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525382477Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525402289Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525414482Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525425517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525437142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525448948Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525459861Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52546989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52548024Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525490211Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525500273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525511031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525521973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525532697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525543941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525554557Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525574391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525602533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525666155Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52567746Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525687638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525696806Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525706235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525716093Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52572629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525736768Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525747333Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525756803Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525766386Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525776668Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525787017Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525806507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525816895Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525826491Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525836529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52584592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525855895Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525865755Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525875426Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525885432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525895147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525904676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525915351Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525924685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525934239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52594357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525953118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525962517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52598083Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.525994958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526006478Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526017434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526028276Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526039411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52604963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526060035Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526070011Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526090682Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526113322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526136241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526160763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526184156Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526209465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52625562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526281685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526303448Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52632476Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526346486Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526366014Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:10:48.526385797Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526404999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526424036Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526443791Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.526463247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526482587Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526506548Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526527679Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526547627Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526568881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526592274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52666099Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526689146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526701706Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526712898Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526724172Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526735337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526746875Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526762195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52677421Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526786225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52679856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526810396Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526822141Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526833235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526845899Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526868818Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526881125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526891767Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526901804Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526911981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526922498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526933845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526945859Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526957145Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526968435Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526979365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.526990187Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527000455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527010684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52702164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527032631Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527052509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527064737Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527076809Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527103536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527127509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527151177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527174755Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527198133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52722012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527243231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527265541Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527287716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527309824Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527334517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527357598Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527379834Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527422075Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52744846Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527471012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527492358Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527513905Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527534751Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527554793Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52757553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527596464Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527646232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527680215Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52770384Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527727287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527750674Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527771096Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527792357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527834184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527856517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52787796Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527898113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527919887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527941853Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527963501Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.527986272Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528007057Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528027499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528049297Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528071071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528092825Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528113241Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528133406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528154175Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528192407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528217115Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528240529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528262171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52828411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528308391Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52833042Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528353407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528373931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528395069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528418875Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528441605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528464161Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528485887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528525332Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.5285512Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528573591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528597495Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528644026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528678117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528689354Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528699832Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528709903Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528721147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528732263Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528743944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528755068Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528765667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528812826Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52882518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528836723Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528847513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528858414Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528868748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528879101Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528889669Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528899902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528910842Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528922583Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528934178Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528945225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528956058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528966973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.528978225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52899775Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529009176Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529019583Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529029511Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52903963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529050695Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529061475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529073667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529086037Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529111252Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529132407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52915302Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529172865Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:822 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529193339Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529214282Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 819 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52923471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 820 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94myield from\u001b[0m \u001b[96mself\u001b[0m.raw. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529273549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 821 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ProtocolError \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.52929799Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 822 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m ChunkedEncodin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529320016Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529342133Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529364085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529385702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:10:48.529409458Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mChunkedEncodingError: \u001b[0m\u001b[1m(\u001b[0m\u001b[32m'Connection broken: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.529432083Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mIncompleteRead\u001b[0m\u001b[32m(\u001b[0m\u001b[32m4642328 bytes read, 177248 more \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.52945229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mexpected\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m, \u001b[1;35mIncompleteRead\u001b[0m\u001b[1m(\u001b[0m\u001b[1;36m4642328\u001b[0m bytes read, \n","stream":"stdout","time":"2026-11-09T08:10:48.529473434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;36m177248\u001b[0m more expected\u001b[1m)\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:10:48.529495243Z"} {"log":"\u001b[2;36m[11/09/26 08:11:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T08:11:01.855654581Z"} {"log":"\u001b[2;36m[11/09/26 08:11:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:11:01.861682231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:11:01.861718922Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:11:01.861735987Z"} {"log":"\u001b[2;36m[11/09/26 08:11:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:11:01.868920426Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:11:01.869036954Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:01.869063944Z"} {"log":"\u001b[2;36m[11/09/26 08:11:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:11:06.742016347Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T08:11:06.742085237Z"} {"log":"\u001b[2;36m[11/09/26 08:11:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T08:11:06.744772797Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:11:06.744803376Z"} {"log":"\u001b[2;36m[11/09/26 08:11:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T08:11:06.749708727Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:06.749769918Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T08:11:06.749780922Z"} {"log":"\u001b[2;36m[11/09/26 08:11:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T08:11:06.752859205Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:06.752900884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:06.752911512Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:06.752920977Z"} {"log":"\u001b[2;36m[11/09/26 08:11:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T08:11:08.691460503Z"} {"log":"\u001b[2;36m[11/09/26 08:11:31]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:11:33.109153669Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.109243944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109259646Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109276311Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.10929111Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109336156Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109348557Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109359362Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109370322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109381177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109392245Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109403973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109415414Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109426471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109439446Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109450369Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109460992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109472004Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109483353Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109494174Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109514097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109525901Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109536316Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109547214Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109557428Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109568346Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109578742Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109588993Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109598429Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109608772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109652411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.10966415Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109675228Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109686082Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109697871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109718732Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109729592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.10974009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.10975055Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109760688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109771545Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109783081Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109793956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109807992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109820696Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109831857Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.10984285Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109853469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109865005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109884956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109896638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109906624Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109917673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109928215Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109939757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109950879Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109962505Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109974575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109986177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.109996251Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110006673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110016805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110026853Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110037569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110048616Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110067335Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110079618Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110102308Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11012565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110149418Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110169934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110193723Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110217287Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110239364Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110261545Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110285494Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110309341Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110334335Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110359472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110382086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110424866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110451793Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110476204Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110498476Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110520993Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110543975Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110568208Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110591117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110643069Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110686342Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110697663Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11070845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11071918Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110730216Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110741412Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110760771Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110772403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110782405Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110792434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110802985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110813719Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11082638Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110837564Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11084839Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11085931Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110870397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11088063Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110891247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110901521Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110911798Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110922296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110932739Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110968441Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110980744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.110992388Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111004918Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111015742Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111026512Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111036831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.111047814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.111057528Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:11:33.111067758Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.11107726Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.111086908Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.111105961Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.111127474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11114888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111174858Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111216787Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111241124Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111263856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111289346Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111314783Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111339107Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111362532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111389104Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111411772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111433924Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111457005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111478817Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111502021Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111526344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111550529Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111574402Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111645151Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11168075Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111707751Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111732902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111754917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111777855Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111799566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111821397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111844386Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111868513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11189358Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11191775Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111942406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111965802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.111989557Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112031822Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.1120566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112081091Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112104561Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112126917Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112149169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112173496Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112199084Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112223171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11224654Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112270305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112293939Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11231593Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112338999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112361942Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112384558Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11242399Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11245096Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112473696Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11249629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112520195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112544138Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112568225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112591851Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112633012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112665699Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112691776Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112702097Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112712233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112723763Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112734076Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112744923Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112765837Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112778248Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112788094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112797525Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112807925Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112817238Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112826826Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112835911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112845858Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11285603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112865891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112876071Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112885594Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112895185Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112905434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112924764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112936553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112946851Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112956825Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112967218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112976292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112987305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.112998881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11300944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113020209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11303176Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113042555Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113053544Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113063608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113073967Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113094948Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113128124Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113150608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113172022Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113194025Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11321725Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113239614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113263645Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113286694Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113308583Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11332884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113349827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11336996Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113391762Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113413783Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113460182Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113487981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11350954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113531803Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11355344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.1135759Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113597459Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113645684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113675906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113698449Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113719588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113740338Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113761702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113787348Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113811702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113852744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113875775Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113897215Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113918789Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113938687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113959173Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113979969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.113999778Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114019976Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114041989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114063395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11408719Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114111443Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114133592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114154824Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114175144Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114212426Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:822 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11423487Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11425551Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 819 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114275432Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 820 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94myield from\u001b[0m \u001b[96mself\u001b[0m.raw. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11429709Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 821 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ProtocolError \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114319077Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 822 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m ChunkedEncodin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114341Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114363222Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114385078Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.11440649Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:11:33.114431567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mChunkedEncodingError: \u001b[0m\u001b[1m(\u001b[0m\u001b[32m'Connection broken: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.114453954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mIncompleteRead\u001b[0m\u001b[32m(\u001b[0m\u001b[32m2204872 bytes read, 2614704 more \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.11447417Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mexpected\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m, \u001b[1;35mIncompleteRead\u001b[0m\u001b[1m(\u001b[0m\u001b[1;36m2204872\u001b[0m bytes read, \n","stream":"stdout","time":"2026-11-09T08:11:33.114494474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;36m2614704\u001b[0m more expected\u001b[1m)\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:11:33.114515854Z"} {"log":"\u001b[2;36m[11/09/26 08:18:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:18:53.398264492Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.398350334Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398363998Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398381295Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398395727Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398409613Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398423759Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398437472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398451475Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398465517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398479398Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398494147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398508948Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398522743Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398538783Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398552635Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398593659Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398606088Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398646324Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398657201Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398668451Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398677869Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.3986881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398698934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398709049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398719344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398729575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398739712Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398750196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398760196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398772403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398794786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398807142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398817968Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398851378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398874724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398898518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398920358Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398942584Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398964164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.398987061Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399012553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399036463Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399066203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399092173Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399135514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399161815Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.39918463Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399209451Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399231075Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399253817Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399275461Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399299536Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399322183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399346197Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.39937011Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399395492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399420679Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399444537Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399466027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399507302Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399531736Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399553304Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399576493Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399599833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399645705Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.39967895Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399713541Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.39973747Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399761779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399783933Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399807899Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399831654Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399853725Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399875539Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399898885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399942379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.399971982Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.3999992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400021474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400044357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400068379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.4000921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400114345Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400136549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400158933Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400183048Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400205972Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400227526Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400250644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400273522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40031509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400341211Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400363865Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400388366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40041037Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400432779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400454278Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400475766Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400498027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400521223Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400548958Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400572945Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400596567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400647771Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400681888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400692862Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400714252Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400726292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400737196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400748499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400759512Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400772035Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400783624Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400796438Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400810206Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400822139Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400833662Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400844969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400856738Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400867229Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:18:53.400877997Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400888272Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400937058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400949518Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.400959883Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400970203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400982779Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.400993976Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40100469Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40101644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401029272Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401041997Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401053845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401065318Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401076301Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401098518Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401120842Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401143254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401165008Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40120652Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401232941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401257102Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401280674Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401303655Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401326049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401351014Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40137568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401397471Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401420161Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401441491Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401462947Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.4014855Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401509535Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401534722Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401577354Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401601752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401660744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401686089Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401707914Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401730113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401752106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401775065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401796697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40181847Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401842846Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401867854Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401891503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401914611Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40193837Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.401981909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402006198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40202933Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402052036Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402074284Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402095886Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402120672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402143603Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402165829Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402189088Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402212718Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402236514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402259455Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402281605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402304058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402325934Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402367018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402391434Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402416053Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402440413Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402470604Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402495748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402521009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402543265Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402565218Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40258916Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402633269Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402666994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402691298Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402702067Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402712881Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402723498Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402744593Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402755877Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402766006Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402776634Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402787721Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402798328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402808127Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402817971Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402828153Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402838022Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402848949Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402860106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402870558Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402881098Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40289295Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402912774Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402924702Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40293459Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402944811Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40295641Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402967426Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40297816Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402988579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.402999403Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403010843Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403021717Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403033667Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403044973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403055744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403074617Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403086003Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403095885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403125538Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403149182Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403174195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403197879Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403220395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403243754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403267102Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403291013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403313979Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403337032Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403358747Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403380978Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40340344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403443892Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403469566Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403494116Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403518685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40354264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403565387Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403588247Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403633856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403667157Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403691534Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.4037123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403732087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403751615Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403773045Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403793735Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403837046Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403863365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403885148Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403906728Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403926849Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403946418Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:822 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403966162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.403986393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 819 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404005626Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 820 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94myield from\u001b[0m \u001b[96mself\u001b[0m.raw. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404026508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 821 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ProtocolError \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404047783Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 822 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m ChunkedEncodin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40406954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404091086Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.40411256Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404133347Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:18:53.404157203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mChunkedEncodingError: \u001b[0m\u001b[1m(\u001b[0m\u001b[32m'Connection broken: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.404196675Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mIncompleteRead\u001b[0m\u001b[32m(\u001b[0m\u001b[32m3263864 bytes read, 1555712 more \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.404220972Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32mexpected\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m, \u001b[1;35mIncompleteRead\u001b[0m\u001b[1m(\u001b[0m\u001b[1;36m3263864\u001b[0m bytes read, \n","stream":"stdout","time":"2026-11-09T08:18:53.404241836Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;36m1555712\u001b[0m more expected\u001b[1m)\u001b[0m\u001b[1m)\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:53.40426361Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down due to inactivity. \n","stream":"stdout","time":"2026-11-09T08:18:58.569736609Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down \n","stream":"stdout","time":"2026-11-09T08:18:58.632038952Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application shutdown. \n","stream":"stdout","time":"2026-11-09T08:18:58.738566847Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application shutdown complete. \n","stream":"stdout","time":"2026-11-09T08:18:58.864283833Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Finished server process \u001b[1m[\u001b[0m\u001b[1;36m764\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:58.866922951Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Worker \u001b[1m(\u001b[0mpi\u001b[1;92md:764\u001b[0m\u001b[1m)\u001b[0m was sent SIGINT! \n","stream":"stdout","time":"2026-11-09T08:18:58.896058312Z"} {"log":"\u001b[2;36m[11/09/26 08:18:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m1935\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:18:58.911107582Z"} {"log":"\u001b[2;36m[11/09/26 08:19:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m1935\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:19:00.701675466Z"} {"log":"\u001b[2;36m[11/09/26 08:19:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-09T08:19:00.703873696Z"} {"log":"\u001b[2;36m[11/09/26 08:19:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-09T08:19:00.707526507Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-09T08:19:00.707578415Z"} {"log":"\u001b[2;36m[11/09/26 08:19:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-09T08:19:00.710978365Z"} {"log":"\u001b[2;36m[11/09/26 08:19:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-09T08:19:00.713776408Z"} {"log":"\u001b[2;36m[11/09/26 08:23:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:23:37.016386388Z"} {"log":"\u001b[2;36m[11/09/26 08:23:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:23:37.021415802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:23:37.021469802Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:23:37.02148647Z"} {"log":"\u001b[2;36m[11/09/26 08:23:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:23:37.091429363Z"} {"log":"\u001b[2;36m[11/09/26 08:23:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:23:37.097443148Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:23:37.097508568Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:23:37.09752373Z"} {"log":"\u001b[2;36m[11/09/26 08:23:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T08:23:38.025123371Z"} {"log":"\u001b[2;36m[11/09/26 08:23:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:23:38.027728905Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:23:38.027788462Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:23:38.027806779Z"} {"log":"\u001b[2;36m[11/09/26 08:23:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:23:38.050629521Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:23:38.050705593Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:23:38.050721855Z"} {"log":"\u001b[2;36m[11/09/26 08:23:41]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:23:41.424727126Z"} {"log":"\u001b[2;36m[11/09/26 08:23:41]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:23:41.428749897Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:23:41.428814591Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:23:41.428833193Z"} {"log":"\u001b[2;36m[11/09/26 08:23:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:23:44.641381004Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T08:23:44.641444682Z"} {"log":"\u001b[2;36m[11/09/26 08:23:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T08:23:44.646939636Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:23:44.64704148Z"} {"log":"\u001b[2;36m[11/09/26 08:23:45]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T08:23:45.446954397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:23:45.44701663Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T08:23:45.447029555Z"} {"log":"\u001b[2;36m[11/09/26 08:23:45]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T08:23:45.450757812Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:23:45.450809054Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:23:45.450822189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:23:45.450833789Z"} {"log":"\u001b[2;36m[11/09/26 08:23:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T08:23:47.112350838Z"} {"log":"\u001b[2;36m[11/09/26 08:28:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T08:28:37.70629514Z"} {"log":"\u001b[2;36m[11/09/26 08:28:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:28:37.708957118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:28:37.708983467Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:28:37.708996545Z"} {"log":"\u001b[2;36m[11/09/26 08:28:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:28:37.712387786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:28:37.712433534Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:28:37.712447583Z"} {"log":"\u001b[2;36m[11/09/26 08:28:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:28:42.587313488Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T08:28:42.587426353Z"} {"log":"\u001b[2;36m[11/09/26 08:28:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T08:28:42.591313769Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T08:28:42.59137483Z"} {"log":"\u001b[2;36m[11/09/26 08:28:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T08:28:42.599041678Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:28:42.599116684Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T08:28:42.599135002Z"} {"log":"\u001b[2;36m[11/09/26 08:28:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T08:28:42.604141189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:28:42.604195236Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:28:42.604213286Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:28:42.604229105Z"} {"log":"\u001b[2;36m[11/09/26 08:28:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T08:28:43.515851952Z"} {"log":"\u001b[2;36m[11/09/26 08:31:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T08:31:13.395284337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:13.395379301Z"} {"log":"\u001b[2;36m[11/09/26 08:31:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T08:31:13.402162401Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T08:31:13.402264131Z"} {"log":"\u001b[2;36m[11/09/26 08:31:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T08:31:13.408313503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T08:31:13.408399793Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T08:31:13.408426984Z"} {"log":"\u001b[2;36m[11/09/26 08:31:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T08:31:13.417873609Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T08:31:13.417953085Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:13.41800885Z"} {"log":"\u001b[2;36m[11/09/26 08:31:18]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:31:20.498491829Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.498562572Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498574158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498586196Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498597169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498607766Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498649608Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498661239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498671959Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498683337Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498693891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49870542Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498716888Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498727507Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498740147Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498788079Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498799581Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498810162Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498820729Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498830719Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498841132Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498850562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498859945Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49886994Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498879315Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498888979Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498898856Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498907883Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498917578Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498926791Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498938388Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498960429Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49897182Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498982224Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.498993307Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49900363Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499018217Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499027401Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499037271Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49904684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499057137Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499067579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499077852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499090328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499109754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49912198Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499133169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499143716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499155269Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499165203Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499175492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499185579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499196605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499206999Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49921969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499238366Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499248866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499259716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499269732Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499287423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499297887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499306565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499314963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499324141Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499333327Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49934231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499351955Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499360909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499369871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499379113Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499387672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499397207Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499406365Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499414786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499423344Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499440665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499451554Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499461884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499472383Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499481944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499491487Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499501622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49951165Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499520871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499530079Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49953951Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499549505Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499559228Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499569027Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499578863Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499596656Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499607399Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499631697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499642359Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499652714Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49966202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499671395Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499680379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499689479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49969878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499708692Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499720392Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499730741Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499740421Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499750303Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499768548Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499778614Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499788118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499797184Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499806169Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499815645Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499824906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499834787Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499844457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.49985508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499866468Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499876833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499886845Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499896065Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.49990593Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.499914976Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:31:20.499932546Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.499941397Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.499950327Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.499959099Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.499967381Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499975508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499985384Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.499994233Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500002677Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500011553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500021684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500031676Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500041146Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500050372Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500058877Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500067467Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50007591Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50009292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500103044Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500112891Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500122973Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500133022Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500142969Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500152648Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500161862Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500172672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500183105Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500192201Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500201815Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500210967Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500220093Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500229671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500239804Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500258168Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50026885Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500279026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500288764Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500298684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500307833Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500317073Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500327105Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500337023Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500346094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500355253Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500379149Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500404207Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500428094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500451189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500493506Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500519158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500539517Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500560481Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500581117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500601703Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500659293Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500684409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500704005Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500712636Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500721748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500730911Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500740158Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500749171Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500757437Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500766356Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50078323Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500793629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500802868Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500812408Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50082274Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500832257Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500842527Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500852935Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500862257Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500871567Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500881672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500890871Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500900393Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500909402Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500919135Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500929105Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50094701Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500957922Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500966653Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500975006Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500984532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.500993773Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501002781Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501011325Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501019688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501028492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50103693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501046379Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501056278Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501065387Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501074442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501092306Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501102277Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501121753Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501141852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501162786Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50118592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501207851Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501236372Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501258716Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501282889Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501306092Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501328568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501350545Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501371842Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501411491Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501433606Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501454849Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501474932Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501498864Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501520742Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501542752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501565117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501586221Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501609072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50166789Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501697121Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50170574Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501714235Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501722797Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501742544Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501753623Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501763409Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501774442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501784492Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50179406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501803978Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501813109Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501822179Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501831503Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501840468Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501849552Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501859294Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501869117Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501878444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501897772Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501907967Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501916814Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501927088Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501936757Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501945267Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501953701Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501962534Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501971058Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501979406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501988458Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.501997574Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502006422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502015665Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502024872Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502033816Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502052244Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502061673Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502071259Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50208Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502088456Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502096957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502115359Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502137606Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502159311Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502181072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502202808Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502224098Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502244771Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502265579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50228563Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502305599Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502344163Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502369724Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.5023926Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502414123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502438292Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502461785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502483034Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.50250457Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:31:20.502525514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.502547295Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:31:20.502566763Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:31:20.502586674Z"} {"log":"\u001b[2;36m[11/09/26 08:36:06]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Exception in ASGI application \n","stream":"stdout","time":"2026-11-09T08:36:08.605099078Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.605181553Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605195509Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:244 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605211273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605258704Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m241 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605269688Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m242 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605279906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m243 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605289747Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m244 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m run(_attempt) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605299954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m245 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mexcept\u001b[0m corrupt: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605310299Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.6053204Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605330984Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605341791Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605351532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605363491Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605373216Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60538264Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605392568Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605402744Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605421992Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605434776Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605445009Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60545499Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605465672Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60547474Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605484938Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605494941Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605504812Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605515031Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605524884Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.6055371Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605549118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605558825Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605569423Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605589805Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605601717Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605628299Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:87 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605644026Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60565416Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 84 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.download() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605664277Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605674945Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605686555Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605697482Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605710832Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 87 \u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[1;4;96mself\u001b[0m\u001b[1;4m._load()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605722906Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.loaded = \u001b[94mTrue\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605733123Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605743902Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92munload\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605754256Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605774677Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:108 in _load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60578562Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605795748Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m105 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_predict\u001b[0m(\u001b[96mself\u001b[0m, *inputs: Any, **mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605805658Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m106 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605815687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m107 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_load\u001b[0m(\u001b[96mself\u001b[0m) -\u003e ModelSession: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605825972Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m108 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;96mself\u001b[0m\u001b[1;4m._make_session()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605836956Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m109 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60584793Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m110 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mclear_cache\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605859223Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m111 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m \u001b[96mself\u001b[0m.cache_dir.exists(): \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605870834Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605881605Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:137 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605891525Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _make_session \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60590181Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605911736Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m134 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ARMNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605921569Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m135 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m AnnSession(\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605932106Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m136 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.ONNX: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605951909Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m137 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4mOrtSession(\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.mo\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605963659Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4mthreads=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.threads)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605975125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m138 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mcase\u001b[0m ModelFormat.RKNN: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605985585Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m139 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m rknn.RknnSession(\u001b[96ms\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.605996143Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m140 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60600683Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606017111Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:312 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606027822Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606038642Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606065134Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m309 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.graphs: \u001b[96mdict\u001b[0m[Shape, OrtGraph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606087143Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m310 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.locks: \u001b[96mdict\u001b[0m[Shape, Lock] = { \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606110579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m311 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic \u001b[95mor\u001b[0m \u001b[96mlen\u001b[0m(policy.dim \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606134087Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m312 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.for_shape(policy.dims[\u001b[0m\u001b[1;4;94m0\u001b[0m\u001b[1;4m]\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606158378Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mon a shape\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606182827Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m313 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606223802Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m314 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mfor_shape\u001b[0m(\u001b[96mself\u001b[0m, shape: Shape) -\u003e \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606248951Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m315 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96mself\u001b[0m.dynamic: \u001b[2m# a batch gains\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606271639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mone row optimizes further\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606294919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60631689Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:332 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606338697Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m for_shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606361288Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606384674Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m329 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.disabled_optimiz \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606407202Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m330 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[96mself\u001b[0m.threads, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606430213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m331 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60645328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m332 \u001b[2m│ │ │ │ \u001b[0mgraph = \u001b[96mself\u001b[0m.graphs[shape \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606475944Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m333 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606498821Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m334 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606521629Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m335 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92mwarm\u001b[0m(\u001b[96mself\u001b[0m) -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606544418Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606587705Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:65 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606637328Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m __init__ \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606671078Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606694428Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 62 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606715862Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 63 \u001b[0m\u001b[94mclass\u001b[0m \u001b[4;92mOrtGraph\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606738099Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 64 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m__init__\u001b[0m(\u001b[96mself\u001b[0m, spec: GraphSpec) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606760942Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 65 \u001b[2m│ │ \u001b[0mgraph = \u001b[1;4mprepared(spec)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606788293Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 66 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[96mself\u001b[0m.lock = global_lock \u001b[94mif\u001b[0m spec.p \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606812484Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 67 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mself\u001b[0m.lock: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606836239Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 68 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m._session = spec.session( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606860226Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606883134Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/sessions/\u001b[0m\u001b[1mort.py\u001b[0m:274 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60690465Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m prepared \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606927006Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606948721Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m271 \u001b[0m\u001b[2m│ │ \u001b[0mchild = subprocess.run([sys.execu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606970161Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[96minput\u001b[0m=pickle.dumps(spec)) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.606992592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m272 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m (graph := fresh(spec)) \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607034108Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m273 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mif\u001b[0m child.returncode == UNREAD \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60706046Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m274 \u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m InvalidProtobuf(\u001b[0m\u001b[1;4;33mf\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33m{\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.6070835Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m275 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m \u001b[96mRuntimeError\u001b[0m(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mPreparin\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607108776Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33msays why\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607133982Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m276 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m graph \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60715731Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m277 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607180112Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607202114Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mInvalidProtobuf: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607225276Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607246576Z"} {"log":"\u001b[2;36m \u001b[0m could not be read \n","stream":"stdout","time":"2026-11-09T08:36:08.607267913Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607288266Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mDuring handling of the above exception, another \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607308754Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[3mexception occurred:\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607329828Z"} {"log":"\u001b[2;36m \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.607350513Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╭─\u001b[0m\u001b[31m──────\u001b[0m\u001b[31m \u001b[0m\u001b[1;31mTraceback \u001b[0m\u001b[1;2;31m(most recent call last)\u001b[0m\u001b[31m \u001b[0m\u001b[31m──────\u001b[0m\u001b[31m─╮\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607371013Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:180 in predict \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607414868Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607439555Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m177 \u001b[0m\u001b[2m│ │ \u001b[0minputs = text \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607459919Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m178 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607480971Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m179 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33m\"\u001b[0m\u001b[33mEither \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607504852Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m180 \u001b[2m│ \u001b[0mresponse = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run_inference(inputs\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607528396Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m181 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m ORJSONResponse(response) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607550125Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m182 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607571404Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m183 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607592092Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607636183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:200 in run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607667533Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607690057Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m197 \u001b[0m\u001b[2m│ \u001b[0moutputs = \u001b[94mawait\u001b[0m asyncio.gather(*runs. \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60771017Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m198 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mfor\u001b[0m output \u001b[95min\u001b[0m outputs: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607731785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m199 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[96misinstance\u001b[0m(output, \u001b[96mBaseExcepti\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607753592Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m200 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m output\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607776332Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m201 \u001b[0m\u001b[2m│ \u001b[0mresponse: InferenceResponse = { \u001b[2m# a \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607817671Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2mit reads\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607843357Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m202 \u001b[0m\u001b[2m│ │ \u001b[0mentry.model.identity[\u001b[94m1\u001b[0m].value: ou \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607865442Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m203 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mfor\u001b[0m entry, output \u001b[95min\u001b[0m \u001b[96mzip\u001b[0m(entries, \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607890685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607916251Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:192 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607938104Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607960211Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.607982126Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m189 \u001b[0m\u001b[2m│ │ \u001b[0mread.update(model.depends) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608003844Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608026345Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608050217Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60807532Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m192 \u001b[2m│ │ \u001b[0minputs = [payload, *\u001b[1;4m[\u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m runs[d\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608098701Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m193 \u001b[0m\u001b[2m│ │ \u001b[0mmodel = \u001b[94mawait\u001b[0m load(model) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608123263Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608146188Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608188411Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608212229Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60823296Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:193 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608255045Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _run_inference \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608276962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608296953Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m190 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m missing := [dep \u001b[94mfor\u001b[0m dep \u001b[95min\u001b[0m mod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608317195Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m191 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m400\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0me \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608339606Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0mmissing[\u001b[94m0\u001b[0m]\u001b[33m}\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608368965Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m192 \u001b[0m\u001b[2m│ │ \u001b[0minputs = [payload, *[\u001b[94mawait\u001b[0m runs[d \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608391261Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m193 \u001b[2m│ │ \u001b[0mmodel = \u001b[1;4;94mawait\u001b[0m\u001b[1;4m load(model)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608412549Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m194 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[94mawait\u001b[0m attempt(model, parti \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608434684Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m options=entry.options), MODEL_FILE_ERRORS \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608456408Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m195 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608476685Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m196 \u001b[0m\u001b[2m│ \u001b[0mruns = {entry.model.identity: asyncio \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608497575Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[95min\u001b[0m entries} \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608519118Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608558439Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:220 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608582695Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608607322Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608677497Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608701334Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m219 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608724811Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m220 \u001b[2m│ │ \u001b[0m\u001b[1;4;94mawait\u001b[0m\u001b[1;4m attempt(model, model.load, \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608748088Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m221 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m model \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608771628Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m222 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60879448Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m223 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60881639Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608838785Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:249 in attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608860278Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608882543Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m246 \u001b[0m\u001b[2m│ │ \u001b[0mlog.warning(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFailed to load \u001b[0m\u001b[33m{\u001b[0mmod \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608904142Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0mmodel.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m. Clearing cache.\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608928895Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m247 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.unload() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608953225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m248 \u001b[0m\u001b[2m│ │ \u001b[0mmodel.clear_cache() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.608995372Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m249 \u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m run(_attempt)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609022701Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m250 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609046579Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m251 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609066865Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m252 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92midle_shutdown_task\u001b[0m() -\u003e \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609087225Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609109683Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:215 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60912985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609150662Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m212 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mrun\u001b[0m[R](func: Callable[[], R]) - \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609170479Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m213 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mif\u001b[0m thread_pool \u001b[95mis\u001b[0m \u001b[94mNone\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609192049Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m214 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609214622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m215 \u001b[2m│ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[1;4;94mawait\u001b[0m\u001b[1;4m asyncio.get_running_loop\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609236183Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m216 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609258447Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m217 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609278894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m218 \u001b[0m\u001b[94masync\u001b[0m \u001b[94mdef\u001b[0m \u001b[92mload\u001b[0m[O: Options](model: Inferen \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609299243Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609339664Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/local/lib/python3.13/concurrent/futures/\u001b[0m\u001b[1mth\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60936548Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1mread.py\u001b[0m:59 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609388894Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609410981Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/\u001b[0m\u001b[1mmain.py\u001b[0m:231 in _attempt \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609430921Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609453406Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m228 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mif\u001b[0m \u001b[95mnot\u001b[0m model.loaded \u001b[95mand\u001b[0m model.loa \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609475045Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m229 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mraise\u001b[0m HTTPException(\u001b[94m500\u001b[0m, \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mFa\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60949913Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m230 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[94mtry\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609524205Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m231 \u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m func() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609547422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m232 \u001b[0m\u001b[2m│ │ \u001b[0m\u001b[1;4;94mexcept\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mFileNotFoundError\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;94mas\u001b[0m\u001b[1;4m e:\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609570565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m233 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4;94mif\u001b[0m\u001b[1;4m model.model_format == Mode\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609596043Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m234 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m e\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609651227Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609677878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/\u001b[0m\u001b[1mbase.py\u001b[0m:84 in load \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609699388Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.60972176Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 81 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609765831Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 82 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.load_attempts += \u001b[94m1\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609792367Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 83 \u001b[0m\u001b[2m│ │ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609815959Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 84 \u001b[2m│ │ │ \u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.download()\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609838733Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 85 \u001b[0m\u001b[2m│ │ │ \u001b[0mattempt = \u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mAttempt #\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.lo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609862526Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[94melse\u001b[0m \u001b[33m\"\u001b[0m\u001b[33mLoading\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609887959Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 86 \u001b[0m\u001b[2m│ │ │ \u001b[0mlog.info(\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33m{\u001b[0mattempt\u001b[33m}\u001b[0m\u001b[33m \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.mo \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609912094Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m'\u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_name\u001b[33m}\u001b[0m\u001b[33m'\u001b[0m\u001b[33m to memory\u001b[0m\u001b[33m\"\u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609938189Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 87 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[96mself\u001b[0m.session = \u001b[96mself\u001b[0m._load() \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609962554Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.609986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/usr/src/immich_ml/models/ocr/\u001b[0m\u001b[1mlegacy.py\u001b[0m:39 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610007807Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m download \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610030407Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.61005177Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m36 \u001b[0m\u001b[2m│ │ \u001b[0mlog.info( \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610075453Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m37 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[33mf\u001b[0m\u001b[33m\"\u001b[0m\u001b[33mDownloading \u001b[0m\u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_type \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.61011788Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[33m{\u001b[0m\u001b[96mself\u001b[0m.model_path\u001b[33m}\u001b[0m\u001b[33m. This may take a while.\u001b[0m\u001b[33m\"\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610145514Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m38 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610169307Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m39 \u001b[2m│ │ \u001b[0m\u001b[1;4mDownloadFile.run(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.61019173Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m40 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4mDownloadFileInput(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610214693Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m41 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[1;4mfile_url=model_info[\u001b[0m\u001b[1;4;33m\"\u001b[0m\u001b[1;4;33mmodel\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610237422Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[1;4msave_path=\u001b[0m\u001b[1;4;96mself\u001b[0m\u001b[1;4m.model_path, logger=log\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610261232Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m42 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[1;4m)\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610283957Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610306989Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610328231Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:41 in run \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610350276Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610372461Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 38 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mreturn\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610393962Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 39 \u001b[0m\u001b[2m│ │ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.61041687Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 40 \u001b[0m\u001b[2m│ │ \u001b[0mresponse = \u001b[96mcls\u001b[0m._make_http_request \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610441353Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 41 \u001b[2m│ │ \u001b[0m\u001b[1;4;96mcls\u001b[0m\u001b[1;4m._save_response_with_progress(\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610483622Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 42 \u001b[0m\u001b[2m│ \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.6105105Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 43 \u001b[0m\u001b[2m│ \u001b[0m\u001b[1;95m@staticmethod\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610533551Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 44 \u001b[0m\u001b[2m│ \u001b[0m\u001b[94mdef\u001b[0m \u001b[92m_ensure_parent_dir_exists\u001b[0m(path: P \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610556486Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610579954Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/rapidocr\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610601305Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/utils/\u001b[0m\u001b[1mdownload_file.py\u001b[0m:91 in \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.61065613Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m _save_response_with_progress \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610680752Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610702072Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 88 \u001b[0m\u001b[2m│ │ │ \u001b[0mdisable=\u001b[95mnot\u001b[0m \u001b[96mcls\u001b[0m.check_is_atty \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610723938Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 89 \u001b[0m\u001b[2m│ │ \u001b[0m) \u001b[94mas\u001b[0m progress_bar: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610747174Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 90 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94mwith\u001b[0m \u001b[96mopen\u001b[0m(save_path, \u001b[33m\"\u001b[0m\u001b[33mwb\u001b[0m\u001b[33m\"\u001b[0m) \u001b[94mas\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610770277Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 91 \u001b[2m│ │ │ │ \u001b[0m\u001b[94mfor\u001b[0m chunk \u001b[95min\u001b[0m \u001b[1;4mresponse.ite\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610795784Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 92 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0mprogress_bar.update(\u001b[96ml\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610821626Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 93 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0moutput_file.write(chu \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610845565Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 94 \u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610868153Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610909444Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/opt/venv/lib/python3.13/site-packages/requests\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610933522Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m/\u001b[0m\u001b[1mmodels.py\u001b[0m:826 in generate \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610955621Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610977813Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 823 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m DecodeError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.610999273Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 824 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m ContentDecodin \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611022651Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 825 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m ReadTimeoutError \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611045985Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[31m❱ \u001b[0m 826 \u001b[2m│ │ │ │ │ \u001b[0m\u001b[1;4;94mraise\u001b[0m\u001b[1;4m \u001b[0m\u001b[1;4;96mConnectionErro\u001b[0m \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611068963Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 827 \u001b[0m\u001b[2m│ │ │ │ \u001b[0m\u001b[94mexcept\u001b[0m SSLError \u001b[94mas\u001b[0m e: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611093024Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 828 \u001b[0m\u001b[2m│ │ │ │ │ \u001b[0m\u001b[94mraise\u001b[0m RequestsSSLErr \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.6111164Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m│\u001b[0m \u001b[2m 829 \u001b[0m\u001b[2m│ │ │ \u001b[0m\u001b[94melse\u001b[0m: \u001b[31m│\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611139446Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[31m╰─────────────────────────────────────────────────╯\u001b[0m\n","stream":"stdout","time":"2026-11-09T08:36:08.611165213Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;91mConnectionError: \u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:08.611189358Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1;35mHTTPSConnectionPool\u001b[0m\u001b[1m(\u001b[0m\u001b[33mhost\u001b[0m=\u001b[32m'www.modelscope.cn'\u001b[0m, \n","stream":"stdout","time":"2026-11-09T08:36:08.611210244Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[33mport\u001b[0m=\u001b[1;36m443\u001b[0m\u001b[1m)\u001b[0m: Read timed out. \n","stream":"stdout","time":"2026-11-09T08:36:08.611232615Z"} {"log":"\u001b[2;36m[11/09/26 08:36:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down due to inactivity. \n","stream":"stdout","time":"2026-11-09T08:36:10.76468178Z"} {"log":"\u001b[2;36m[11/09/26 08:36:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down \n","stream":"stdout","time":"2026-11-09T08:36:10.817185285Z"} {"log":"\u001b[2;36m[11/09/26 08:36:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application shutdown. \n","stream":"stdout","time":"2026-11-09T08:36:10.920811578Z"} {"log":"\u001b[2;36m[11/09/26 08:36:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application shutdown complete. \n","stream":"stdout","time":"2026-11-09T08:36:11.051859057Z"} {"log":"\u001b[2;36m[11/09/26 08:36:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Finished server process \u001b[1m[\u001b[0m\u001b[1;36m1935\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:11.056074685Z"} {"log":"\u001b[2;36m[11/09/26 08:36:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Worker \u001b[1m(\u001b[0mpi\u001b[1;92md:1935\u001b[0m\u001b[1m)\u001b[0m was sent SIGINT! \n","stream":"stdout","time":"2026-11-09T08:36:11.080799895Z"} {"log":"\u001b[2;36m[11/09/26 08:36:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m2198\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:11.095667297Z"} {"log":"\u001b[2;36m[11/09/26 08:36:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m2198\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T08:36:12.95700097Z"} {"log":"\u001b[2;36m[11/09/26 08:36:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-09T08:36:12.959223884Z"} {"log":"\u001b[2;36m[11/09/26 08:36:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-09T08:36:12.962387289Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-09T08:36:12.962431859Z"} {"log":"\u001b[2;36m[11/09/26 08:36:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-09T08:36:12.965590013Z"} {"log":"\u001b[2;36m[11/09/26 08:36:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-09T08:36:12.9683194Z"} {"log":"\u001b[2;36m[11/09/26 12:33:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T12:33:43.58184259Z"} {"log":"\u001b[2;36m[11/09/26 12:33:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:33:43.587225015Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:33:43.587365291Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:33:43.58738584Z"} {"log":"\u001b[2;36m[11/09/26 12:33:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T12:33:43.680666307Z"} {"log":"\u001b[2;36m[11/09/26 12:33:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:33:43.69072893Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:33:43.690885432Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:33:43.690900698Z"} {"log":"\u001b[2;36m[11/09/26 12:33:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-09T12:33:44.986754498Z"} {"log":"\u001b[2;36m[11/09/26 12:33:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:33:45.001008004Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:33:45.001073087Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:33:45.001087754Z"} {"log":"\u001b[2;36m[11/09/26 12:33:45]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T12:33:45.019810375Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T12:33:45.019938951Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:33:45.019954637Z"} {"log":"\u001b[2;36m[11/09/26 12:33:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T12:33:52.864783862Z"} {"log":"\u001b[2;36m[11/09/26 12:33:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:33:52.905782887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:33:52.905861563Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:33:52.905875607Z"} {"log":"\u001b[2;36m[11/09/26 12:34:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Failed to load detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T12:34:10.095104144Z"} {"log":"\u001b[2;36m \u001b[0m Clearing cache. \n","stream":"stdout","time":"2026-11-09T12:34:10.095189246Z"} {"log":"\u001b[2;36m[11/09/26 12:34:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Cleared cache directory for model \n","stream":"stdout","time":"2026-11-09T12:34:10.105649085Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m. \n","stream":"stdout","time":"2026-11-09T12:34:10.105719024Z"} {"log":"\u001b[2;36m[11/09/26 12:34:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T12:34:13.881884096Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:34:13.881999555Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T12:34:13.882065751Z"} {"log":"\u001b[2;36m[11/09/26 12:34:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T12:34:13.892825986Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T12:34:13.892893758Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T12:34:13.892906707Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:34:13.892918663Z"} {"log":"\u001b[2;36m[11/09/26 12:34:15]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m4.\u001b[0m60MB \n","stream":"stdout","time":"2026-11-09T12:34:15.803786101Z"} {"log":"\u001b[2;36m[11/09/26 12:34:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T12:34:58.06302866Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:34:58.063114656Z"} {"log":"\u001b[2;36m[11/09/26 12:34:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Attempt #\u001b[1;36m2\u001b[0m to load detection model \n","stream":"stdout","time":"2026-11-09T12:34:58.068280472Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-09T12:34:58.068391522Z"} {"log":"\u001b[2;36m[11/09/26 12:34:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:34:58.073080508Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:34:58.073147928Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:34:58.073165418Z"} {"log":"\u001b[2;36m[11/09/26 12:34:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T12:34:58.078768041Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/detection/\u001b[0m\u001b[95mmodel.onnx\u001b[0m for\n","stream":"stdout","time":"2026-11-09T12:34:58.07890758Z"} {"log":"\u001b[2;36m \u001b[0m CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:34:58.07892577Z"} {"log":"\u001b[0;93m2026-11-09 12:35:05.063364697 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T12:35:05.063750267Z"} {"log":"\u001b[2;36m[11/09/26 12:35:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Downloading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T12:35:08.855747254Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx.\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:35:08.855831286Z"} {"log":"\u001b[2;36m \u001b[0m This may take a while. \n","stream":"stdout","time":"2026-11-09T12:35:08.855880748Z"} {"log":"\u001b[2;36m[11/09/26 12:35:08]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initiating download: \n","stream":"stdout","time":"2026-11-09T12:35:08.862727018Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mhttps://www.modelscope.cn/models/RapidAI/RapidOCR/r\u001b[0m\n","stream":"stdout","time":"2026-11-09T12:35:08.862790878Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mesolve/v3.9.2/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mob\u001b[0m\n","stream":"stdout","time":"2026-11-09T12:35:08.862805645Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[4;94mile.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:35:08.862818026Z"} {"log":"\u001b[2;36m[11/09/26 12:35:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Download size: \u001b[1;36m15.\u001b[0m86MB \n","stream":"stdout","time":"2026-11-09T12:35:10.713527286Z"} {"log":"\u001b[2;36m[11/09/26 12:35:35]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Successfully saved to: \n","stream":"stdout","time":"2026-11-09T12:35:35.724579797Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:35:35.724723154Z"} {"log":"\u001b[2;36m[11/09/26 12:35:35]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-09T12:35:35.731490017Z"} {"log":"\u001b[2;36m \u001b[0m memory \n","stream":"stdout","time":"2026-11-09T12:35:35.731570563Z"} {"log":"\u001b[2;36m[11/09/26 12:35:35]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-09T12:35:35.738011012Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-09T12:35:35.738072465Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-09T12:35:35.738106031Z"} {"log":"\u001b[2;36m[11/09/26 12:35:35]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Preparing \n","stream":"stdout","time":"2026-11-09T12:35:35.74577887Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[35m/cache/ocr/PP-OCRv5_mobile/recognition/\u001b[0m\u001b[95mmodel.onnx\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:35:35.745872553Z"} {"log":"\u001b[2;36m \u001b[0m for CPUExecutionProvider \u001b[1m{\u001b[0m\u001b[32m'batch'\u001b[0m: \u001b[1;36m1\u001b[0m\u001b[1m}\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:35:35.745902537Z"} {"log":"\u001b[0;93m2026-11-09 12:35:40.383750170 [W:onnxruntime:, inference_session.cc:3040 Initialize] Serializing optimized model with Graph Optimization level greater than ORT_ENABLE_EXTENDED and the NchwcTransformer enabled. The generated model may contain hardware specific optimizations, and should only be used in the same environment the model was optimized in.\u001b[m\n","stream":"stderr","time":"2026-11-09T12:35:40.384171621Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down due to inactivity. \n","stream":"stdout","time":"2026-11-09T12:46:44.039428506Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down \n","stream":"stdout","time":"2026-11-09T12:46:44.082571642Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application shutdown. \n","stream":"stdout","time":"2026-11-09T12:46:44.188987348Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application shutdown complete. \n","stream":"stdout","time":"2026-11-09T12:46:44.307185728Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Finished server process \u001b[1m[\u001b[0m\u001b[1;36m2198\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:46:44.309969078Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Worker \u001b[1m(\u001b[0mpi\u001b[1;92md:2198\u001b[0m\u001b[1m)\u001b[0m was sent SIGINT! \n","stream":"stdout","time":"2026-11-09T12:46:44.337217049Z"} {"log":"\u001b[2;36m[11/09/26 12:46:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m5526\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:46:44.35040529Z"} {"log":"\u001b[2;36m[11/09/26 12:46:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m5526\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-09T12:46:46.122703184Z"} {"log":"\u001b[2;36m[11/09/26 12:46:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-09T12:46:46.125115274Z"} {"log":"\u001b[2;36m[11/09/26 12:46:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-09T12:46:46.128761115Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-09T12:46:46.128812064Z"} {"log":"\u001b[2;36m[11/09/26 12:46:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-09T12:46:46.132269243Z"} {"log":"\u001b[2;36m[11/09/26 12:46:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-09T12:46:46.135108296Z"} {"log":"\u001b[2;36m[11/10/26 07:43:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-10T07:43:50.91741338Z"} {"log":"\u001b[2;36m[11/10/26 07:43:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T07:43:50.934811288Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T07:43:50.934946795Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T07:43:50.934963559Z"} {"log":"\u001b[2;36m[11/10/26 07:43:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-10T07:43:52.240880839Z"} {"log":"\u001b[2;36m[11/10/26 07:43:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-10T07:43:52.267286703Z"} {"log":"\u001b[2;36m[11/10/26 07:43:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T07:43:52.46824581Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T07:43:52.468342117Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T07:43:52.468358468Z"} {"log":"\u001b[2;36m[11/10/26 07:43:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-10T07:43:59.237770317Z"} {"log":"\u001b[2;36m \u001b[0m memory \n","stream":"stdout","time":"2026-11-10T07:43:59.237888456Z"} {"log":"\u001b[2;36m[11/10/26 07:43:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-10T07:43:59.761099303Z"} {"log":"\u001b[2;36m[11/10/26 07:43:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T07:43:59.771598644Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T07:43:59.771726876Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T07:43:59.771741954Z"} {"log":"\u001b[2;36m[11/10/26 07:54:09]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down due to inactivity. \n","stream":"stdout","time":"2026-11-10T07:54:09.478330398Z"} {"log":"\u001b[2;36m[11/10/26 07:54:09]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Shutting down \n","stream":"stdout","time":"2026-11-10T07:54:09.483678396Z"} {"log":"\u001b[2;36m[11/10/26 07:54:09]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application shutdown. \n","stream":"stdout","time":"2026-11-10T07:54:09.589686469Z"} {"log":"\u001b[2;36m[11/10/26 07:54:09]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m20632\u001b[0m \n","stream":"stdout","time":"2026-11-10T07:54:09.778987702Z"} {"log":"\u001b[2;36m[11/10/26 07:54:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m20632\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-10T07:54:11.566861457Z"} {"log":"\u001b[2;36m[11/10/26 07:54:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-10T07:54:11.569585668Z"} {"log":"\u001b[2;36m[11/10/26 07:54:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-10T07:54:11.573422149Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-10T07:54:11.573509079Z"} {"log":"\u001b[2;36m[11/10/26 07:54:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-10T07:54:11.576998662Z"} {"log":"\u001b[2;36m[11/10/26 07:54:11]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-10T07:54:11.579837704Z"} {"log":"\u001b[2;36m[11/10/26 08:15:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading visual model \u001b[32m'ViT-B-32__openai'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-10T08:15:50.615434685Z"} {"log":"\u001b[2;36m[11/10/26 08:15:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T08:15:50.623120694Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T08:15:50.623232747Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T08:15:50.623247469Z"} {"log":"\u001b[2;36m[11/10/26 08:15:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T08:15:51.905294209Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T08:15:51.905400806Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T08:15:51.905439108Z"} {"log":"\u001b[2;36m[11/10/26 08:15:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading detection model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to memory\n","stream":"stdout","time":"2026-11-10T08:15:51.970372827Z"} {"log":"\u001b[2;36m[11/10/26 08:15:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Setting execution providers to \n","stream":"stdout","time":"2026-11-10T08:15:51.988900588Z"} {"log":"\u001b[2;36m \u001b[0m \u001b[1m[\u001b[0m\u001b[32m'CPUExecutionProvider'\u001b[0m\u001b[1m]\u001b[0m, in descending order of \n","stream":"stdout","time":"2026-11-10T08:15:51.989037158Z"} {"log":"\u001b[2;36m \u001b[0m preference \n","stream":"stdout","time":"2026-11-10T08:15:51.98905164Z"} {"log":"\u001b[2;36m[11/10/26 08:15:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'PP-OCRv5_mobile'\u001b[0m to \n","stream":"stdout","time":"2026-11-10T08:15:57.564767449Z"} {"log":"\u001b[2;36m \u001b[0m memory \n","stream":"stdout","time":"2026-11-10T08:15:57.564878595Z"} {"log":"\u001b[2;36m[11/10/26 08:16:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Loading recognition model \u001b[32m'buffalo_l'\u001b[0m to memory \n","stream":"stdout","time":"2026-11-10T08:16:00.507761216Z"} {"log":"\u001b[2;36m[11/10/26 08:21:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application shutdown complete. \n","stream":"stdout","time":"2026-11-10T08:21:12.089604409Z"} {"log":"\u001b[2;36m[11/10/26 08:21:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Finished server process \u001b[1m[\u001b[0m\u001b[1;36m20632\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-10T08:21:12.092225873Z"} {"log":"\u001b[2;36m[11/10/26 08:21:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[33mWARNING \u001b[0m Worker \u001b[1m(\u001b[0mpi\u001b[1;92md:2063\u001b[0m2\u001b[1m)\u001b[0m was sent SIGINT! \n","stream":"stdout","time":"2026-11-10T08:21:12.11806186Z"} {"log":"\u001b[2;36m[11/10/26 08:21:12]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Booting worker with pid: \u001b[1;36m21010\u001b[0m \n","stream":"stdout","time":"2026-11-10T08:21:12.132275164Z"} {"log":"\u001b[2;36m[11/10/26 08:21:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Started server process \u001b[1m[\u001b[0m\u001b[1;36m21010\u001b[0m\u001b[1m]\u001b[0m \n","stream":"stdout","time":"2026-11-10T08:21:13.968697563Z"} {"log":"\u001b[2;36m[11/10/26 08:21:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Waiting for application startup. \n","stream":"stdout","time":"2026-11-10T08:21:13.970988402Z"} {"log":"\u001b[2;36m[11/10/26 08:21:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created in-memory cache with unloading after 300s \n","stream":"stdout","time":"2026-11-10T08:21:13.974482378Z"} {"log":"\u001b[2;36m \u001b[0m of inactivity. \n","stream":"stdout","time":"2026-11-10T08:21:13.97453453Z"} {"log":"\u001b[2;36m[11/10/26 08:21:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Initialized request thread pool with \u001b[1;36m4\u001b[0m threads. \n","stream":"stdout","time":"2026-11-10T08:21:13.977788321Z"} {"log":"\u001b[2;36m[11/10/26 08:21:13]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Application startup complete. \n","stream":"stdout","time":"2026-11-10T08:21:13.980335742Z"}