Název:
Generování kódu z textového popisu funkcionality
Překlad názvu:
Generating Code from Textual Description of Functionality
Autoři:
Kačur, Ján ; Ondřej, Karel (oponent) ; Smrž, Pavel (vedoucí práce) Typ dokumentu: Bakalářské práce
Rok:
2021
Jazyk:
cze
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [cze][eng]
Cieľom tejto práce bolo navrhnúť a implementovať systém na generovanie kódu z textového popisu funkcionality. Boli vypracované celkovo 2 systémy, prvý z nich slúžil ako kontrolný prototyp, a druhý ako reálny výstup práce. Zameral som sa na použitie nepredtrénovaných modelov s menšími rozmermi. Obidva systémy používali ako jadro model typu Transformer. Druhý systém využil na rozdiel od prvého syntaktický rozklad kódu aj textových popisov. Dáta pre obidva systémy pochádzali z projektu CodeSearchNet, cieľový jazyk pre generovanie bol jazyk Python. Druhý systém dosiahol lepšie číselné výsledky, ako prvý, s presnosťou predpovede slov 85%, zatiaľ čo prvý len 60%. Systém dokázal doplniť správny kód na dokončenie funkcie, s väčšou časovou odozvou. V tejto práci sa venujem takmer výlučne druhému systému.
The aim of this thesis was to design and implement system for code generation from textual description of functionality. In total, 2 systems were implemented. One of them served its purpose as a control prototype, the second one was the main product of this thesis. I focused on using smaller non-pre-trained models. Both systems used Transformer type model as their cores. The second system, unlike the first, used syntactic decomposition of both code and textual descriptions. Data used in both systems originated from project CodeSearchNet. Targer programming language to generate was Python. The second system achieved better quantitative results than the first one, with accuracy of 85% versus 60%. The system managed to auto-complete correct code to finish the function definition, with bigger time delay. This thesis is almost exclusively dedicated to the second system.
Klíčová slova:
abstraktný syntaktický strom; doplňovanie kódu; generovanie kódu; gpt; POS tagging; spracovanie prirodzeného jazyka; strojové učenie; tensorflow; transformer; abstract syntax tree; code generation; code prediction; gpt; machine learning; nlp; POS tagging; tensorflow; transformer
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/201117