Bachelor's Thesis

Information extraction from PDF documents using language models

Final Thesis 1.25 MB

Author of thesis: Jakub Pogádl

Acad. year: 2025/2026

Supervisor: doc. Ing. Radek Burget, Ph.D.

Reviewer: Ing. Kristýna Zaklová

Abstract:

Manual extraction of information from PDF documents is time-consuming, and traditional
rule-based systems do not adapt to changes in document layout. This thesis focuses on
automatic extraction of structured data from PDF documents using large language models.
A command-line tool was designed and implemented in which the user defines the desired
output structure via JSON Schema, and the system extracts the data from documents using
a selected language model. The tool supports four PDF processing methods, including direct
submission of the document to a multimodal language model, and multiple language model
providers. Results are validated against the schema and stored in a CouchDB database.
The functionality was verified on a dataset of car pricelists by comparing different text
extraction methods, language models, and prompting strategies.

Keywords:

information extraction, PDF documents, large language models, JSON Schema, prompt engineering, optical character recognition, multimodal models, car pricelists

Date of defence

15.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaCznamka

Grading

C

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 C.

Topics for thesis defence

  1. V rámci experimentů jste pro dvě ze tří výzkumných otázek použil fixní jazykový model. Na základě jakých kritérií byl tento model zvolen a mohl jeho výběr ovlivnit dosažené výsledky?
  2. Vaše experimenty byly provedeny na automobilových cenících. Jaké vlastnosti musí mít vstupní dokumenty, aby na nich bylo možné Vámi vytvořené řešení efektivně použít? Uveďte příklady typů dokumentů, pro které by podle Vás bylo vhodné, a naopak nevhodné.
  3. Zkoušel jste vaši práci i pro souvislý text?
  4. Kolik textu jste napsal? Víte, že má být práce souvislý text?

Language of thesis

Slovak

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Dr. Ing. Dušan Kolář (předseda)
doc. Dr. Ing. Otto Fučík (místopředseda)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. František Grézl, Ph.D. (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)

Supervisor’s report
doc. Ing. Radek Burget, Ph.D.

Pan Pogádl řešil svoji bakalářskou práci po celou dobu svědomitě a aktivně, samostatně navrhoval řešení technických problémů a svůj postup průběžně konzultoval. Z pohledu vedoucího proto hodnotím jeho práci jako výbornou.

Evaluation criteria Verbal classification
Informace k zadání

Cílem práce bylo prozkoumat možnosti využití velkých jazykových modelů (LLM) v oblasti extrakce strukturovaných dat s předem danou strukturou z volně formátovaných dokumentů PDF, např. technických specifikací automobilů. Jedná se o vlastní iniciativu studenta. Vzhledem k tomu, že významná část informace v tomto druhu dokumentů je vyjádřena pomocí vizuálního formátování, bylo jednou z náročnějších částí zejména předzpracování dokumentů do podoby vhodné pro LLM a následné zpracování a uložení výstupu LLM. Zadání považuji z pohledu vedoucího za splněné.

Práce s literaturou

Student využíval literaturu doporučenou vedoucím a samostatně vyhledával další relevantní zdroje.

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

Student se aktivně věnoval řešení své bakalářské práce po celou dobu, své řešení pravidelně konzultoval a na konzultace byl vždy velmi dobře připraven.

Aktivita při dokončování

Práce byla dokončena v dostatečném předstihu a obsah technické zprávy i podoba realizačního výstupu byly opakovaně konzultovány.

Publikační činnost, ocenění
Points proposed by supervisor: 94

Grade proposed by supervisor: A

Reviewer’s report
Ing. Kristýna Zaklová

Student prostudoval vybranou problematiku a navrhl, implementoval i experimentálně ověřil funkční řešení pro extrakci informací z dokumentů PDF pomocí velkých jazykových modelů. Praktické výstupy považuji za kvalitní a oceňuji zejména jejich experimentální charakter a možnost dalšího rozšiřování. Technická zpráva však obsahuje prezentační a formální nedostatky, které snižují její celkovou úroveň. Navrhuji proto hodnocení stupněm B.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: průměrně obtížné zadání

Zadání práce hodnotím jako průměrně obtížné. Student prostudoval problematiku velkých jazykových modelů, jejich využití pro extrakci informací z dokumentů PDF a možnosti popisu strukturovaných dat. Na základě získaných poznatků navrhl a implementoval nástroj umožňující automatickou extrakci dat z PDF dokumentů s využitím různých jazykových modelů a strategií dotazování. Součástí řešení bylo také vytvoření datové sady, návrh ukládání výsledků do databáze a experimentální vyhodnocení navrženého přístupu.

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

