Log in with your student username and password โ the bot looks you
up and answers about your lecture or practical days,
campus, time,
subject and room.
Try it nowin-browser demo โ the same dialogue and data as the deployed
bot, replayed without a server
๐
Student login
Sign in to try the schedule lookup โ the same credentials the
live bot checks.
Username: first name + last name ยท password: last name + first
name, run together โ e.g. alicejohnson /
johnsonalice. Case and spaces are ignored. Checked
in your browser against the same 15 seeded students; the live
deployment validates against its database.
How the real bot works
Rasa 3.6 โ NLU & dialogue
A DIET classifier extracts names and intents from natural
sentences ("I'm Bob Smith", "good morning, Alice
Johnson here"). Rule, memoization and TED policies drive the
conversation โ 12 intents, 19 stories, a trained model checked
into the repo.
Custom action server
Eight custom actions (rasa-sdk) answer schedule questions.
They are stateless โ they read the student's name from
dialogue slots and query the attendance database on demand, so
every answer reflects the current data.
One database, two backends
Locally the data lives in SQLite. In a hosted deployment the
same queries run against Neon Postgres โ the
app switches when DATABASE_URL is set, with no
query changes.
Web chat on GitHub Pages
โ the React UI calling the live Rasa REST channel (/webhooks/rest/webhook).
Rasa server on Hugging Face
โ a Docker Space running Rasa + the action server together,
trained during the image build. Currently parked on the free
plan: Docker Spaces need compute access, which requires a paid
plan.
Neon Postgres โ the hosted attendance database
(15 seeded students). The Space connects to it through the
DATABASE_URL secret.
Run it locally
Python 3.10 required (Rasa 3.6.x). Full instructions in the
repository README.
git clone https://github.com/oldspoon/Rasa-AI-Assistant
cd Rasa-AI-Assistant
py -3.10 -m venv venv
venv/Scripts/python.exe -m pip install -r requirements.txt
venv/Scripts/python.exe action_server/database/populate_db.py
# Terminal 1 - the action server (leave running)
cd action_server && ./dev-run.sh -r
# Terminal 2 - chat with the bot
cd rasa && ./dev-run.sh -r