Sistema de recuperación de información basado en RAG aplicado a trabajos de fin de grado de la ETSISI

Bookmark (0)
Please login to bookmark Close

En el presente Trabajo de Fin de Grado, en adelante TFG, se desarrolla un sistema de recuperación de la información basándose en la técnica de Retrieval-Augmented Generation (RAG) que se centra en la búsqueda eficiente y veloz de los Trabajos de Fin de Grado defendidos en la ETSISI de la Universidad Politécnica de Madrid. Retrieval-Augmented Generation (RAG) es una técnica dentro del campo del Procesamiento del Lenguaje Natural (PLN) que une la recuperación de información con la generación de texto para ser capaz de responder a cualquier pregunta usando datos externos, en este caso, los TFGS defendidos en la Escuela. Esta integración permite generar respuestas más contextualizadas y precisas, superando las barreras de los modelos generativos tradicionales. El desarrollo de este sistema permite realizar consultas sobre estos TFGs mediante lenguaje natural, mejorando la accesibilidad a la información y ayudando a la localización de esta para estudiantes, investigadores, etc.
El desarrollo de este sistema se ha dividido en tres fases. En primer lugar, se ha comenzado con la extracción de la información y el procesamiento de los datos de los TFGs ya defendidos y publicados en la página web de archivos digitales de la Universidad Politécnica de Madrid, oa.upm.es. Esta fase se ha llevado a cabo mediante web scrapping con Selenium, consiguiendo extraer esta información y estructurándola en un archivo JSON. A continuación, con la implementación de un modelo del servidor de Ollama, “Stablelm2” y la biblioteca LangChain se ha implementado el sistema RAG. La elección de este modelo se basa en la capacidad de ser modelo generativo enfocado en QA y en español.
Finalmente, se evaluó el sistema mediante las métricas BERTScore, que nos permite medir de manera clara y objetiva la calidad de las respuestas generadas por el modelo contrastándolas con sus respuestas reales. Gracias a esta evaluación comprobamos que el sistema responde de manera relevante y coherente a las distintas consultas realizadas en lenguaje natural, demostrando que es capaz de acceder a la información guardada de los TFGs de una manera eficaz e intuitiva.
En cuanto a los resultados, el sistema es capaz de hacer búsquedas precisas sobre la información alojada en el JSON devolviendo una respuesta generada por el modelo en lenguaje natural. El sistema es robusto y escalable ya que ha sido sometido a una batería de pruebas cuando la muestra de información del JSON era escasa y cuando esta contaba con la información de hasta 30 TFGs distintos. En ambos casos el modelo responde correctamente a las preguntas realizadas y no sufre “alucinaciones” al aumentar la cantidad de información a procesar.
Como conclusión, este sistema representa un gran avance en la accesibilidad a este tipo de información con técnicas de Inteligencia Artificial y Procesamiento del Lenguaje Natural. Como futuras mejoras se ha planteado la integración de alguno modelo más grande que sea capaz de soportar más información con la finalidad de crear una herramienta, robusta y escalable, para que cualquier usuario pueda tener un acceso más rápido e intuitivo a esta gran cantidad de información.
Abstract:
This Final Degree Project presents the development of an information retrieval system based on the Retrieval-Augmented Generation (RAG) technique, focused on the efficient and fast search of Final Degree Projects defended at the ETSISI of the Universidad Politécnica de Madrid. Retrieval-Augmented Generation (RAG) is a technique within the field of Natural Language Processing (NLP) that combines information retrieval with text generation to answer any question using external data, in this case, the TFGs defended at the University. This integration enables the generation of more contextualized and accurate responses, overcoming the limitations of traditional generative models. The developed system allows users to query these TFGs using natural language, improving access to academic information for students, researchers and other interested users.
The development of the system has been divided into three phases. First, the information was extracted and processed from already published TFGs available on the university’s digital archive website (oa.upm.es). This phase was carried out using web scrapping with Selenium, successfully extracting the data and structuring it into a JSON file. Then, the RAG system was implemented using the “StableLM2” model deployed via the Ollama server and the LangChain library. This model was chosen for its ability to generate responses in Spanish and its optimization for question-answering task.
Finally, the system was evaluated using BERTScore metrics, which allow for an objective and accurate measurement of the quality of the generated responses by comparing the with ground truth answers. This evaluation confirmed that the system provides coherent and relevant answers to natural language queries, demonstrating its ability to effectively and intuitively retrieve the stored TFG information.
In terms of results, the system is capable of conducting accurate searches on the JSON-stored information and returning responses generated in natural language. The system is both robust and scalable, as it was tested with small data samples as well as with datasets containing up to 25 different TFGs. In all cases, the model responded correctly to the queries without generating “hallucinations” as the amount of information increased.
In conclusion, this system represents a significant advancement in accessing academic information through Artificial Intelligence and Natural Language Processing techniques. As a future improvement, the integration of a more powerful model is proposed to support larger volumes of data, with the goal of creating a robust and scalable tool that allows any user to quickly and intuitively access a large collection of academic documents.

