From 629e04105b49fd2f62eb15e7e3cb2ac9bec1dd5f Mon Sep 17 00:00:00 2001 From: Nicolas Mowen Date: Fri, 6 Jun 2025 08:23:25 -0600 Subject: [PATCH] Cleanup embeddings typing --- frigate/comms/embeddings_updater.py | 17 ++++++++++++++--- frigate/comms/inter_process.py | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/frigate/comms/embeddings_updater.py b/frigate/comms/embeddings_updater.py index f97319051..58829733b 100644 --- a/frigate/comms/embeddings_updater.py +++ b/frigate/comms/embeddings_updater.py @@ -1,10 +1,14 @@ """Facilitates communication between processes.""" +import logging from enum import Enum from typing import Any, Callable import zmq +logger = logging.getLogger(__name__) + + SOCKET_REP_REQ = "ipc:///tmp/cache/embeddings" @@ -41,9 +45,16 @@ class EmbeddingsResponder: break try: - (topic, value) = self.socket.recv_json(flags=zmq.NOBLOCK) + raw = self.socket.recv_json(flags=zmq.NOBLOCK) - response = process(topic, value) + if isinstance(raw, list): + (topic, value) = raw + response = process(topic, value) + else: + logging.warning( + f"Received unexpected data type in ZMQ recv_json: {type(raw)}" + ) + response = None if response is not None: self.socket.send_json(response) @@ -65,7 +76,7 @@ class EmbeddingsRequestor: self.socket = self.context.socket(zmq.REQ) self.socket.connect(SOCKET_REP_REQ) - def send_data(self, topic: str, data: Any) -> str: + def send_data(self, topic: str, data: Any) -> Any: """Sends data and then waits for reply.""" try: self.socket.send_json((topic, data)) diff --git a/frigate/comms/inter_process.py b/frigate/comms/inter_process.py index f15b3feed..e4aad9107 100644 --- a/frigate/comms/inter_process.py +++ b/frigate/comms/inter_process.py @@ -47,7 +47,7 @@ class InterProcessCommunicator(Communicator): response = self._dispatcher(topic, value) else: logging.warning( - f"Received unexpected data type in ZMQ inter-process: {type(raw)}" + f"Received unexpected data type in ZMQ recv_json: {type(raw)}" ) response = None