Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Vojtěch Jahoda
Acad. year: 2023/2024
Supervisor: doc. Ing. Radek Burget, Ph.D.
Reviewer: RNDr. Marek Rychlý, Ph.D.
This paper addresses the issue of the proper context of a project assistant for writing clinical information system code and training it to a specific project directory. I subsequently addressed this problem using Meta's Codellamac language model. This tool should make writing code more efficient and avoid repetition for mostly not-quite-knowledgeable programmers.
language model, artificial intelligence, copilot, assistant, clinical information system
Date of defence
18.06.2024
Date of publish
18.06.2027
Result of the defence
Defended (thesis was successfully defended)
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
Language of thesis
Czech
Faculty
Fakulta informačních technologií
Department
Department of Information Systems
Study programme
Information Technology and Artificial Intelligence (MITAI)
Specialization
Information Systems and Databases (NISD)
Composition of Committee
prof. Ing. Tomáš Hruška, CSc. (předseda) doc. Ing. Radek Burget, Ph.D. (člen) doc. Mgr. Adam Rogalewicz, Ph.D. (člen) Ing. Vladimír Bartík, Ph.D. (člen) RNDr. Marek Rychlý, Ph.D. (člen) Ing. Libor Polčák, Ph.D. (člen)
Supervisor’s reportdoc. Ing. Radek Burget, Ph.D.
Pan Jahoda nastudoval a prakticky aplikoval několik jazykových modelů a s jejich využitím navrhl a implementoval experimentální vývojářské nástroje. Práci řešil zodpovědně a vzhledem ke složitosti dané problematiky hodnotím jeho práci jako nadprůměrnou.
Cílem práce bylo zmapovat možnosti dostupných velkých jazykových modelů a jejich využití pro vývoj software v rámci velké organizace. a navrhnout a implementovat odpovídající vývojářské nástroje. Jedná se o zadání firmy STAPRO. Vzhledem k nutnosti detailního pochopení a rozsáhlého trénování různých jazykových modelů hodnotím zadání jako obtížnější. Zadání bylo splněno.
Práce byla dokončena včas, student se mnou konzultoval finální verzi technické zprávy a mé připomínky řádně zapracoval.
Student využíval konzultací zejména u zadavatele a samostatně vyhledával další informační zdroje.
Student své řešení pravidelně konzultoval zejména ve firmě STAPRO, o průběhu řešení mě informoval spíše sporadicky. Podle sdělení konzultanta však student pracoval po celou dobu zodpovědně a aktivně.
Grade proposed by supervisor: B
Reviewer’s reportRNDr. Marek Rychlý, Ph.D.
Výsledkem diplomové práce je dobré programové řešení, avšak technická zpráva je stručná a s nedostatky. Přesto, vzhledem k obtížnějšímu zadání, navrhuji hodnotit práci stupněm dobře (C).
Evaluation level: zadání splněno
Zadání je splněno bez výhrad.
Evaluation level: splňuje pouze minimální požadavky
Rozsahem je technická zpráva pod spodní hranici obvyklého rozmezí, avšak minimální požadavky splňuje. Zpráva má od úvodu po závěr 45 vysázených stran (celkově asi 60 normostran). I při menším rozsahu jsou jednotlivé kapitoly (až na dále popsané výjimky při návrhu a vyhodnocení) přiměřeně podrobné a poskytují dostatek informací k tématu a řešení práce.
Technická zpráva má logickou strukturu, kde poskytuje přehled současného stavu, popisuje návrh vlastního řešení a předkládá výsledky provedených experimentů. Oceňuji dobrou dokumentaci z přípravy dat a trénování modelů (kap. 4.3 a 4.4). Vytknout lze chybějící návrhové diagramy v popisu návrhu softwarové stránky řešení (kap. 4.6 a 4.7) a chybějící podrobnější vyhodnocení experimentů nad rámec pouhé prezentace výsledků (nyní jen příliš stručné vyhodnocení v kap. 6 "Závěr").
Po jazykové stránce je text technické zprávy bez vážnějších nedostatků, avšak obsahuje větší množství spíše typografických chyb (např. chybějící mezera na str. 14 dole; spojovníky místo pomlček, mezera kolem spojovníků na str. 25, spojená slova "nakaždou" a malé písmeno na začátku věty na str. 28 dole, aj.).
Seznam literatury obsahuje 53 položek, z nichž podstatná část jsou odborné zdroje. Oceňuji, že rozsah i výběr studijních pramenů velmi dobře pokrývá řešenou problematiku. Je také dobře patrný způsob a rozsah použití uvedených zdrojů. Vytknout lze chybějící či příliš stručný popis jednotlivých položek seznamu literatury (např. pol. 42 či pol. 1 a 21), nejednotný formát (odkazy v pol. 10 a 11, pojmenování měsíců, aj.) a zejména celkovou absenci data citace u online zdrojů (vše, kromě pol. 14 a 49). Popsané nedostatky podstatně narušují srozumitelnost uvedených informací.
Realizačním výstupem je sada skriptů v jazyce Python pro přípravu datové sady, trénování modelů, přípravu vektorové databáze, a poskytování API rozhraní (tj. server) pro práci s natrénovanými modely. Dále student implementoval rozšíření pro editor Visual Studio Code pro dotazování nad modely pomocí zmiňovaného API rozhraní (tj. klient). Zdrojový kód je v rozsahu asi 4500 řádků, je dobře strukturován a dostatečně komentován. Z hlediska návrhu řešení oceňuji nápaditý přístup při přípravě trénovacích dat (anotace pomocí externích LLM). Řešení je funkční, ale odpovědi poskytované modely přes dané API nejsou často použitelné (a v technické zprávě vyhodnocení tohoto aspektu chybí) a občas jsou v jiném formátu něž předpokládá rozšíření pro editor (např. dotaz měl doplnit komentáře k zadanému kódu, ale vrátil úplně jiný kód, kterým rozšíření editoru přepíše kód původní a ten je tím ztracen).
Výsledné programové řešení je dobré ověření konceptu, ale pro praktickou použitelnost by bylo potřeba lépe natrénovat jazykové modely.
Evaluation level: obtížnější zadání
Jedná se o obtížnější zadání -- problematika velkých jazykových modelů (LLM) a jejich využití při asistovaném vývoji software je poměrně nová, rozsáhlá a vysoce aktuální.
Grade proposed by reviewer: C
Reasons for publication postponement
Publication of the final thesis has been postponed in compliance with the provisions of Section 47b (4) of Act No. 111/1998 Coll., on the Higher Education Institutions and on amendments and supplements to other acts, as amended.
Responsibility: Mgr. et Mgr. Hana Odstrčilová