With the growing amount of information available on the internet, search engines have become a vital tool for finding relevant information quickly and efficiently. However, traditional search engines often require users to input specific keywords and phrases, which can be challenging for those who are not familiar with the technical terms or the subject matter. To address this challenge, conversational search engines have emerged as a promising solution, allowing users to search for information using natural language queries. This thesis aims to design and implement a conversational search engine that allows the user to search for information through a dialogue in natural language. The proposed system will be built using the Python programming language, the library of Natural Language Toolkit (NLTK), of OpenAI and Elasticsearch. The system will be based on a combination of techniques of manual learning by the bot and natural language processing algorithms, allowing it to understand the user's intent and context of their query. The system's development will involve three main components: the user interface, the natural language processing module, and the information retrieval module. The user interface will be designed to provide the user with a continuous conversational experience, allowing him to interact with the search engine using natural language queries. The natural language processing module will utilize techniques such as sentiment analysis from NLTK to understand the user's query and extract relevant information. The information retrieval module will utilize Elasticsearch to retrieve relevant documents from a corpus of data, the collection TREC 2004 Robust, using techniques such as BM25. Finally, some dialogue cases will be studied to show the relative strengths and weaknesses of this new conversational search engine. This research tries to contribute to the growing field of conversational agents and can be useful in various domains such as education, healthcare, and e-commerce. For example, conversational search engines can be used in educational settings to help students search for information on a particular topic. Similarly, in the healthcare domain, conversational search engines can assist patients in finding information about their medical conditions. In the e-commerce domain, conversational search engines can help users find products based on their preferences and needs. In conclusion, the proposed conversational search engine has the potential to provide the user with a more natural and intuitive way of searching for information. The development and evaluation of this system using only Python language, NLTK, OpenAI and Elasticsearch can be used in various domains to improve the user experience of search engines and will contribute to the growing body of research on conversational agents.

Con la crescente quantità di informazioni disponibili su Internet, i motori di ricerca sono diventati uno strumento fondamentale per trovare informazioni pertinenti in modo rapido ed efficiente. Tuttavia, i motori di ricerca tradizionali richiedono spesso agli utenti di inserire parole chiave e frasi specifiche, il che può essere difficile per coloro che non hanno familiarità coi termini tecnici o nell'argomento. Per affrontare questa sfida, i motori di ricerca conversazionali sono emersi come una soluzione promettente, consentendo agli utenti di cercare informazioni utilizzando query in linguaggio naturale. Questa tesi mira a progettare e implementare un motore di ricerca conversazionale che consenta all’utente di cercare informazioni attraverso un dialogo in linguaggio naturale. Il sistema proposto sarà costruito utilizzando il linguaggio di programmazione Python, la libreria di Natural Language Toolkit (NLTK), di OpenAI ed Elasticsearch. Il sistema si baserà su una combinazione di tecniche di apprendimento automatico del bot e algoritmi di elaborazione del linguaggio naturale, consentendogli di comprendere l'intento dell'utente e il contesto della sua query. Lo sviluppo del sistema coinvolgerà tre componenti principali: l'interfaccia con l’utente, il modulo di elaborazione del linguaggio naturale e la parte di reperimento delle informazioni. L'interfaccia utente sarà progettata per fornire all’utente un’esperienza continua di conversazione, consentendogli di interagire con il motore di ricerca utilizzando query in linguaggio naturale. Il modulo di elaborazione del linguaggio naturale utilizzerà tecniche come l'analisi del sentimento da NLTK per comprendere la query dell'utente ed estrarre informazioni rilevanti. Il modulo di recupero delle informazioni utilizzerà Elasticsearch per recuperare documenti pertinenti da un corpus di dati, la collezione TREC 2004 Robust, utilizzando tecniche come BM25. Infine, si studieranno dei casi di dialogo per mostrare i relativi punti di forza e di debolezza di questo nuovo motore di ricerca conversazionale. Questa ricerca cerca di contribuire al crescente campo degli agenti conversazionali e può essere utile in vari settori come l'istruzione, la sanità e l'e-commerce. Ad esempio, i motori di ricerca conversazionali possono essere utilizzati in contesti educativi per aiutare gli studenti a cercare informazioni su un particolare argomento. Allo stesso modo, nel settore sanitario, i motori di ricerca conversazionali possono aiutare i pazienti a trovare informazioni sulle loro condizioni mediche. Nel dominio dell'e-commerce, i motori di ricerca conversazionali possono aiutare gli utenti a trovare prodotti in base alle loro preferenze ed esigenze. In conclusione, il motore di ricerca conversazionale proposto ha il potenziale per fornire all’utente un modo più naturale e intuitivo di cercare informazioni. Lo sviluppo e la valutazione di questo sistema utilizzando solo il linguaggio Python, NLTK, OpenAI ed Elasticsearch può essere utilizzato in vari domini per migliorare l'esperienza per utente coi motori di ricerca e contribuirà al crescente corpo di ricerca sugli agenti conversazionali.

Esplorazione di OpenAI ChatGPT ed Elasticsearch per il reperimento conversazionale dell’informazione

CIOTTI, NICOLA
2022/2023

Abstract

