Skip to content

Smart helpdesk assistant that handles queries, calls tools/APIs, accesses a knowledge base, and stores interactions in a database.

License

Notifications You must be signed in to change notification settings

deep-div/HelpDesk-Agent

Repository files navigation

HelpDesk-AI

video.mp4

A simple and efficient AI-powered Helpdesk system where users can register complaints, track their status, and get automated assistance. This project integrates Google's Gemini Flash model to assist in handling user queries and issues.


📁 Project Structure

HelpDesk-AI/
│
├── backend/
│   └── app/
│       ├── apis/
│       ├── core/
│       ├── gemini/
│       ├── models/
│       ├── mongodb/
│       └── main.py
│
├── frontend/
│   ├── images/
│   └── streamlit_ui.py
│
├── .env
├── LICENSE
├── pyproject.toml
├── README.md

🚀 Features

  • 📝 Register user complaints
  • 📊 Track and check the status of complaints
  • 🤖 AI agent built with Gemini Flash to assist user interactions
  • 🗂️ MongoDB backend for persistent storage
  • ⚡ FastAPI backend
  • 🎨 Streamlit frontend for simple, user-friendly UI

⚙️ Setup Instructions

Make sure Python 3.10+ is installed and accessible via py or python3.

1. Clone the repository

git clone <your-repo-url>
cd HelpDesk-AI

2. Setup Virtual Environment

# Create virtual environment
python -m venv .venv

# Activate virtual environment
# Windows
.venv\Scripts\activate

# Unix/MacOS
source .venv/bin/activate

3. Install Dependencies

Make sure you have uv installed.

uv sync

4. Run the Backend Server

py -m uvicorn backend.app.main:app --reload

5. Run the Frontend UI

py -m streamlit run frontend/streamlit_ui.py

🔐 Environment Variables

Create a .env file in the root directory with the following (example):

# Mongo DB
MONGODB_HOST_TEST="localhost"
MONGODB_PORT_TEST="27017"
MONGODB_DATABASE_NAME_TEST="grievances"


# Gemini
GEMINI_API_Key_TEST = "str"
GEMINI_MODEL_NAME_FLASH_TEST = "gemini-2.0-flash"

🧠 Powered By


📌 TODO / Future Improvements

  • Add login/authentication system
  • Admin dashboard for complaint management
  • Notification/email integration for updates
  • Improve UI/UX with chat-like interface

📃 License

This project is licensed under the MIT License - see the LICENSE file for details.


Let me know if you want me to auto-generate a README.md file in your directory structure as well.

About

Smart helpdesk assistant that handles queries, calls tools/APIs, accesses a knowledge base, and stores interactions in a database.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages