In a business context related to data engineering, the need arose to automate SQL code generation to support data engineers in their activities and improve work efficiency. Specifically, the requirement was to process Excel files as input to generate SQL DDL (Data Definition Language) scripts, necessary for defining SQL data tables during a platform migration phase. To meet this need, a simple tool was developed to process the input Excel files, in which the tables to be created are described, and, leveraging the capabilities of LLMs, specifically OpenAI's GPT models, automatically generate the SQL code required to define the respective tables, significantly improving the efficiency of the process. The final result is an application with an intuitive web interface, capable of translating data contained in Excel sheets into SQL code quickly and efficiently. The tool, thanks to its ease of use, has allowed data engineers to save time on repetitive tasks, improving overall work efficiency. This thesis thus illustrates one of the many potential use cases of generative artificial intelligence, highlighting how it can support developers by automating repetitive and less engaging tasks. However, the need to optimize and monitor the generated results also emerges, as they are not always consistent in terms of accuracy. In particular, some irregularities were observed under certain usage conditions, suggesting further areas for investigation and improvement for future developments.

In un contesto aziendale legato al data engineering, è emersa la necessità di automatizzare la generazione di codice SQL per supportare i data engineer nelle loro attività e migliorare l’efficienza del lavoro. In particolare, il bisogno era quello di processare dei file Excel come input per generare script SQL DDL (Data Definition Language), necessari per la definizione delle tabelle dati SQL durante una fase di migrazione di piattaforma. Per rispondere a questa esigenza, si è optato per lo sviluppo di un semplice tool capace di elaborare i file Excel in input in cui sono descritte le tabelle da creare e, sfruttando le potenzialità dei LLM, nello specifico dei modelli GPT di OpenAI, generare in modo automatico il codice SQL necessario alla definizione delle rispettive tabelle, migliorando notevolmente l’efficienza del processo. Il risultato finale è un’applicazione dotata di un’interfaccia web intuitiva, in grado di tradurre i dati contenuti nei fogli Excel in codice SQL in maniera rapida ed efficiente. Il tool quindi, grazie alla sua semplicità d’uso, ha permesso ai dati engineer di risparmiare tempo su compiti ripetitivi, migliorando l’efficienza complessiva del lavoro. Questa tesi illustra quindi uno dei tanti possibili casi d’uso dell’intelligenza artificiale generativa, evidenziando come questa possa fornire supporto agli sviluppatori automatizzando operazioni ripetitive e poco stimolanti. Tuttavia, emerge anche la necessità di ottimizzare e monitorare i risultati generati, dato che non sempre sono costanti in termini di accuratezza. In particolare, sono state osservate alcune irregolarità in determinate condizioni d’uso, suggerendo quindi ulteriori ambiti di approfondimento e miglioramento per sviluppi futuri.

Automazione della Generazione SQL: Un Tool Basato su Intelligenza Artificiale Generativa

HU, SILVANO
2023/2024

Abstract

In un contesto aziendale legato al data engineering, è emersa la necessità di automatizzare la generazione di codice SQL per supportare i data engineer nelle loro attività e migliorare l’efficienza del lavoro. In particolare, il bisogno era quello di processare dei file Excel come input per generare script SQL DDL (Data Definition Language), necessari per la definizione delle tabelle dati SQL durante una fase di migrazione di piattaforma. Per rispondere a questa esigenza, si è optato per lo sviluppo di un semplice tool capace di elaborare i file Excel in input in cui sono descritte le tabelle da creare e, sfruttando le potenzialità dei LLM, nello specifico dei modelli GPT di OpenAI, generare in modo automatico il codice SQL necessario alla definizione delle rispettive tabelle, migliorando notevolmente l’efficienza del processo. Il risultato finale è un’applicazione dotata di un’interfaccia web intuitiva, in grado di tradurre i dati contenuti nei fogli Excel in codice SQL in maniera rapida ed efficiente. Il tool quindi, grazie alla sua semplicità d’uso, ha permesso ai dati engineer di risparmiare tempo su compiti ripetitivi, migliorando l’efficienza complessiva del lavoro. Questa tesi illustra quindi uno dei tanti possibili casi d’uso dell’intelligenza artificiale generativa, evidenziando come questa possa fornire supporto agli sviluppatori automatizzando operazioni ripetitive e poco stimolanti. Tuttavia, emerge anche la necessità di ottimizzare e monitorare i risultati generati, dato che non sempre sono costanti in termini di accuratezza. In particolare, sono state osservate alcune irregolarità in determinate condizioni d’uso, suggerendo quindi ulteriori ambiti di approfondimento e miglioramento per sviluppi futuri.
Automating SQL Generation: A Tool Based on Generative Artificial Intelligence
In a business context related to data engineering, the need arose to automate SQL code generation to support data engineers in their activities and improve work efficiency. Specifically, the requirement was to process Excel files as input to generate SQL DDL (Data Definition Language) scripts, necessary for defining SQL data tables during a platform migration phase. To meet this need, a simple tool was developed to process the input Excel files, in which the tables to be created are described, and, leveraging the capabilities of LLMs, specifically OpenAI's GPT models, automatically generate the SQL code required to define the respective tables, significantly improving the efficiency of the process. The final result is an application with an intuitive web interface, capable of translating data contained in Excel sheets into SQL code quickly and efficiently. The tool, thanks to its ease of use, has allowed data engineers to save time on repetitive tasks, improving overall work efficiency. This thesis thus illustrates one of the many potential use cases of generative artificial intelligence, highlighting how it can support developers by automating repetitive and less engaging tasks. However, the need to optimize and monitor the generated results also emerges, as they are not always consistent in terms of accuracy. In particular, some irregularities were observed under certain usage conditions, suggesting further areas for investigation and improvement for future developments.
Non autorizzo consultazione esterna dell'elaborato
File in questo prodotto:
File Dimensione Formato  
TesiSilvanoHu.pdf

non disponibili

Dimensione 973.3 kB
Formato Adobe PDF
973.3 kB Adobe PDF

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14240/6873