Bachelor's Thesis

Automatic speech recognizer running in web browser.

Final Thesis 5.45 MB

Author of thesis: Bc. Jaromír Kleveta

Acad. year: 2025/2026

Supervisor: Ing. Igor Szőke, Ph.D.

Reviewer: Ing. Petr Schwarz, Ph.D.

Abstract:

This thesis focuses on the design and implementation of a web application for automatic speech recognition that operates offline directly within a web browser. It provides an overview of speech processing and modern ASR models. The thesis describes the integration of Whisper family models and the NeMo Parakeet model using ONNX Runtime Web technology. The conclusion of the thesis is devoted to testing and comparing the models in terms of speed, error rate, and memory usage. It also evaluates the impact of quantization and the choice of computational backend for the inference stages.

Keywords:

ASR, Whipser, Distil Whisper, Parakeet, web application, WASM, WebGPU, local inference, ONNX, ONNX Runtime Web

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Topics for thesis defence

  1. Proč nedostáváte z modelu Whisper žádné časové značky?
  2. Proč jste pro implementaci zvolil webovou aplikaci?
  3. Jak by mohla aplikace běžět offline?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Ing. Lukáš Burget, Ph.D. (předseda)
doc. Mgr. Adam Rogalewicz, Ph.D. (místopředseda)
Ing. Libor Polčák, Ph.D. (člen)
Ing. Michal Hradiš, Ph.D. (člen)
Ing. Martin Žádník, Ph.D. (člen)

Supervisor’s report
Ing. Igor Szőke, Ph.D.

Celkově hodnotím aktivitu studenta nadprůměrně. Přístup ke konzultacím byl sice průměrný, ale přihlížím k náročnosti tématu a proaktivitou, se kterou student práci řešil. Student k řešení přistupoval zodpovědně a samostatně. 

Evaluation criteria Verbal classification
Information about assignment

Jedná se o obtížnější zadání s dostatkem prostoru pro možné rozšíření. Téma volně navazuje na výzkumné projekty skupiny Speech@FIT. Student se návrhu a implementace podle mého názoru zhostil velmi dobře. Nastudoval a implementoval inferenci velkých modelů pro rozpoznávání řeči v prohlížeči.  Vytvořený výstup by mohl být použitelný pro projekty a demonstrátory v rámci výzkumné skupiny.

Work with literature

Student literaturu získával samostatně a aktivně.

Activity during solution, consultations, communication

Student konzultoval práci po celou dobu akademického roku víceméně pravidelně 1x za 3 týdny. Byl vždy připraven a ukázal pokrok. Práci řešil aktivně a samostatně. Reflektoval zpětnou vazbu od vedoucího.

Activity during completion

Aktivita při dokončování nebyla pod stresem. Text byl dodán ke kontrole včas. Vedoucím byly doporučeny dílčí úpravy struktury a jazyková kontrola.

Publication activity, awards

Nejsou.

Points proposed by supervisor: 87

Grade proposed by supervisor: B

Reviewer’s report
Ing. Petr Schwarz, Ph.D.

Práce byla náročnější, vyžadovala porozumění modelům pro přepis řeči, formátů AI modelu ONNX, možnostem a omezením webových browserů, a výrazná část byla implementačního charakteru. Student ukázal plně funkční řešení, které je blízko využitelnosti v praxi.   

Evaluation criteria Verbal classification Points
The difficulty of the assignment

Evaluation level: more difficult assignment

Náročnost zadání je obtížnější. Student potřeboval pochopit současné moderní architektury rozpoznávačů řeči, formát AI modelů ONNX, nastudovat současné možnosti a omezení webových browserů, a součástí práce byla i podstatná implementační část.

Presentation level of the technical report

Sturktura závěrečné zprávy je logická. Rozah jednotlivých kapitol je vyvážen a kapitoly na sebe navazují.

90
Formal preparation of a technical report

Formální úprava techniké zprávy na rozumné úrovni. 

90
Realisation output

Programové řešení je na vysoké úrovni. Ukazuje směr, kterým se budou přenášet AI modely ze serverů na koncová zařízení pro snížení nároků na hardwarové vybavení a snížení doby odezvy software u uživatelů. 

100
Usability of results

Práce je převážně kompilačního charakteru. Ale mapuje současné možnosti webových prohlížečů a ukazuje směr, kterým půjde brzký vývoj při přenosu AI modelů z výpočetních serverů na koncová zařízení. Výsledky jsou po mírných úpravách (cache pro modely na koncovém zařízení) plně použitelné v praxi.

The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled

Zadání bylo splněno. Student implementoval několik rozpoznávačů řeči.

Extent of the technical report

Evaluation level: is within the usual extent

Rozsah technické zprávy je v obvyklém rozmezí.

Work with literature

Student s literaturou aktivně pracoval, použil relevantní zdroje a zdroje jsou řádně citovány.

90
Points proposed by reviewer: 95

Grade proposed by reviewer: A

Responsibility: Mgr. et Mgr. Hana Odstrčilová