Firma Mozilla rozwija narzędzie do rozpoznawania mowy Whisperfile, które obejmuje niezależną, wysoko wydajną implementację modelu uczenia maszynowego Whisper, opracowanego i udostępnionego przez organizację OpenAI. Narzędzie zostało stworzone na bazie whisper.cpp, implementacji modelu Whisper w C/C++, opracowanej przez Georgija Gerganowa (autora llama.cpp). Kod jest napisany w języku C++ i jest rozpowszechniany na licencji MIT.
Whisperfile rozwija się w zespole Mozilla Ocho i uzupełnia projekt llamafile, który ma na celu tworzenie uniwersalnych plików wykonywalnych do uruchamiania dużych modeli językowych (LLM). Podobnie jak llamafile, projekt whisperfile pozwala na generowanie pliku wykonywalnego na podstawie pliku z parametrami modelu uczenia maszynowego w formacie GGUF, który można uruchamiać w różnych systemach operacyjnych na sprzęcie z procesorami AMD64 i ARM64. Skompilowany kod może być powiązany ze standardową biblioteką C Cosmopolitan, co pozwala na tworzenie aplikacji uruchamianych w Linux, FreeBSD, macOS, OpenBSD, NetBSD i Windows.
Podczas uruchamiania pliku wykonywalnego jako parametr wejściowy przekazywany jest plik dźwiękowy mowy w formacie wav, mp3, ogg lub flac, a na wyjściu zapisywany jest rozpoznany tekst. W praktyce projekt może być stosowany do takich zadań jak generowanie napisów do filmów, tworzenie logów głosowych i wideo połączeń, przekształcanie nagranych materiałów głosowych w tekst oraz organizowanie wejścia głosowego. Dzięki Whisperfile podobne zadania mogą być wykonywane na lokalnym systemie bez potrzeby korzystania z zewnętrznych usług.
Dodatkowo wspierana jest rola serwera HTTP, który obsługuje zapytania o rozpoznawanie mowy za pośrednictwem interfejsu Web API. Aby przyspieszyć pracę z modelem, można wykorzystać GPU i instrukcje AVX. Narzędzie może również zwracać współczynniki wiarygodności, co pozwala na kolorowanie rozpoznanych słów w zależności od dokładności ich rozpoznania.

Model Whisper została wytrenowana na 680 tysiącach godzin danych głosowych, obejmujących różne tematy i języki (2/3 danych w języku angielskim). Model dobrze radzi sobie z rozpoznawaniem mowy z akcentem, rozpoznaje żargon techniczny, wspiera automatyczne rozpoznawanie języka i może działać w obecności hałasu tła. Dla mowy w języku angielskim system wykazuje poziom niezawodności i dokładności rozpoznawania zbliżony do rozpoznawania przez człowieka. Oprócz transkrypcji mowy na tekst, model może być również stosowany do tłumaczenia mowy na inny język.
Źródło: opennet.ru
