Question-answering systém pracující se strukturovanými daty
Loading...
Date
Authors
Tenora, Marek
Advisor
Referee
Mark
C
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
ORCID
Abstract
Tato práce popisuje návrh a implementaci prototypu aplikace využívající paradigma Retrieval-Augmented Generation (RAG) pro efektivní práci s relačními SQL databázemi. Systém postavený na LangChain/LangGraph kombinuje relační databázi a vektorový index a obsahuje hybridního agenta, který iterativně využívá sémantické vyhledávání a SQL dotazy, ověřuje výsledky a generuje odpovědi se zdroji. Prototyp byl nasazen jako webová aplikace a manuálně otestován, přičemž prokázal vyšší faktickou přesnost oproti jednozdrojovým přístupům, větší transparentnost díky zobrazení interní logiky agenta a dobrou rozšiřitelnost. Identifikována byla také omezení včetně výpočetních nároků, nestability knihoven a bezpečnostních rizik. Přínosem je propojení teorie s praktickou implementací, otevřený prototyp pro další výzkum a doporučení pro výběr nástrojů při vývoji RAG systémů.
This thesis presents the design and implementation of a prototype application leveraging the Retrieval-Augmented Generation (RAG) paradigm for efficient interaction with relational SQL databases. The system, built on LangChain/LangGraph, combines a relational database with a vector index and features a hybrid agent that iteratively applies semantic search and SQL queries, verifies retrieved results, and generates source-backed responses. The prototype was deployed as a web application and manually tested, demonstrating higher factual accuracy compared to single-source approaches, greater transparency through visible agent reasoning, and solid extensibility. The work also identifies limitations, including high computational demands, the instability of rapidly evolving libraries, and security risks related to database access. Its contribution lies in bridging theoretical foundations with practical implementation, offering an open prototype for further research and providing recommendations for selecting tools in the development of RAG based systems.
This thesis presents the design and implementation of a prototype application leveraging the Retrieval-Augmented Generation (RAG) paradigm for efficient interaction with relational SQL databases. The system, built on LangChain/LangGraph, combines a relational database with a vector index and features a hybrid agent that iteratively applies semantic search and SQL queries, verifies retrieved results, and generates source-backed responses. The prototype was deployed as a web application and manually tested, demonstrating higher factual accuracy compared to single-source approaches, greater transparency through visible agent reasoning, and solid extensibility. The work also identifies limitations, including high computational demands, the instability of rapidly evolving libraries, and security risks related to database access. Its contribution lies in bridging theoretical foundations with practical implementation, offering an open prototype for further research and providing recommendations for selecting tools in the development of RAG based systems.
Description
Keywords
RAG , umělá inteligence , AI , zpracování přirozeného jazyka , text-to-SQL , agentní systémy , SQL databáze , vektorová databáze , LangChain , LangGraph , FastAPI , Vue.js , RAG , artificial intelligence , AI , natural language processing , text-to-SQL , agentic systems , SQL database , vector database , LangChain , LangGraph , FastAPI , Vue.js
Citation
TENORA, M. Question-answering systém pracující se strukturovanými daty [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. Ing. František Zbořil, CSc. (předseda)
Ing. Aleš Smrčka, Ph.D. (člen)
Ing. Jan Pluskal, Ph.D. (člen)
doc. Ing. Michal Španěl, Ph.D. (člen)
Ing. Josef Strnadel, Ph.D. (člen)
Date of acceptance
2025-06-18
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. 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 C.
Result of defence
práce byla úspěšně obhájena
