Fix Faster Whisper large transcription (#524)

This commit is contained in:
Chidi Williams 2023-07-04 23:42:41 +01:00 committed by GitHub
commit fb93be4296
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 5 deletions

View file

@ -24,6 +24,11 @@ class WhisperModelSize(enum.Enum):
MEDIUM = 'medium'
LARGE = 'large'
def to_faster_whisper_model_size(self) -> str:
if self == WhisperModelSize.LARGE:
return "large-v2"
return self.value
class ModelType(enum.Enum):
WHISPER = 'Whisper'
@ -159,10 +164,8 @@ class ModelDownloader(QRunnable):
return super().close()
if self.model.model_type == ModelType.FASTER_WHISPER:
model_size = self.model.whisper_model_size.value \
if self.model.whisper_model_size != WhisperModelSize.LARGE \
else "large-v2"
model_path = download_faster_whisper_model(size=model_size, tqdm_class=_tqdm)
model_path = download_faster_whisper_model(
size=self.model.whisper_model_size.to_faster_whisper_model_size(), tqdm_class=_tqdm)
self.signals.finished.emit(model_path)
return

View file

@ -332,7 +332,7 @@ class WhisperFileTranscriber(FileTranscriber):
@classmethod
def transcribe_faster_whisper(cls, task: FileTranscriptionTask) -> List[Segment]:
model = faster_whisper.WhisperModel(
model_size_or_path=task.transcription_options.model.whisper_model_size.value)
model_size_or_path=task.transcription_options.model.whisper_model_size.to_faster_whisper_model_size())
whisper_segments, info = model.transcribe(audio=task.file_path,
language=task.transcription_options.language,
task=task.transcription_options.task.value,