UTILIZING LARGE LANGUAGE MODELS FOR SOFTWARE GENERATION BASED ON DOMAIN-SPECIFIC LANGUAGES - BIDOCHKO, ANDRII (Herald of Khmelnytskyi National University. Technical sciences, 2023)
In this study, we explore the potential of large language models (LLMs), specifically the GPT-4 model, in generating software based on domain-specific languages (DSLs). We evaluate the performance of these LLMs and discuss the implications of our findings for software engineering, automated code generation, and artificial intelligence. The rapid proliferation of artificial intelligence (AI) technologies and techniques is leading to transformative changes across multiple domains. One significant area of interest is the potential use of large language models (LLMs) in automating software code generation, especially leveraging domain-specific languages (DSLs). This paper presents an in-depth investigation of the capabilities of a GPT-4 model for interpreting and generating DSL software code. We first describe the process of training the model on a vast corpus of software code developed in various DSLs. We then evaluate its performance using a series of comprehensive tests designed to assess its ability to generate accurate, efficient, and maintainable code from DSL-specific prompts. The evaluation metrics include accuracy of code generation, runtime efficiency, and maintainability of the generated code. Preliminary results indicate that the model can produce code with a comparable degree of accuracy and efficiency to human programmers, and even surpasses human-written code in maintainability due to consistent coding style. However, the model exhibits limitations when faced with complex scenarios and less prevalent DSLs. These findings, though promising, highlight the necessity for further research to improve the robustness and versatility of such models, particularly in the realm of complex software development tasks. The implications of these results extend to the fields of software engineering, automated code generation, and AI, potentially revolutionizing the current software development paradigm and paving the way for novel applications.