Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Marek Krúpa
Acad. year: 2025/2026
Supervisor: doc. Ing. Radek Burget, Ph.D.
Reviewer: RNDr. Marek Rychlý, Ph.D.
This diploma thesis presents the design and implementation of a system for automated extraction of structured data from printed invoices and their integration into the K2 enterprise resource planning system. The theoretical part surveys current document data extraction methods– from traditional OCR technologies through end-to-end neural models to visionlanguage models (VLMs). Based on the analysis, the Qwen3.5 model was selected, which processes documents directly from their visual representation without external OCR. The implemented system is realized as a containerized microservice with a REST API supporting both synchronous and asynchronous processing via the RabbitMQ message broker. The solution includes a model confidence estimation mechanism based on log-probabilities of generated tokens for Human-in-the-loop process control and optional output generation in the ISDOC 6.0.2 format with XSD schema validation. The system was deployed and tested on an NVIDIA DGX Spark server within the K2 corporate network.
Intelligent Document Processing, IDP, data extraction, vision-language model, Qwen, deep learning, Human-in-the-loop, ERP system, invoice automation, ISDOC
Date of defence
24.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
D
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 D.
Topics for thesis defence
Language of thesis
Czech
Faculty
Fakulta informačních technologií
Department
Department of Information Systems
Study programme
Information Technology and Artificial Intelligence (MITAI)
Specialization
Software Engineering (NSEN)
Composition of Committee
doc. Ing. Petr Matoušek, Ph.D., M.A. (předseda) doc. RNDr. Jitka Kreslíková, CSc. (místopředseda) doc. Ing. Vladimír Janoušek, Ph.D. (člen) Ing. Libor Polčák, Ph.D. (člen) Ing. Jan Pluskal, Ph.D. (člen) Ing. Matěj Grégr, Ph.D. (člen)
Supervisor’s reportdoc. Ing. Radek Burget, Ph.D.
Pan Krúpa řešil svoji práci po celou dobu velmi zodpovědně, postup průběžně konzultoval a řešení dovedl k výsledku, který je prakticky použitelný a užitečný. Navrhuji proto hodnotit práci stupněm A.
Cílem práce byl návrh a implementace řešení pro převod digitalizovaných účetních dokladů do strukturovaného popisu vhodného pro začlenění do existujícího ERP systému. Jedná se o vlastní iniciativu studenta. Zadání považuji za splněné.
Práce byla dokončena v dostatečném předstihu a výsledná podoba realizačního výstupu i technické zprávy byly řádně konzultovány.
Student využíval literaturu doporučenou v rámci konzultací a samostatně vyhledával další relevantní zdroje.
Student řešil svoji diplomovou práci po celou dobu aktivně a zodpovědně. Prostudoval řadu existujících přístupů a na základě provedených experimentů zvolil nejvhodnější řešení, které implementoval. Svůj postup průběžně konzultoval.
Grade proposed by supervisor: A
Reviewer’s reportRNDr. Marek Rychlý, Ph.D.
Výsledkem diplomové práce je přehledná a informačně bohatá technická zpráva a dobře navržené a funkční programové řešení, vše s drobnou výtkou ke splnění bodu 5 zadání. Kvalitu dokumentace výrazně snižuje nedůvěryhodné použití vykazované literatury (nedohledatelné zdroje). Navrhuji hodnocení stupněm uspokojivě (D).
Evaluation level: zadání splněno s drobnými výhradami
Zadání je splněno s drobnou výhradou k testování implementovaného řešení na reálných dokumentech (bod 5 zadání), které mohlo být provedeno a zejména zdokumentováno podrobněji (kap. 8).
Evaluation level: je v obvyklém rozmezí
Rozsahem je technická zpráva v obvyklém rozmezí, od úvodu po závěr obsahuje 71 vysázených stran (83 normostran). Všechny části technické zprávy jsou informačně bohaté a pro práci skutečně nezbytné.
Technická zpráva má logickou strukturu, kdy v první části popisuje jednotlivé postupy, technologie a aplikační prostředí a v druhé pak vlastní návrh, implementaci a vyhodnocení výsledného programového řešení. Oceňuji srozumitelný a čtivý popis existujících přístupů v první části práce. Některé číslované plovoucí objekty (např. výpisy kódů a tabulky v podkap. 7.6) nejsou odkazovány v doprovodném textu, přestože je z jejich umístění patrný způsob použití. V kap. 8 chybí důkladnější vyhodnocení úspěšnosti extrakce, např. metodami a metrikami popsanými v kap. 2.3.3.
Po typografické stránce je text až na drobné nedostatky v pořádku (např. nerovnoměrné rozestupy slov na začátku str. 15, ukončení 1. odst. na str. 19, či použití spojovníku místo pomlčky na str. 20).
Práce s literaturou vykazuje vážené nedostatky. Rozsáhlý seznam literatury obsahuje 40 položek, z nichž téměř všechny jsou odborné zdroje. Jednotlivé prameny jsou většinou popsány dle zvyklostí a v textu práce hojně odkazovány. U některých odkazů však není jasný způsob a rozsah použití (např. odkaz 27 na str. 41) a jsou spíše pro zvýšení počtu zdrojů, než pro svou relevanci vzhledem k textu. Důvěryhodnost uvedených pramenů dále vážně narušují následující nedostatky: zdroj uvedený jako pol. 27 s daným názvem neexistuje; odkaz zdroje 32 je nedostupný a zdroj ani nelze dle jeho popisu dohledat; odkazy u pol. 26 a 27 vedou na zcela jiné zdroje, než je uvedeno; u pol. 8, 23, 25 a 32 online zdrojů chybí datum citace. Přestože seznam použité literatury je obsáhlý, technická zpráva zmiňuje (avšak necituje) některé pojmy, kde by bylo vhodné relevantní literaturu doplnit (např. "princip dvanáctifaktorové aplikace" na str. 62).
Realizačním výstupem je funkční systém pro extrakci údajů z obrázků faktur, který je připraven pro integraci do ERP systému K2. Navržená architektura je vhodná pro dané zadání a i implementace je v pořádku. Zdrojový kód programového řešení je vhodně členěn, komentován, testován a je udržovatelný. Vytknout lze použití "print" místo logger v produkčním kódu (extraction_engine/processor_utils.py) a pozůstatky po úpravách kódu AI agenty (např. komentáře v souboru docker-compose.yml, ukončení init a duplicitní kód v extraction_engine/Document_parser.py, podrobné komentáře triviálních funkcí v api/auth_service.py, Ascii art, atp.).
Lze očekávat dobrou využitelnost výsledků, přestože úspěšnost extrakce nebyla důkladně vyhodnocena (navzdory očekávání dle bodu 5 zadání).
Evaluation level: průměrně obtížné zadání
Jedná se o průměrně obtížné zadání. Potřebné postupy a nástroje již existují a cílem zadání je především jejich analýza a aplikace.
Grade proposed by reviewer: D
Responsibility: Mgr. et Mgr. Hana Odstrčilová