help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • Blog
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
rag-chatbot
RSK World
rag-chatbot
RAG Chatbot - Python + LangChain + ChromaDB + OpenAI API + Vector Search + Knowledge Base
rag-chatbot
  • __pycache__
  • analytics
  • conversations
  • knowledge_base
  • static
  • templates
  • vector_db
  • .env.example502 B
  • .gitignore519 B
  • ADVANCED_FEATURES.md5.2 KB
  • GITHUB_PUSH_SUMMARY.md3.6 KB
  • ISSUES_FIXED.md3.3 KB
  • LICENSE1.2 KB
  • PROJECT_INFO.md3 KB
  • QUICKSTART.md1.5 KB
  • README.md3.9 KB
  • RELEASE_NOTES.md3.7 KB
  • analytics.py6.9 KB
  • app.py8.3 KB
  • chatbot.py10.8 KB
  • config.py1.8 KB
  • conversation_manager.py5.8 KB
  • embeddings.py1.9 KB
  • hybrid_search.py4 KB
  • prepare_knowledge_base.py6.8 KB
  • requirements.txt377 B
  • setup.py2.8 KB
  • vector_store.py6.7 KB
RELEASE_NOTES.mddownload_ucf101.pyapp.cpython-313.pycSETUP.mdconfig.py
RELEASE_NOTES.md
Raw Download

RELEASE_NOTES.md

# Release Notes - v1.0.0

<!--
Project: RAG Chatbot
Developer: RSK World
Website: https://rskworld.in
Email: help@rskworld.in
Phone: +91 93305 39277
Year: 2026
-->

## 🎉 Initial Release - RAG Chatbot v1.0.0

**Release Date:** January 2026
**Developer:** RSK World
**Website:** https://rskworld.in

---

## 🚀 Features

### Core Features
- ✅ **Knowledge Base Integration** - ChromaDB vector database for efficient document storage
- ✅ **Vector Similarity Search** - Semantic search using embeddings
- ✅ **Context Retrieval** - Intelligent context extraction from knowledge base
- ✅ **RAG Architecture** - Retrieval-Augmented Generation for accurate responses
- ✅ **Domain-Specific Knowledge** - Support for custom knowledge bases

### Advanced Features
- ✅ **Conversation History** - Maintains context across multiple messages
- ✅ **Streaming Responses** - Real-time streaming of LLM responses via Server-Sent Events
- ✅ **Hybrid Search** - Combines vector similarity with keyword matching (70% vector, 30% keyword)
- ✅ **File Upload** - Drag-and-drop document upload through web interface
- ✅ **Analytics Dashboard** - Track queries, sessions, response times, and feedback
- ✅ **Feedback System** - Thumbs up/down for responses
- ✅ **Chat Export** - Export conversations as JSON
- ✅ **Session Management** - Multiple concurrent sessions with independent history
- ✅ **Response Time Tracking** - Monitor performance metrics

---

## 📦 What's Included

### Backend Components
- Flask web application with RESTful API
- RAG chatbot implementation with LangChain
- Vector store management (ChromaDB)
- Embedding utilities (OpenAI)
- Conversation manager
- Analytics tracking system
- Hybrid search implementation

### Frontend Components
- Modern, responsive web interface
- Real-time chat interface
- Analytics dashboard
- File upload modal
- Streaming response support
- Feedback system UI

### Documentation
- Comprehensive README.md
- Quick Start Guide
- Advanced Features Documentation
- Project Information
- Setup Instructions

---

## 🛠️ Technologies Used

- **Python 3.8+**
- **Flask** - Web framework
- **LangChain** - LLM application framework
- **ChromaDB** - Vector database
- **OpenAI API** - Embeddings and LLM
- **HTML/CSS/JavaScript** - Frontend
- **Font Awesome** - Icons

---

## 📋 Installation

1. Clone the repository:
```bash
git clone https://github.com/rskworld/rag-chatbot.git
cd rag-chatbot
```

2. Install dependencies:
```bash
pip install -r requirements.txt
```

3. Set up environment variables:
```bash
cp .env.example .env
# Edit .env and add your OpenAI API key
```

4. Prepare knowledge base:
```bash
python prepare_knowledge_base.py
```

5. Run the application:
```bash
python app.py
```

6. Open browser:
Navigate to `http://localhost:5000`

---

## 📚 Documentation

- **README.md** - Main documentation
- **QUICKSTART.md** - Quick start guide
- **ADVANCED_FEATURES.md** - Advanced features documentation
- **PROJECT_INFO.md** - Project information
- **ISSUES_FIXED.md** - Issues and fixes log

---

## 🔗 Links

- **Repository:** https://github.com/rskworld/rag-chatbot
- **Website:** https://rskworld.in
- **Email:** help@rskworld.in
- **Phone:** +91 93305 39277

---

## 📝 License

MIT License - See LICENSE file for details.

---

## 👨‍💻 Developer

**RSK World**
Website: https://rskworld.in
Email: help@rskworld.in
Phone: +91 93305 39277

---

## 🙏 Acknowledgments

Built with:
- LangChain
- ChromaDB
- OpenAI
- Flask
- And the open-source community

---

**© 2026 RSK World - https://rskworld.in**

app.cpython-313.pyc

This file cannot be displayed in the browser.

Download File
config.py
Raw Download
Find: Go to:
"""
RAG Chatbot - Configuration
Project: RAG Chatbot
Developer: RSK World
Website: https://rskworld.in
Email: help@rskworld.in
Phone: +91 93305 39277
Year: 2026
Description: Configuration settings for the RAG chatbot
"""

import os
from dotenv import load_dotenv

# Load environment variables
load_dotenv()


class Config:
    """
    Configuration class for the RAG chatbot application.
    """
    
    # OpenAI Configuration
    OPENAI_API_KEY = os.getenv('OPENAI_API_KEY', '')
    EMBEDDING_MODEL = os.getenv('EMBEDDING_MODEL', 'text-embedding-3-small')
    LLM_MODEL = os.getenv('LLM_MODEL', 'gpt-3.5-turbo')
    
    # Vector Database Configuration
    VECTOR_DB_PATH = os.getenv('VECTOR_DB_PATH', './vector_db')
    COLLECTION_NAME = os.getenv('COLLECTION_NAME', 'knowledge_base')
    
    # Retrieval Configuration
    TOP_K_RESULTS = int(os.getenv('TOP_K_RESULTS', '5'))
    CHUNK_SIZE = int(os.getenv('CHUNK_SIZE', '1000'))
    CHUNK_OVERLAP = int(os.getenv('CHUNK_OVERLAP', '200'))
    
    # Flask Configuration
    SECRET_KEY = os.getenv('SECRET_KEY', 'dev-secret-key-change-in-production')
    DEBUG = os.getenv('DEBUG', 'False').lower() == 'true'
    PORT = int(os.getenv('PORT', '5000'))
    HOST = os.getenv('HOST', '0.0.0.0')
    
    # Knowledge Base Configuration
    KNOWLEDGE_BASE_PATH = os.getenv('KNOWLEDGE_BASE_PATH', './knowledge_base')
    
    @staticmethod
    def validate():
        """
        Validate that all required configuration is present.
        
        Returns:
            tuple: (is_valid, missing_keys)
        """
        required_keys = ['OPENAI_API_KEY']
        missing = []
        
        for key in required_keys:
            if not getattr(Config, key):
                missing.append(key)
        
        return len(missing) == 0, missing

64 lines•1.8 KB
python
🚀 Support RSK World

Subscribe to our YouTube channel for latest tutorials & updates!



Click subscribe & support our work ❤️

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer