How I Built an LLM App Based on Graph-RAG System with ChromaDB and Chainlit
Last Updated on December 25, 2024 by Editorial Team
Author(s): Dr. Alessandro Crimi
Originally published on Towards AI.
This member-only story is on us. Upgrade to access all of Medium.
End-to-end app with GUI and storing new knowledge on vector database in just 3 scripts
image from Pexels.com royalty-free CC licenseLarge language models (LLMs) and knowledge graphs are valuable tools to work with natural language processing. Retrieval-augmented generation (RAG) has emerged as a powerful approach to enhance LLMs responses with contextual knowledge. Contextual knowledge is generally embedded and stored in a vector database and used to create the context to empower a prompt. However, in this way, knowledge is mapped in a conceptual space but it is not really organized. A knowledge graph captures information about data points or entities in a domain and the relationships between them. Data are described as nodes and relationships within a knowledge graph. This gives more structure than just embedding words in a vector space.
A graph-RAG is something that combines both aspects providing the augmented knowledge of RAG to be organized as knowledge graph for better responses by the LLM.
In this article, I am going to tell you how I created an application end-to-end putting together all this.
Shortly, I used
Chainlit for the front-endChromaDB to store knowledge as vectorsNetworkx to manage graphSentence-transformers (Pytorch) for generating… Read the full blog for free on Medium.
Join thousands of data leaders on the AI newsletter. Join over 80,000 subscribers and keep up to date with the latest developments in AI. From research to projects and ideas. If you are building an AI startup, an AI-related product, or a service, we invite you to consider becoming aΒ sponsor.
Published via Towards AI