In this thesis we present the work done in extending the cybersecurity knowledge graph CyberGraph through the creation of a chatbot interface able to dialogue with user about vulnerability information from multiple data sources. The chatbot leverages Large Language Models (LLMs) and modern AI technologies to translate user queries into graph database operations by using a step by step architecture to decompose complex queries into smaller operations. We will present CyberGraph architecture, how its various data sources are connected together and how it is possible to extract those data using query in Cypher language. We will then explain how those queries are useful for the process of developing the chatbot created in python programming language with the use of LangChain and LangGraph library. We will talk about how each of the chatbot workflow nodes operate and how the information are processed and passed to the next node in the chain to form an architecture that can understand and execute the user queries against our database. In the end we will give some example of the graphical user interface and conclude by explaining the possible future implementations that may enhance the software.
Chatting with a cybersecurity knowledge graph through a Large Language Model
CARBONE, ETTORE
2023/2024
Abstract
In this thesis we present the work done in extending the cybersecurity knowledge graph CyberGraph through the creation of a chatbot interface able to dialogue with user about vulnerability information from multiple data sources. The chatbot leverages Large Language Models (LLMs) and modern AI technologies to translate user queries into graph database operations by using a step by step architecture to decompose complex queries into smaller operations. We will present CyberGraph architecture, how its various data sources are connected together and how it is possible to extract those data using query in Cypher language. We will then explain how those queries are useful for the process of developing the chatbot created in python programming language with the use of LangChain and LangGraph library. We will talk about how each of the chatbot workflow nodes operate and how the information are processed and passed to the next node in the chain to form an architecture that can understand and execute the user queries against our database. In the end we will give some example of the graphical user interface and conclude by explaining the possible future implementations that may enhance the software.File | Dimensione | Formato | |
---|---|---|---|
Carbone_Ettore_thesis.pdf
accesso aperto
Dimensione
3.39 MB
Formato
Adobe PDF
|
3.39 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14247/24776