Fix: подавление логов VoskAPI при загрузке модели
- KALDI_VERBOSITY=0 для отключения логирования - Перенаправление stderr во время загрузки модели - Логи Kaldi больше не засоряют вывод Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
parent
763b33026a
commit
3f5d37db38
|
|
@ -17,18 +17,19 @@ class SpeechRecognizer:
|
|||
self.model = None
|
||||
self.recognizer = None
|
||||
|
||||
# Отключаем логирование VoskAPI/Kaldi
|
||||
os.environ["KALDI_VERBOSITY"] = "0"
|
||||
|
||||
def load_model(self):
|
||||
if not self.enabled:
|
||||
return
|
||||
|
||||
# Отключаем логирование VoskAPI чтобы не засорять логи
|
||||
import logging as py_logging
|
||||
py_logging.getLogger("VoskAPI").setLevel(py_logging.ERROR)
|
||||
|
||||
try:
|
||||
if self.model_name == "vosk":
|
||||
from vosk import Model, KaldiRecognizer
|
||||
import json
|
||||
import sys
|
||||
import io
|
||||
|
||||
# Путь к модели в папке проекта
|
||||
model_path = "./models/vosk/vosk-model-ru-0.22"
|
||||
|
|
@ -36,8 +37,15 @@ class SpeechRecognizer:
|
|||
logger.error(f"Модель Vosk не найдена по пути {model_path}")
|
||||
return
|
||||
|
||||
# Временно отключаем stderr для подавления логов Kaldi
|
||||
old_stderr = sys.stderr
|
||||
sys.stderr = io.StringIO()
|
||||
|
||||
self.model = Model(model_path)
|
||||
|
||||
# Восстанавливаем stderr
|
||||
sys.stderr = old_stderr
|
||||
|
||||
elif self.model_name == "whisper":
|
||||
from faster_whisper import WhisperModel
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue