diff --git a/server/reflector/processors/audio_diarization.py b/server/reflector/processors/audio_diarization.py index d69f4b80..82c6a553 100644 --- a/server/reflector/processors/audio_diarization.py +++ b/server/reflector/processors/audio_diarization.py @@ -7,7 +7,13 @@ class AudioDiarizationProcessor(Processor): OUTPUT_TYPE = TitleSummary async def _push(self, data: AudioDiarizationInput): - diarization = await self._diarize(data) + try: + self.logger.info("Diarization started", audio_file_url=data.audio_url) + diarization = await self._diarize(data) + self.logger.info("Diarization finished") + except Exception: + self.logger.exception("Diarization failed after retrying") + raise # now reapply speaker to topics (if any) # topics is a list[BaseModel] with an attribute words diff --git a/server/reflector/processors/audio_diarization_modal.py b/server/reflector/processors/audio_diarization_modal.py index 3c8d1b45..52be7c5d 100644 --- a/server/reflector/processors/audio_diarization_modal.py +++ b/server/reflector/processors/audio_diarization_modal.py @@ -22,21 +22,15 @@ class AudioDiarizationModalProcessor(AudioDiarizationProcessor): "audio_file_url": data.audio_url, "timestamp": 0, } - self.logger.info("Diarization started", audio_file_url=data.audio_url) async with httpx.AsyncClient() as client: - try: - response = await client.post( - self.diarization_url, - headers=self.headers, - params=params, - timeout=None, - ) - response.raise_for_status() - self.logger.info("Diarization finished") - return response.json()["text"] - except Exception: - self.logger.exception("Diarization failed after retrying") - raise + response = await client.post( + self.diarization_url, + headers=self.headers, + params=params, + timeout=None, + ) + response.raise_for_status() + return response.json()["text"] AudioDiarizationAutoProcessor.register("modal", AudioDiarizationModalProcessor)