Bachelor's Thesis

Automatic speech recognizer running in web browser.

Final Thesis 5.45 MB

Author of thesis: 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
Informace k zadání

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.

Práce s literaturou

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

Aktivita během řešení, konzultace, komunikace

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.

Aktivita při dokončování

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.

Publikační činnost, ocenění

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
Náročnost zadání

Evaluation level: obtížnější zadání

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.

Prezentační úroveň technické zprávy

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

90
Formální úprava technické zprávy

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

90
Realizační výstup

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
Využitelnost výsledků

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.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

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

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

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

Práce s literaturou

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á