Yoni.T
Back to Projects
AI/Data/MLFeb 2024 - Jul 20243 Min Read

Implementing an AI Chatbot for Enhanced Information Access with LLM and RAG

Development of an AI-based chatbot using the RAG method at Catur Insan Cendekia University to enhance fast and contextual information access.

Implementing an AI Chatbot for Enhanced Information Access with LLM and RAG

πŸ€– AI-Based Chatbot System with Retrieval-Augmented Generation (RAG)

🌐 Overview

In today’s digital era, quick and accurate information access is crucial, especially in education. To address this need, I developed an AI-based chatbot system for Catur Insan Cendekia University using the Retrieval-Augmented Generation (RAG) method. This system provides fast, relevant, and contextual information access for students and the public.


❓ What is Retrieval-Augmented Generation (RAG)?

RAG is an innovative approach that combines two main components:

  1. πŸ—‚οΈ Indexing and Retrieval
  2. πŸ“ Generation

This method enables the system to:

  • πŸ” Search and retrieve relevant information from a database.
  • πŸ’¬ Process and generate contextual, informative responses.

βš™οΈ How It Works

1. Indexing

  • πŸ“„ Documents are structured hierarchically into β€œparent chunks” and β€œchild chunks”.
  • 🧠 Each chunk is transformed into vectors using embedding models like Sentence-BERT to improve semantic accuracy.

2. Retrieval

  • πŸ”Ž Utilizes a Parent Document Retriever to locate the most relevant data based on user queries.
  • 🎯 Pinpoints the exact child chunk while providing the parent chunk as context for a comprehensive response.

3. Augmented Information

  • ✨ The retrieved data is enhanced with:
    • πŸ—£οΈ Language model instructions.
    • πŸ—ƒοΈ Vector database context.
    • πŸ’‘ User query inputs.

4. Generation

  • πŸš€ The enhanced information is processed using a large language model (LLM) such as Gemini AI to generate coherent and informative responses.

πŸ› οΈ Tools Used

To build this RAG-based chatbot, the following tools and technologies were utilized:

  • 🧰 LangChain: Framework for building applications powered by LLMs.
  • πŸ€— HuggingFace: Pre-trained NLP models for embedding and text processing.
  • πŸ—„οΈ ChromaDB: Vector database for storing embeddings.
  • 🌌 Gemini AI: Large language model for generating responses.
  • πŸ“¦ Unstructured IO: Document processing and structuring.
  • 🌐 Django: Backend framework for building the API.
  • ⚑ Redis: Fast data storage for caching.
  • 🐝 Celery: Task queue for asynchronous processing.
  • πŸ”§ Other Python libraries to support the implementation.

✨ Features

  • ⚑ Fast and Relevant Responses: Provides accurate and contextual answers to user queries.
  • πŸ“š Information Hierarchy: Structures documents to ensure efficient retrieval.
  • πŸŽ“ Educational Focus: Tailored to meet the needs of students and the academic community.

πŸ–ΌοΈ Screenshots

Chat Interface

Chat Interface 1 Chat Interface 2

Admin Interface

Admin Interface 1 Admin Interface 2

🌟 Impact

By applying the RAG method, this chatbot significantly improves the accessibility and efficiency of information services in educational settings. It offers a scalable solution for modern institutions aiming to enhance their digital services.


πŸ“‚ Repository

This project demonstrates the practical application of AI-based chatbots and RAG techniques in real-world scenarios. For further details, please visit the GitHub repository:

πŸ”— Chatbot Admin System


πŸ“„ Published Article

The related article has been published and can be accessed at:
πŸ”— Seminar Nasional IAII - SISFOTEK Journal


πŸ’‘ Skills Demonstrated

  • πŸ€– Large Language Models (LLM)
  • 🧠 Retrieval-Augmented Generation (RAG)
  • πŸ“ Natural Language Processing (NLP)
  • 🧰 LangChain Framework
  • πŸ” Information Retrieval
  • 🌐 Backend Development with Django