Struktura technické zprávy se skládá ze šesti kapitol, hranice mezi teoretickou částí, analýzou a návrhem nejsou vždy zcela zřejmé. Některé sekce (např. 2.2 a 2.6) zařazené do teoretické části mají spíše charakter analýzy existujících nástrojů a řešení. V práci dále postrádám podrobnější představení vstupních dokumentů použitých při experimentech – jediná ukázka je na obrázku 2.1 a opět spíše nepatří do teoretické části práce. Text obsahuje pouze čtyři obrázky, přičemž polovina z nich je kvůli velikosti písma obtížně čitelná (4.1 a 4.2). V návrhové části by bylo vhodné doplnit další schémata nebo ilustrace navrženého řešení. Dále student v úvodu návrhu (kapitola 3) referuje první sekci, ze které údajně vyplývají požadavky na řešení, které však byly popsány na konci předešlé teoretické kapitoly (2.6.3). Zmíněné problémy mají negativní dopad na srozumitelnost textu.

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

Technická zpráva je psána slovenštinou na dobré úrovni a neobsahuje závažné jazykové nedostatky. Místy se však objevuje nekonzistentní práce s terminologií, přebírání anglických termínů (např. function calling na straně 9, v sekci 2.3.2) a jejich následné skloňování v textu. Dále se vyskytují nedostatky typografického charakteru, například nejednotný zápis výčtů, dopředné reference na budoucí části práce nebo občasné použití první osoby množného čísla. Za neobvyklé považuji také např. umístění popisků některých tabulek nad tabulkou místo pod ní (viz kapitola 5).

75
Realizační výstup

Realizačním výstupem je nástroj pro extrakci strukturovaných dat z dokumentů PDF pomocí velkých jazykových modelů. Řešení podporuje více metod zpracování PDF dokumentů, více poskytovatelů jazykových modelů a ukládání výsledků do databáze CouchDB. Oceňuji zejména experimentální charakter práce, podporu různých strategií zpracování dokumentů, využití kontejnerizace pomocí nástroje Docker a systematické vyhodnocení dosažených výsledků prostřednictvím výzkumných otázek. V odevzdaných výstupech i v technické zprávě (s výjimkou obrázku 2.1) postrádám vstupní PDF soubory, které mi ukazoval student až při prezentaci svého řešení.

95
Využitelnost výsledků

Vytvořené řešení představuje základ pro automatizovanou extrakci strukturovaných dat z dokumentů PDF. Díky podpoře více jazykových modelů a různých přístupů ke zpracování dokumentů je možné systém dále rozšiřovat a využít i v dalších aplikačních oblastech.

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

Evaluation level: zadání splněno s drobnými výhradami

Zadání považuji za splněné s drobnými výhradami. V rámci bodu 1 zadání se student měl seznámit s přístupy a metodami využití velkých jazykových modelů pro extrakci konkrétních informací z dokumentů, kapitola 2 však tuto problematiku pokrývá pouze částečně, některé informace jsou povrchní a neúplné (student např. nevysvětluje rozdíl mezi jazykovým a multimodálním jazykovým modelem).

Rozsah technické zprávy

Evaluation level: splňuje pouze minimální požadavky

Práce má 40 stran včetně seznamu literatury, rozsah technické zprávy se nachází na minimální hranici požadované pro bakalářskou práci. 

Práce s literaturou

Práce se odkazuje na 17 zdrojů, přičemž část z nich tvoří odborné publikace. Použité zdroje jsou pro řešenou problematiku relevantní. V teoretické části se však vyskytují pasáže, které nejsou podpořeny žádnou citací (např. sekce 2.2.3 a 2.4.4).

75
Topics for thesis defence:
  1. Vaše experimenty byly provedeny na automobilových cenících. Jaké vlastnosti musí mít vstupní dokumenty, aby na nich bylo možné Vámi vytvořené řešení efektivně použít? Uveďte příklady typů dokumentů, pro které by podle Vás bylo vhodné, a naopak nevhodné.
  2. V rámci experimentů jste pro dvě ze tří výzkumných otázek použil fixní jazykový model. Na základě jakých kritérií byl tento model zvolen a mohl jeho výběr ovlivnit dosažené výsledky?
Points proposed by reviewer: 82

Grade proposed by reviewer: B

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