File tree Expand file tree Collapse file tree 1 file changed +7
-1
lines changed
src/faster_whisper_server Expand file tree Collapse file tree 1 file changed +7
-1
lines changed Original file line number Diff line number Diff line change 88from typing import TYPE_CHECKING
99
1010from faster_whisper import WhisperModel
11- from piper .voice import PiperVoice
1211
1312from faster_whisper_server .hf_utils import get_piper_voice_model_file
1413
1514if TYPE_CHECKING :
1615 from collections .abc import Callable
1716
17+ from piper .voice import PiperVoice
18+
1819 from faster_whisper_server .config import (
1920 WhisperConfig ,
2021 )
2122
2223logger = logging .getLogger (__name__ )
2324
25+
2426# TODO: enable concurrent model downloads
2527
2628
@@ -147,6 +149,8 @@ def __init__(self, ttl: int) -> None:
147149 self ._lock = threading .Lock ()
148150
149151 def _load_fn (self , model_id : str ) -> PiperVoice :
152+ from piper .voice import PiperVoice
153+
150154 model_path = get_piper_voice_model_file (model_id )
151155 return PiperVoice .load (model_path )
152156
@@ -163,6 +167,8 @@ def unload_model(self, model_name: str) -> None:
163167 self .loaded_models [model_name ].unload ()
164168
165169 def load_model (self , model_name : str ) -> SelfDisposingModel [PiperVoice ]:
170+ from piper .voice import PiperVoice
171+
166172 with self ._lock :
167173 if model_name in self .loaded_models :
168174 logger .debug (f"{ model_name } model already loaded" )
You can’t perform that action at this time.
0 commit comments