With the growing amount of information available on the internet, search engines have become a vital tool for finding relevant information quickly and efficiently. However, traditional search engines often require users to input specific keywords and phrases, which can be challenging for those who are not familiar with the technical terms or the subject matter. To address this challenge, conversational search engines have emerged as a promising solution, allowing users to search for information using natural language queries. This thesis aims to design and implement a conversational search engine that allows the user to search for information through a dialogue in natural language. The proposed system will be built using the Python programming language, the library of Natural Language Toolkit (NLTK), of OpenAI and Elasticsearch. The system will be based on a combination of techniques of manual learning by the bot and natural language processing algorithms, allowing it to understand the user's intent and context of their query. The system's development will involve three main components: the user interface, the natural language processing module, and the information retrieval module. The user interface will be designed to provide the user with a continuous conversational experience, allowing him to interact with the search engine using natural language queries. The natural language processing module will utilize techniques such as sentiment analysis from NLTK to understand the user's query and extract relevant information. The information retrieval module will utilize Elasticsearch to retrieve relevant documents from a corpus of data, the collection TREC 2004 Robust, using techniques such as BM25. Finally, some dialogue cases will be studied to show the relative strengths and weaknesses of this new conversational search engine. This research tries to contribute to the growing field of conversational agents and can be useful in various domains such as education, healthcare, and e-commerce. For example, conversational search engines can be used in educational settings to help students search for information on a particular topic. Similarly, in the healthcare domain, conversational search engines can assist patients in finding information about their medical conditions. In the e-commerce domain, conversational search engines can help users find products based on their preferences and needs. In conclusion, the proposed conversational search engine has the potential to provide the user with a more natural and intuitive way of searching for information. The development and evaluation of this system using only Python language, NLTK, OpenAI and Elasticsearch can be used in various domains to improve the user experience of search engines and will contribute to the growing body of research on conversational agents.
2022
Exploring OpenAI ChatGPT and Elasticsearch for Conversational Information Retrieval
Con la crescente quantità di informazioni disponibili su Internet, i motori di ricerca sono diventati uno strumento fondamentale per trovare informazioni pertinenti in modo rapido ed efficiente. Tuttavia, i motori di ricerca tradizionali richiedono spesso agli utenti di inserire parole chiave e frasi specifiche, il che può essere difficile per coloro che non hanno familiarità coi termini tecnici o nell'argomento. Per affrontare questa sfida, i motori di ricerca conversazionali sono emersi come una soluzione promettente, consentendo agli utenti di cercare informazioni utilizzando query in linguaggio naturale. Questa tesi mira a progettare e implementare un motore di ricerca conversazionale che consenta all’utente di cercare informazioni attraverso un dialogo in linguaggio naturale. Il sistema proposto sarà costruito utilizzando il linguaggio di programmazione Python, la libreria di Natural Language Toolkit (NLTK), di OpenAI ed Elasticsearch. Il sistema si baserà su una combinazione di tecniche di apprendimento automatico del bot e algoritmi di elaborazione del linguaggio naturale, consentendogli di comprendere l'intento dell'utente e il contesto della sua query. Lo sviluppo del sistema coinvolgerà tre componenti principali: l'interfaccia con l’utente, il modulo di elaborazione del linguaggio naturale e la parte di reperimento delle informazioni. L'interfaccia utente sarà progettata per fornire all’utente un’esperienza continua di conversazione, consentendogli di interagire con il motore di ricerca utilizzando query in linguaggio naturale. Il modulo di elaborazione del linguaggio naturale utilizzerà tecniche come l'analisi del sentimento da NLTK per comprendere la query dell'utente ed estrarre informazioni rilevanti. Il modulo di recupero delle informazioni utilizzerà Elasticsearch per recuperare documenti pertinenti da un corpus di dati, la collezione TREC 2004 Robust, utilizzando tecniche come BM25. Infine, si studieranno dei casi di dialogo per mostrare i relativi punti di forza e di debolezza di questo nuovo motore di ricerca conversazionale. Questa ricerca cerca di contribuire al crescente campo degli agenti conversazionali e può essere utile in vari settori come l'istruzione, la sanità e l'e-commerce. Ad esempio, i motori di ricerca conversazionali possono essere utilizzati in contesti educativi per aiutare gli studenti a cercare informazioni su un particolare argomento. Allo stesso modo, nel settore sanitario, i motori di ricerca conversazionali possono aiutare i pazienti a trovare informazioni sulle loro condizioni mediche. Nel dominio dell'e-commerce, i motori di ricerca conversazionali possono aiutare gli utenti a trovare prodotti in base alle loro preferenze ed esigenze. In conclusione, il motore di ricerca conversazionale proposto ha il potenziale per fornire all’utente un modo più naturale e intuitivo di cercare informazioni. Lo sviluppo e la valutazione di questo sistema utilizzando solo il linguaggio Python, NLTK, OpenAI ed Elasticsearch può essere utilizzato in vari domini per migliorare l'esperienza per utente coi motori di ricerca e contribuirà al crescente corpo di ricerca sugli agenti conversazionali.
File in questo prodotto:
File Dimensione Formato  
Ciotti_Nicola.pdf

accesso aperto

Dimensione 3.8 MB
Formato Adobe PDF
3.8 MB Adobe PDF Visualizza/Apri

The text of this website © Università degli studi di Padova. Full Text are published under a non-exclusive license. Metadata are under a CC0 License

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