⚡ Enterprise-grade AI chatbot powered by NVIDIA NIM + Llama 3.1 (8B)
An enterprise-ready Retrieval-Augmented Generation (RAG) chatbot that allows you to:
- Upload documents 📄
- Ask intelligent questions 🤖
- Get context-aware answers 💡
Built using LangChain + NVIDIA NIM (Llama 3.1 8B) with a secure and scalable architecture.
🔥 Smart Document QA Upload PDFs & DOCX → get AI-powered answers instantly
🔐 Secure Authentication Email OTP login system using SMTP
🛡️ Content Moderation Filters harmful or inappropriate prompts
⚡ High Performance Backend Powered by FastAPI + FAISS vector search
🐳 Docker Ready One-command deployment
- FastAPI
- LangChain
- FAISS
- SentenceTransformers
- Uvicorn
- Streamlit
- HTTPX / Requests
- JWT Authentication
- Email OTP (SMTP)
- better-profanity
- Docker
- Docker Compose
Make sure you have:
- Python 3.11+
- Git
- (Optional) Docker Desktop
Also required:
- NVIDIA NIM API Key
- Email App Password
git clone https://github.com/Sujay-Kathi/Enterprise-Chatbot.git
cd Enterprise-Chatbotcp .env.example .envUpdate .env:
NVIDIA_API_KEY=nvapi-xxxx
JWT_SECRET_KEY=your_secret_key
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your_email@gmail.com
SMTP_PASSWORD=your_app_password
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2
NIM_MODEL=meta/llama-3.1-8b-instructpython -m venv .venv
.venv\Scripts\activate # Windows
pip install -r backend/requirements.txt
python backend/main.pyBackend → http://localhost:8000
.venv\Scripts\activate
pip install -r frontend/requirements.txt
streamlit run frontend/app.pyFrontend → http://localhost:8501
docker-compose up --build- Frontend: Deploy the
frontend/folder to Streamlit Cloud. - Backend: Deploy the root directory to Railway or Render.
- The
Procfileandruntime.txtare already included for convenience.
- The
- Environment Variables:
- Set
BACKEND_URLin Streamlit Cloud to your deployed backend URL. - Set all
.envvariables in your backend hosting provider.
- Set
- Open →
http://localhost:8501 - Login using Email OTP
- Upload documents 📂
- Ask questions 💬
- Get AI answers 🤖
Enterprise-Chatbot/
│
├── backend/ # FastAPI + RAG logic
├── frontend/ # Streamlit UI
├── data/ # Vector DB & uploads
├── docker-compose.yml
└── .env
We love contributions ❤️
# Fork the repo
# Create a new branch
git checkout -b feature/AmazingFeature
# Commit changes
git commit -m "Add AmazingFeature"
# Push
git push origin feature/AmazingFeatureThen open a Pull Request 🚀
If you like this project:
👉 Star the repo 👉 Share with others 👉 Build something cool