feat(transcriber): реализована обёртка над faster-whisper (шаг 3)
- Зачем: - необходим модуль транскрипции с CUDA fallback для основного flow приложения. - Что: - добавлена зависимость faster-whisper>=1.2.1 в pyproject.toml. - реализована функция transcribe() с fallback CUDA→CPU на всех этапах (загрузка модели, вызов transcribe, итерация сегментов). - исправлен IndexError в get_gpu_name() при пустом stdout nvidia-smi. - добавлено 6 тестов в test_transcriber.py и 1 тест в test_utils.py (16 тестов зелёные). - Проверка: - uv run pytest -v (16 passed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -65,6 +65,16 @@ def test_get_gpu_name_no_nvidia_smi():
|
||||
assert result is None
|
||||
|
||||
|
||||
def test_get_gpu_name_empty_stdout():
|
||||
"""nvidia-smi returns 0 but stdout is empty — should return None, not crash."""
|
||||
mock_result = subprocess.CompletedProcess(
|
||||
args=[], returncode=0, stdout="", stderr=""
|
||||
)
|
||||
with patch("subprocess.run", return_value=mock_result):
|
||||
result = get_gpu_name()
|
||||
assert result is None
|
||||
|
||||
|
||||
def test_get_gpu_name_success():
|
||||
mock_result = subprocess.CompletedProcess(
|
||||
args=[], returncode=0, stdout="NVIDIA GeForce RTX 3060\n", stderr=""
|
||||
|
||||
Reference in New Issue
Block a user