Локальная транскрибация на Mac: почему одной модели недостаточно для точного распознавания
Природа работы в сфере ИИ и забота о детях стали причиной создания уникального инструмента для macOS: бесплатного приложения для локальной расшифровки встреч. Автор проекта протестировал 32 конфигурации нейросетей, чтобы решить дилемму между точностью разговорной речи и грамотным распознаванием сложной терминологии. В результате была выведена гибридная стратегия, использующая каскад из двух моделей, который снизил количество ошибок почти на 5 процентных пунктов по сравнению с отдельными решениями.
# Локальная транскрибация на Mac: почему одной модели недостаточно для точного распознавания
В современном удаленном формате работы встречи становятся неотъемлемой частью профессионального дня. Однако забота о семье часто вносит коррективы: бессонные ночи и необходимость уделить внимание ребенку могут привести к тому, что важные детали разговоров забываются. Кто именно принял решение о бюджете, что было сказано в конце обсуждения и какие обязательства были озвучены — эти вопросы теряются в хаосе. Чтобы решить эту проблему без передачи конфиденциальных данных сторонним облачным сервисам, автор проекта создал инструмент для локальной расшифровки на macOS.
Проект, получивший название «Рекордер», возник из необходимости найти баланс между безопасностью данных и качеством распознавания. Стандартные решения часто предлагают подписки или требуют отправки аудио на сервера крупных компаний, что неприемлемо при обсуждении внутренней политики, кадровых вопросов и финансовых договоренностей. Целью стало создание программного обеспечения, которое работает полностью на устройстве пользователя, обеспечивая полную конфиденциальность контента.
Архитектура поиска: от облака к локальному движку
Первым шагом стало отсеивание коммерческих решений. Даже если бы бюджет не был ограниченным, автор решил не платить за инструменты, которые требуют передачи голоса третьим лицам. Ограничив поиск открытыми и локальными решениями, в поле зрения попали такие популярные модели, как Whisper, Parakeet и GigaAM.
В ходе предварительных тестов стало очевидно, что универсального «волшебного булыжника» не существует. Whisper, ставший золотым стандартом в индустрии, показал стабильные результаты, но часто терпел неудачи при распознавании специфических IT-сленгов и технических терминов. Напротив, специализированные модели, такие как GigaAM, отлично справлялись с русскоязычной речью и пунктуацией, но иногда ошибались в названиях продуктов или английском сленге.
Автор протестировал 32 различные конфигурации, включая разные версии моделей (large-v2, large-v3, turbo), методы квантования и различные промпты. В качестве критерия оценки использовалась метрика WER (Word Error Rate), которая учитывает замены, пропуски и вставки слов по сравнению с эталонным текстом.
Каскад моделей: синергия двух подходов
Поскольку ни одна модель не смогла идеально покрыть все сценарии, была разработана гибридная система — каскад из двух моделей.
1. Первая модель (GigaAM): Отвечает за формирование основы текста. Эта модель демонстрирует превосходство в распознавании обычной русскоязычной речи, обеспечивая высокую точность грамматики и пунктуации. 2. Вторая модель (Parakeet): Специализируется на исправлении неточностей. Она распознает тот же фрагмент аудио независимо, но с упором на техническую лексику и англоязычные термины.
Алгоритм работы системы построен на сравнении результатов обоих проходов. Если модель, исправляющая ошибки, предлагает вариант с латиницей (например, «AppKit»), а версия с русским текстом содержит ошибку («апкид»), система автоматически подменяет неверное слово. Этот процесс контролируется порогом схожести звучания, чтобы избежать ложных замен.
Результаты экспериментов на датасетах, включающих записи рабочих встреч и технические термины, оказались многообещающими. Внедрение каскада позволило снизить общий показатель WER с 27,0% до 21,7%. Это означает, что каждая пятая ошибка в исходном тексте была успешно исправлена.
Технические детали и ограничения
Разработка такого решения не является тривиальной задачей. Для корректного сравнения текстов автору пришлось создать специализированный инструмент для анализа различий. Также был разработан собственный эвристический метод оценки (WERx), учитывающий фонетическое сходство слов. Например, замена слова «Cloud» на «клот» считается ошибкой, но если модель пишет «клауд», это может быть признано допустимым отклонением в зависимости от контекста и настроек порогов.
Особое внимание было уделено анализу скорости работы (Real-Time Factor — RTF). Даже при использовании мощного процессора Intel Core i9, каскадный подход требует дополнительного времени на обработку. Однако для задач пост-обработки записей встреч это время остается приемлемым, составляя около 18 минут на обработку одного часа аудио.
Попробовав альтернативные методы, такие как использование больших словарей терминов или наложение перекрытий при обработке аудиофрагментов, автор пришел к выводу, что они не давали устойчивого улучшения качества. Словари часто вносили новые ошибки на длинных записях, а метод перекрытия не решал проблему распознавания слов на границах фраз.
Таким образом, итоговое решение представляет собой компромисс между скоростью и точностью, основанный на тщательном анализе данных. Для пользователя это означает бесплатное приложение для Mac, позволяющее транскрибировать видеозаписи и аудиофайлы локально, гарантируя, что ни один голос, ни одно слово не покинет его компьютер.