This thesis focuses on the design and implementation of an advanced chatbot developed using the Python programming language and the PyTorch framework. The primary objective of the project was to create an interactive chat system characterized by a lean yet powerful architecture, capable of generating linguistically coherent and appropriate responses in various conversational contexts. The challenge faced during the development of the chatbot was the need to integrate a Retrieval-Augmented Generation (RAG) system, which allows combining text generation with the extraction of relevant information from an external database. This methodology enables the chatbot to not only rely on pre-defined responses but also to draw on external data to provide more accurate and contextualized answers. The research highlighted the importance of a hybrid approach in creating chatbots, demonstrating how this combination can improve the effectiveness of interactions. At the heart of the developed system is a Transformer model, which through pre-training and fine-tuning phases has been trained to perform the task. This architecture has shown significant advantages in understanding and generating natural language. Pretraining allowed the model to acquire a basic understanding of language structures, while fine-tuning optimized the model to answer specific questions and practical situations, increasing its relevance and accuracy. Additionally, the Reinforcement Learning from Human Feedback (RLHF) strategy was adopted, an innovative methodology that further improved the quality of the chatbot's generated responses. This approach made it possible to integrate human feedback into the learning process, allowing the model to adapt and improve over time based on real interactions with users. The results obtained were satisfactory: the chatbot was successfully implemented and demonstrated the ability to provide meaningful and grammatically correct responses. The quality of the responses and their grammatical coherence testify to the effectiveness of the techniques used. In conclusion, the creation of this chatbot does not represent the end point, but rather the first step towards the creation of increasingly complex and sophisticated systems. The experience gained during this project can serve as a basis for further research and applications in the field of human-computer interaction.
Il presente lavoro di tesi si concentra sulla progettazione e realizzazione di un chatbot avanzato, sviluppato utilizzando il linguaggio di programmazione Python e sfruttando il framework PyTorch. Lo scopo principale del progetto è stato quello di creare un sistema di chat interattivo, caratterizzato da un'architettura snella ma potente, in grado di generare risposte linguisticamente coerenti e appropriate in vari contesti conversazionali. La sfida affrontata durante lo sviluppo del chatbot riguardava la necessità di integrare un sistema di Retrieval-Augmented Generation (RAG), che permette di combinare la generazione di testo con l'estrazione di informazioni pertinenti da un database esterno. Questa metodologia consente al chatbot di non solo basarsi su risposte precostituite, ma anche di attingere a dati esterni per fornire risposte più accurate e contestualizzate. La ricerca ha messo in evidenza l'importanza di un approccio ibrido nella creazione di chatbot, evidenziando come questa combinazione possa migliorare l'efficacia delle interazioni. Nel cuore del sistema sviluppato è stato implementato un modello Transformer, che attraverso fasi di pre-training e fine-tuning è stato addestrato per svolgere il compito. Questa architettura ha mostrato notevoli vantaggi nella comprensione e generazione del linguaggio naturale. Il pre-training ha permesso al modello di acquisire una comprensione di base delle strutture linguistiche, mentre il fine-tuning ha ottimizzato il modello per rispondere a domande specifiche e situazioni pratiche, aumentando la sua pertinenza e accuratezza. In aggiunta, è stata adottata la strategia di Reinforcement Learning from Human Feedback (RLHF), una metodologia innovativa che ha contribuito a migliorare ulteriormente la qualità delle risposte generate dal chatbot. Questo approccio ha reso possibile l'integrazione di feedback umani nel processo di apprendimento, permettendo al modello di adattarsi e migliorare nel tempo in base alle interazioni reali con gli utenti. I risultati ottenuti sono stati soddisfacenti: il chatbot è stato realizzato con successo e ha dimostrato di poter fornire risposte significative e grammaticalmente corrette. La bontà delle risposte e la loro coerenza grammaticale testimoniano l’efficacia delle tecniche utilizzate. In conclusione, la realizzazione di questo chatbot non rappresenta il punto di arrivo, ma il primo passo verso la realizzazione di sistemi sempre più complessi e sofisticati. L’esperienza acquisita durante questo progetto può servire come base per ulteriori ricerche e applicazioni nel settore dell'interazione uomo-macchina.
Realizzazione di un ChatBot basato su NLP per il supporto dell’utente
ALLENA, GIORGIO
2023/2024
Abstract
Il presente lavoro di tesi si concentra sulla progettazione e realizzazione di un chatbot avanzato, sviluppato utilizzando il linguaggio di programmazione Python e sfruttando il framework PyTorch. Lo scopo principale del progetto è stato quello di creare un sistema di chat interattivo, caratterizzato da un'architettura snella ma potente, in grado di generare risposte linguisticamente coerenti e appropriate in vari contesti conversazionali. La sfida affrontata durante lo sviluppo del chatbot riguardava la necessità di integrare un sistema di Retrieval-Augmented Generation (RAG), che permette di combinare la generazione di testo con l'estrazione di informazioni pertinenti da un database esterno. Questa metodologia consente al chatbot di non solo basarsi su risposte precostituite, ma anche di attingere a dati esterni per fornire risposte più accurate e contestualizzate. La ricerca ha messo in evidenza l'importanza di un approccio ibrido nella creazione di chatbot, evidenziando come questa combinazione possa migliorare l'efficacia delle interazioni. Nel cuore del sistema sviluppato è stato implementato un modello Transformer, che attraverso fasi di pre-training e fine-tuning è stato addestrato per svolgere il compito. Questa architettura ha mostrato notevoli vantaggi nella comprensione e generazione del linguaggio naturale. Il pre-training ha permesso al modello di acquisire una comprensione di base delle strutture linguistiche, mentre il fine-tuning ha ottimizzato il modello per rispondere a domande specifiche e situazioni pratiche, aumentando la sua pertinenza e accuratezza. In aggiunta, è stata adottata la strategia di Reinforcement Learning from Human Feedback (RLHF), una metodologia innovativa che ha contribuito a migliorare ulteriormente la qualità delle risposte generate dal chatbot. Questo approccio ha reso possibile l'integrazione di feedback umani nel processo di apprendimento, permettendo al modello di adattarsi e migliorare nel tempo in base alle interazioni reali con gli utenti. I risultati ottenuti sono stati soddisfacenti: il chatbot è stato realizzato con successo e ha dimostrato di poter fornire risposte significative e grammaticalmente corrette. La bontà delle risposte e la loro coerenza grammaticale testimoniano l’efficacia delle tecniche utilizzate. In conclusione, la realizzazione di questo chatbot non rappresenta il punto di arrivo, ma il primo passo verso la realizzazione di sistemi sempre più complessi e sofisticati. L’esperienza acquisita durante questo progetto può servire come base per ulteriori ricerche e applicazioni nel settore dell'interazione uomo-macchina.File | Dimensione | Formato | |
---|---|---|---|
Elaborato_Tesi_Magistrale_di_Giorgio_Allena.pdf
non disponibili
Descrizione: Il presente lavoro di tesi si concentra sulla progettazione e realizzazione di un chatbot avanzato, sviluppato utilizzando il linguaggio di programmazione Python e sfruttando il framework PyTorch.
Dimensione
1.75 MB
Formato
Adobe PDF
|
1.75 MB | Adobe PDF |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14240/164304