- Зачем: - onnx-asr бэкенд должен распознавать короткие алиасы (gigaam-v3, parakeet-v3) и raw-имена (nemo-canary-1b-v2). - Что: - создан файл backends/onnx_asr.py с MODEL_ALIASES и классом OnnxAsrBackend. - метод _resolve_model: преобразует алиасы, пропускает raw-имена, выдаёт ValueError для неизвестных. - написаны 4 теста на разрешение алиасов. - Проверка: - uv run pytest tests/test_onnx_asr.py::TestModelAliases -v
27 lines
920 B
Python
27 lines
920 B
Python
"""Tests for onnx-asr backend."""
|
|
|
|
import pytest
|
|
from local_transcriber.backends.onnx_asr import OnnxAsrBackend, MODEL_ALIASES
|
|
|
|
|
|
class TestModelAliases:
|
|
def test_gigaam_v3_resolves(self):
|
|
backend = OnnxAsrBackend()
|
|
result = backend._resolve_model("gigaam-v3")
|
|
assert result == "gigaam-v3-ctc"
|
|
|
|
def test_parakeet_v3_resolves(self):
|
|
backend = OnnxAsrBackend()
|
|
result = backend._resolve_model("parakeet-v3")
|
|
assert result == "nemo-parakeet-tdt-0.6b-v3"
|
|
|
|
def test_raw_name_passes_through(self):
|
|
backend = OnnxAsrBackend()
|
|
result = backend._resolve_model("nemo-canary-1b-v2")
|
|
assert result == "nemo-canary-1b-v2"
|
|
|
|
def test_unknown_alias_raises(self):
|
|
backend = OnnxAsrBackend()
|
|
with pytest.raises(ValueError, match="Неподдерживаемая модель"):
|
|
backend._resolve_model("nonexistent-model")
|