UniBot
A desktop GUI chatbot exploring how sentence embeddings and semantic similarity can answer common university questions without needing exact keyword matches.
Academic Context
A generic university FAQ, not a live scrape
Built as a group project for a university Artificial Intelligence course: a manually curated knowledge base, not web-scraped or live university data.
The FAQ dataset covers admissions, entry tests, merit and eligibility, fees and scholarships, programs, grading and attendance, examinations and results, hostel, library, transport, faculty contact information, clubs and societies, health/counselling, and administrative documents: canonical questions, manually written variations, fixed answers and categories.
Semantic Matching
Meaning first, not exact wording
Canonical questions and their variations are embedded with the pretrained all-MiniLM-L6-v2 model; the user's question is embedded the same way and compared by cosine similarity. Not RAG, not an LLM chatbot: a semantic lookup against fixed answers.
Fallback
Knowing when not to guess
If similarity falls below the configured threshold, UniBot asks the user to rephrase and suggests available topics rather than returning a weak match.
Interface
A desktop GUI, not a command line
Built with PySide6 as a standalone Windows desktop application.
Dataset Analysis
Understanding the knowledge base itself
A separate analysis workflow explores the FAQ dataset: category distribution, TF-IDF keywords, similarity testing, and Matplotlib visualizations.
Stack
Technology
Built collaboratively as part of a university AI course group project.