Skip to content

Fully Free & Offline RAG Chatbot: A fully open-source, offline-capable RAG chatbot powered by local LLMs and vector search. Built without any paid APIs, making it ideal for secure, private, and cost-effective deployments in industrial environments.

Notifications You must be signed in to change notification settings

S18-Niloy/Open-rag-mlops

Repository files navigation

Industry-Ready RAG Chatbot (FREE APIs + MLOps) (Still Not Completed)

This is a production-style Retrieval-Augmented Generation (RAG) chatbot using 100% free & open-source tools.

Tech Stack

  • LLM: Ollama (LLaMA3 / Mistral) – FREE, local
  • Embeddings: SentenceTransformers
  • Vector DB: FAISS
  • Backend: FastAPI
  • Frontend: Streamlit
  • MLOps: MLflow
  • Orchestration: LangChain
  • Containerization: Docker (optional)

1. Setup (Local)

Install system dependency

curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3

Create virtual environment

python -m venv venv
source venv/bin/activate   # Linux/Mac
venv\Scripts\activate    # Windows

Install requirements

pip install -r requirements.txt

2. Index Documents (RAG)

Put your PDFs or TXTs inside data/ and run:

python ingest.py

3. Run Backend (API)

uvicorn app.main:app --reload

API available at:

http://127.0.0.1:8000/docs

4. Run Chat UI

streamlit run ui/chat_ui.py

5. MLflow Tracking

mlflow ui

Open:

http://127.0.0.1:5000

Folder Structure

rag_chatbot_project/
│── app/
│   ├── main.py
│   ├── rag.py
│── data/
│── vectorstore/
│── ui/
│   ├── chat_ui.py
│── ingest.py
│── requirements.txt
│── Dockerfile

Ready For

  • Internship / Job Portfolio
  • Startup MVP
  • Research demo
  • Production extension (Auth, Redis, CI/CD)

About

Fully Free & Offline RAG Chatbot: A fully open-source, offline-capable RAG chatbot powered by local LLMs and vector search. Built without any paid APIs, making it ideal for secure, private, and cost-effective deployments in industrial environments.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages