- Зачем:
- добавлена локальная транскрипция смешанной речи и русского текста с пунктуацией.
- Что:
- onnx-asr обновлён до 0.12 и зарегистрированы три модели GigaAM.
- выбор compute_type учитывает опубликованные квантизации и явность настройки.
- обновлены тесты, README и требования PRD.
- Проверка:
- uv run pytest -q: 223 passed, 1 skipped.
- выполнены smoke- и полные прогоны четырёх GigaAM-моделей.
- Зачем:
- OpenVINO backend хардкодил "CPU", хотя Intel Arc GPU доступен и даёт ~2x ускорение.
- Что:
- новые device modes: --device openvino-gpu, openvino-cpu; openvino — авто-детект GPU/CPU.
- detect_device() проверяет Intel GPU через OpenVINO Core API (с fail-safe).
- OpenVINOBackend передаёт "GPU"/"CPU" в WhisperPipeline вместо хардкода "CPU".
- подсказка "Совет: --model large-v3" при наличии GPU и модели не large-v3.
- .gitattributes для нормализации line endings (eol=lf).
- 150 тестов, включая GPU detection, routing, fallback, CLI device info.
- README, docs/gpu.md, docs/PRD.md обновлены для Intel GPU.
- Проверка:
- uv run pytest (150 passed).
- uv run transcribe --device openvino-gpu file.mp4 на Intel Arc 140T GPU.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Зачем:
- зафиксировать архитектурное решение по GPU runtime и rejected alternatives,
чтобы не переизобретать отклонённые подходы в будущем.
- Что:
- создан docs/adr/001-cuda-bootstrap.md (контекст, решение, tradeoffs, альтернативы).
- PRD 4.2: исправлено описание CUDA-зависимостей (cuDNN не нужен, cuBLAS из pip).
- plan.md: добавлен выполненный шаг 5.1 со ссылкой на ADR.
- удалены docs/plan-gpu-runtime.md и отчёты ревью (review-stages-*).
- Проверка:
- cat docs/adr/001-cuda-bootstrap.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- устранены пробелы в плане: недостающие тесты, неописанные параметры, архитектурные расхождения.
- Что:
- detect_device() возвращает только str (device), compute-type независим от него.
- добавлен get_gpu_name() для человекочитаемой строки устройства в шапке markdown.
- добавлен on_segment callback в transcribe() для --verbose без переделки API.
- добавлено поле device_used в TranscribeResult (фактическое устройство после fallback).
- добавлены тесты: test_utils.py (9 тестов), test_transcriber.py (4 mock-теста).
- выровнено поведение пустой речи: файл с шапкой + *Речь не обнаружена.* в теле (PRD и plan).
- добавлены импорты Callable, datetime, Path в заглушки шага 1.
- убраны строки с git add -A / git commit из всех шагов.
- Проверка:
- открыть docs/plan.md и docs/PRD.md и убедиться в согласованности.
- Зачем:
- зафиксированы требования к проекту и план разработки для выравнивания команды.
- Что:
- добавлен docs/PRD.md с требованиями к продукту.
- добавлен docs/plan.md с планом реализации.
- Проверка:
- открыть docs/PRD.md и docs/plan.md и убедиться в корректности содержимого.