​En el presente Trabajo de Fin de Grado, en adelante TFG, se desarrolla un sistema de recuperación de la información basándose en la técnica de Retrieval-Augmented Generation (RAG) que se centra en la búsqueda eficiente y veloz de los Trabajos de Fin de Grado defendidos en la ETSISI de la Universidad Politécnica de Madrid. Retrieval-Augmented Generation (RAG) es una técnica dentro del campo del Procesamiento del Lenguaje Natural (PLN) que une la recuperación de información con la generación de texto para ser capaz de responder a cualquier pregunta usando datos externos, en este caso, los TFGS defendidos en la Escuela. Esta integración permite generar respuestas más contextualizadas y precisas, superando las barreras de los modelos generativos tradicionales. El desarrollo de este sistema permite realizar consultas sobre estos TFGs mediante lenguaje natural, mejorando la accesibilidad a la información y ayudando a la localización de esta para estudiantes, investigadores, etc.
El desarrollo de este sistema se ha dividido en tres fases. En primer lugar, se ha comenzado con la extracción de la información y el procesamiento de los datos de los TFGs ya defendidos y publicados en la página web de archivos digitales de la Universidad Politécnica de Madrid, oa.upm.es. Esta fase se ha llevado a cabo mediante web scrapping con Selenium, consiguiendo extraer esta información y estructurándola en un archivo JSON. A continuación, con la implementación de un modelo del servidor de Ollama, “Stablelm2” y la biblioteca LangChain se ha implementado el sistema RAG. La elección de este modelo se basa en la capacidad de ser modelo generativo enfocado en QA y en español.
Finalmente, se evaluó el sistema mediante las métricas BERTScore, que nos permite medir de manera clara y objetiva la calidad de las respuestas generadas por el modelo contrastándolas con sus respuestas reales. Gracias a esta evaluación comprobamos que el sistema responde de manera relevante y coherente a las distintas consultas realizadas en lenguaje natural, demostrando que es capaz de acceder a la información guardada de los TFGs de una manera eficaz e intuitiva.
En cuanto a los resultados, el sistema es capaz de hacer búsquedas precisas sobre la información alojada en el JSON devolviendo una respuesta generada por el modelo en lenguaje natural. El sistema es robusto y escalable ya que ha sido sometido a una batería de pruebas cuando la muestra de información del JSON era escasa y cuando esta contaba con la información de hasta 30 TFGs distintos. En ambos casos el modelo responde correctamente a las preguntas realizadas y no sufre “alucinaciones” al aumentar la cantidad de información a procesar.
Como conclusión, este sistema representa un gran avance en la accesibilidad a este tipo de información con técnicas de Inteligencia Artificial y Procesamiento del Lenguaje Natural. Como futuras mejoras se ha planteado la integración de alguno modelo más grande que sea capaz de soportar más información con la finalidad de crear una herramienta, robusta y escalable, para que cualquier usuario pueda tener un acceso más rápido e intuitivo a esta gran cantidad de información.
Abstract:
This Final Degree Project presents the development of an information retrieval system based on the Retrieval-Augmented Generation (RAG) technique, focused on the efficient and fast search of Final Degree Projects defended at the ETSISI of the Universidad Politécnica de Madrid. Retrieval-Augmented Generation (RAG) is a technique within the field of Natural Language Processing (NLP) that combines information retrieval with text generation to answer any question using external data, in this case, the TFGs defended at the University. This integration enables the generation of more contextualized and accurate responses, overcoming the limitations of traditional generative models. The developed system allows users to query these TFGs using natural language, improving access to academic information for students, researchers and other interested users.
The development of the system has been divided into three phases. First, the information was extracted and processed from already published TFGs available on the university’s digital archive website (oa.upm.es). This phase was carried out using web scrapping with Selenium, successfully extracting the data and structuring it into a JSON file. Then, the RAG system was implemented using the “StableLM2” model deployed via the Ollama server and the LangChain library. This model was chosen for its ability to generate responses in Spanish and its optimization for question-answering task.
Finally, the system was evaluated using BERTScore metrics, which allow for an objective and accurate measurement of the quality of the generated responses by comparing the with ground truth answers. This evaluation confirmed that the system provides coherent and relevant answers to natural language queries, demonstrating its ability to effectively and intuitively retrieve the stored TFG information.
In terms of results, the system is capable of conducting accurate searches on the JSON-stored information and returning responses generated in natural language. The system is both robust and scalable, as it was tested with small data samples as well as with datasets containing up to 25 different TFGs. In all cases, the model responded correctly to the queries without generating “hallucinations” as the amount of information increased.
In conclusion, this system represents a significant advancement in accessing academic information through Artificial Intelligence and Natural Language Processing techniques. As a future improvement, the integration of a more powerful model is proposed to support larger volumes of data, with the goal of creating a robust and scalable tool that allows any user to quickly and intuitively access a large collection of academic documents. Read More