fix: make faster_whisper dependency optional

- Add try/except import for faster_whisper
- Gracefully handle missing dependency with warning
- Prevents import errors on systems without faster_whisper
This commit is contained in:
zhangxindong 2025-07-08 10:40:00 +08:00
parent d65e126486
commit d2706a5fe4

View File

@ -3,7 +3,10 @@ import os.path
import re
from timeit import default_timer as timer
from faster_whisper import WhisperModel
try:
from faster_whisper import WhisperModel
except ImportError:
WhisperModel = None
from loguru import logger
from app.config import config
@ -17,6 +20,9 @@ model = None
def create(audio_file, subtitle_file: str = ""):
global model
if WhisperModel is None:
logger.warning("faster_whisper not available, skipping whisper subtitle generation")
return ""
if not model:
model_path = f"{utils.root_dir()}/models/whisper-{model_size}"
model_bin_file = f"{model_path}/model.bin"