From b9e72d2b9a2f3df0ffc85be3fcaeed7a2eddfb23 Mon Sep 17 00:00:00 2001 From: Quentin Fuxa Date: Wed, 11 Feb 2026 22:10:00 +0100 Subject: [PATCH] add probability field to ASRToken fixes #330, fixes #313 --- whisperlivekit/local_agreement/backends.py | 2 +- whisperlivekit/timed_objects.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/whisperlivekit/local_agreement/backends.py b/whisperlivekit/local_agreement/backends.py index 303aad8..001e13e 100644 --- a/whisperlivekit/local_agreement/backends.py +++ b/whisperlivekit/local_agreement/backends.py @@ -151,7 +151,7 @@ class FasterWhisperASR(ASRBase): if segment.no_speech_prob > 0.9: continue for word in segment.words: - token = ASRToken(word.start, word.end, word.word) + token = ASRToken(word.start, word.end, word.word, probability=word.probability) tokens.append(token) return tokens diff --git a/whisperlivekit/timed_objects.py b/whisperlivekit/timed_objects.py index 0004a21..80b0276 100644 --- a/whisperlivekit/timed_objects.py +++ b/whisperlivekit/timed_objects.py @@ -39,10 +39,11 @@ class TimedText(Timed): @dataclass() class ASRToken(TimedText): - + probability: Optional[float] = None + def with_offset(self, offset: float) -> "ASRToken": """Return a new token with the time offset added.""" - return ASRToken(self.start + offset, self.end + offset, self.text, self.speaker, detected_language=self.detected_language) + return ASRToken(self.start + offset, self.end + offset, self.text, self.speaker, detected_language=self.detected_language, probability=self.probability) def is_silence(self) -> bool: return False