Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Bc. David Švancer
Acad. year: 2025/2026
Supervisor: Ing. Martin Kostelník
Reviewer: Ing. Zdeněk Materna, Ph.D.
This bachelor thesis focuses on the design, implementation, and evaluation of an intelligent question-answering system for the travel agency domain using the \textit{Retrieval-Augmented Generation} (RAG) architecture. The proposed modular pipeline works with both structured accommodation data and unstructured user reviews. The system consists of a semantic router for query classification, a hybrid retrieval module, \textit{Multi-Query Retrieval} for query expansion, and a \textit{cross-encoder} reranker. The performance of the system was evaluated on a custom dataset containing 310 queries using the RAGAS framework. The statistical reliability of the results was verified using the bootstrap method. The experiments showed that the combination of \textit{Multi-Query Retrieval} and reranking improved the quality of the retrieved context and led to more accurate generated answers. The final architecture achieved the best overall results across most evaluated metrics.
natural language processing, artificial intelligence, large language models, semantic search, vector database, chatbot, travel agency, RAG
Date of defence
17.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
B
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 oponenta a na další 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 B.
Topics for thesis defence
Language of thesis
Czech
Faculty
Fakulta informačních technologií
Department
Department of Computer Graphics and Multimedia
Study programme
Information Technology (BIT)
Composition of Committee
doc. Ing. Lukáš Burget, Ph.D. (předseda) doc. RNDr. Milan Češka, Ph.D. (místopředseda) Dr. Ing. Petr Peringer (člen) Ing. Matěj Grégr, Ph.D. (člen) Ing. Jakub Husa, Ph.D. (člen)
Supervisor’s reportIng. Martin Kostelník
S výjimkou druhé poloviny zimního semestru pracoval student velmi aktivně a průběžně. Úkoly domluvené na konzultacích plnil samostatně a prokázal schopnost rychle si osvojit potřebné znalosti i nástroje. Samostatně vybral vhodnou datovou sadu, implementoval funkční RAG systém a následně provedl jeho vyhodnocení metodou RAGAS, včetně použití konfidenčních intervalů a statistických testů.
Určité rezervy spatřuji především ve velikosti použité datové sady. Současné RAG systémy pracují s rozsáhlejšími kolekcemi dokumentů. Rovněž testovací sada dotazů mohla být rozsáhlejší, což by vedlo k užším konfidenčním intervalům a celkově rigoróznějšímu experimentálnímu vyhodnocení.
Práce byla prezentována na Excel@FIT, celkově práci hodnotím pozitivně a navrhuji hodnocení stupněm A.
Práce se zabývá implementací systému typu RAG, což tematicky přesahuje standardní znalosti získané během bakalářského studia. Student si musel nastudovat základní principy fungování velkých jazykových modelů a jejich praktického nasazení. Současně se seznámil s moderními přístupy v oblasti vektorových databází, vyhledávání informací, rerankingu a metod vyhodnocování RAG systémů s využitím přístupu LLM as a judge.
Student navrhl a implementoval funkční RAG systém nad vybranou datovou sadou, pro kterou rovněž vygeneroval doplňující metadata vedoucí ke zlepšení kvality systému. Kvalita navrženého řešení byly experimentálně vyhodnoceny pomocí moderní metody Ragas.
Zadání práce považuji za splněné.
Student pracoval s literaturou na doporučení vedoucího a nezávisle si vyhledával vlastní zdroje.
Student byl aktivní na začátku zimního semestru a během celého letního semestru. Během letního semestru svůj postup pravidelně konzultoval. Na konzultace byl připraven, práce postupovala průběžně a v rozumném tempu.
Textová část práce byla vypracovávána během posledního měsíce, ale průběžně a s obsahem jsem byl seznamován postupně. Student zapracovával připomínky a dokončování práce probíhalo bez značných časových komplikací. Finální obsah byl dostatečně konzultován.
Práce byla prezentována na studentské konferenci Excel@FIT.
Grade proposed by supervisor: A
Reviewer’s reportIng. Zdeněk Materna, Ph.D.
Celkově jde o čitelnou a technicky slušnou práci s reálným RAG prototypem, datovou přípravou a poměrně bohatou automatickou experimentační částí. Hlavní rezervy jsou v nedoloženém uživatelském testování požadovaném zadáním, ověřitelnosti routeru, reprodukovatelnosti experimentů a slabší argumentaci volby domény a datasetu.
Evaluation level: more difficult assignment
Náročnost hodnotím jako obtížnější: práce vyžadovala nastudování a propojení RAG, datové přípravy, vektorové databáze, lokálních modelů, evaluace a interpretace výsledků. Náročnost spočívá hlavně v tom, že student musel tyto oblasti pochopit a integrovat do funkčního prototypu.
Text je celkově srozumitelný a přehledně vedený. Slabší je problémové zasazení, zdůvodnění volby datasetu a vysvětlení zúžení široké cestovní domény na ubytování/FAQ demonstrátor; při interpretaci experimentů je navíc potřeba opatrněji vysvětlit přesnost routeru, přínos Multi-Query a význam kategorií datasetu.
Formální rozsah je v pořádku. Práce působí místy méně pečlivě v drobnější typografii a v čitelnosti některých obrázků, nejde však o hlavní technickou slabinu.
Realizační výstup je obhajitelný RAG prototyp s daty, README, výsledkovými CSV a implementovanými komponentami pro BNB/FAQ kolekce, router, Multi-Query, reranker a RAGAS evaluaci. Slabší je ověřitelnost a reprodukovatelnost výsledků: chybí jasnější experimentální protokol a systematičtější testování hlavních komponent.
Výsledek je využitelný hlavně jako demonstrátor a experimentační základ pro další vývoj RAG chatbota v cestovní doméně. Pro širší praktické použití by bylo potřeba doplnit lepší reprodukovatelnost experimentů, měření latence a ověření na širší sadě dotazů nebo uživatelů.
Evaluation level: assignment fulfilled with minor reservations
Požadavky zadání považuji za splněné s drobnou výhradou. Student provedl poměrně podrobné automatické vyhodnocení systému na vlastním evaluačním datasetu, včetně porovnání více konfigurací retrieval pipeline a statistického vyhodnocení výsledků. Výhradou zůstává, že zadání výslovně požadovalo otestování chatbota na několika lidech, které v práci není doloženo a jeho nahrazení automatickou evaluací není výslovně zdůvodněno. Praktický rozsah řešení je užší než široce formulovaný poradce cestovní kanceláře a soustředí se hlavně na ubytování a FAQ; to považuji za přijatelné zaměření prototypu, které ale mělo být v práci lépe vysvětleno.
Evaluation level: is within the usual extent
Rozsah technické zprávy je v obvyklém rozmezí a struktura pokrývá teorii, návrh, implementaci, experimenty i závěr. Rozsah proto není samostatnou slabinou; slabší je spíše přesnost některých výsledkových interpretací.
Literatura je tematicky relevantní pro RAG, embeddingy, reranking a evaluaci. Výhrady jsou v přesnosti opory: některé citace podporují existenci nástrojů nebo obecnou metodu, nikoli kvalitu konkrétního datasetu, judge modelu, routeru nebo výsledků.
Grade proposed by reviewer: B
Responsibility: Mgr. et Mgr. Hana Odstrčilová