Skip to main content
AI

Computer Science Chatbot

Flask chatbot for computer-science department questions using predefined answers, SQLite data, and spaCy intent matching.

AI Application Developer
Independent learning project
2024

Problem

Students can ask repeated computer-science department questions, but not every question fits a predefined button. This chatbot explored a local web interface that could handle both preset questions and open-ended text through intent matching.

Features

  • Flask backend for receiving chatbot messages and returning responses.
  • SQLite-backed response data for department-question content.
  • spaCy setup for local NLP intent matching.
  • Frontend chatbot widget for predefined and open-ended question flows.

My Contribution

I built the Flask response flow, connected the chatbot interface to backend intent handling, set up the SQLite response data, and documented local dependency installation, including the spaCy model setup. The work is attributed as an independent learning project.

Technologies

Python, Flask, SQLite, spaCy, HTML, JavaScript, and CSS.

Architecture

Hybrid chatbot pipeline

The browser widget sends messages to Flask, which checks predefined options and spaCy similarity before returning a response.

No production usage or measured NLP accuracy is claimed.

Screenshot

Chatbot sample

A safe recreated conversation showing predefined prompts and an open-ended question path.

Visual uses safe sample data created for this portfolio page.

What I Learned

Knowledge assistants need clear boundaries. When an app combines predefined responses with NLP matching, the implementation and public description should make that constraint visible instead of implying broad generative behavior.

Repository

View the public repository