- Зачем:
- onnx-asr модель должна создаваться с квантизацией и VAD для разбивки аудио на сегменты.
- Что:
- метод create_model вызывает onnx_asr.load_model с квантизацией и cpu_preprocessing=True.
- подгружается Silero VAD, прикрепляется к модели через with_vad.
- написаны 3 теста: проверка аргументов load_model, загрузка VAD, передача fp16.
- Проверка:
- uv run pytest tests/test_onnx_asr.py -v
- Зачем:
- Бэкенд должен резолвить алиасы моделей и сохранять compute_type для дальнейшего использования.
- Что:
- добавлен конструктор __init__ с полями actual_compute_type, _resolved_model_id, _vad.
- метод ensure_model_available валидирует алиас и возвращает идентификатор модели onnx-asr.
- написаны 3 теста на резолвинг и сохранение compute_type.
- Проверка:
- uv run pytest tests/test_onnx_asr.py -v
- Зачем:
- 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