
AI-Powered Internal Chatbot with Role-Based Access Control
Overview:
Designed for the Codebasics Resume Project Challenge, this project involved building an internal AI chatbot for a fictional FinTech firm, FinSolve Technologies. The goal was to enable secure, role-specific data access using Retrieval-Augmented Generation (RAG) and role-based access control (RBAC).
This chatbot helps eliminate internal communication delays, breaking down data silos across departments like Finance, HR, Marketing, Engineering, and Executive leadership.
Key Features:
- Role-Based Access Control (RBAC): Each user can only access data relevant to their role
- RAG Pipeline: Retrieves relevant documents and augments responses with contextual answers
- LLM Integration: Uses GPT-based models to generate natural language responses
- Secure Authentication: Implemented using FastAPI's BasicAuth
- Streamlit UI: Simple, interactive frontend for real-time chat
- Modular Codebase: Clearly separated logic for API, vector search, UI, and access control
- Extensible Design: Easily adaptable to support new roles, datasets, or auth mechanisms
Tech Stack:
- Frontend: React + Typescript
- Backend: Python, FastAPI
- LLM: GPT-4 (or LLaMA-compatible)
- Vector Store: Qdrant
- UI: Streamlit
- Authentication: HTTP Basic Auth with RBAC
Project Links:
- Demo Video: Watch on YouTube
- Backend GitHub Repo: ds-rpc-01
- Frontend GitHub Repo: ds-rpc-01-frontend
Outcome & Impact:
This project demonstrates how LLMs and RAG can be used responsibly within enterprise settings by layering secure access control and role-driven personalization. It's a practical GenAI solution that balances user experience, privacy, and productivity—skills that align closely with modern AI-driven product development.
Log In Page

Chatbot Page


Admin Page

Search user page

Create user page
