Spaces:
Sleeping
Sleeping
| title: Northwestern CS Kiosk | |
| emoji: π | |
| colorFrom: purple | |
| colorTo: blue | |
| sdk: docker | |
| app_port: 7860 | |
| pinned: false | |
| # Northwestern CS Kiosk (Vanilla LM) | |
| Chat kiosk for Northwestern CS department questions, powered by a **local decoder-only tool-calling LM** (no cloud APIs). | |
| - **Planner:** local LM picks a tool + JSON arguments | |
| - **Executor:** CSV archive lookups (faculty, office hours, locations, etc.) | |
| - **Responder:** local LM writes a short answer; rule-based template fallback when LM prose is degraded | |
| ## What's bundled | |
| | Path | Purpose | | |
| |------|---------| | |
| | `models/best.pt` | Trained checkpoint (~158 MB, Git LFS) | | |
| | `models/tokenizer/` | Tokenizer from the same training run | | |
| | `MSAI_Text_Generation/src/` | Minimal inference runtime only (16 files β not full training repo) | | |
| | `Archive/` | Department CSV data | | |
| | `backend/` + `frontend/` | FastAPI API + React UI | | |
| ## Local Docker test | |
| ```bash | |
| docker build -t kiosk-vanilla . | |
| docker run --rm -p 7860:7860 kiosk-vanilla | |
| ``` | |
| Open http://localhost:7860 | |
| ## Hugging Face Space | |
| This repo is the Docker Space at [monish563/kiosk_vanilla](https://huggingface.co/spaces/monish563/kiosk_vanilla). | |
| After pushing, HF builds the image and serves on port **7860**. First query loads the model (may take ~30s). | |
| ### Push updates | |
| Develop in this repo (`kiosk_vanilla/`). After retraining or code changes: | |
| ```bash | |
| cd kiosk_vanilla | |
| ./scripts/prepare_hf_deploy.sh # refresh best.pt + tokenizer + MSAI runtime | |
| git add -A | |
| git commit -m "Update kiosk" | |
| git push "https://monish563:$(hf auth token)@huggingface.co/spaces/monish563/kiosk_vanilla" main | |
| ``` | |
| ## Environment (set in Dockerfile) | |
| | Variable | Value in container | | |
| |----------|-------------------| | |
| | `MSAI_ROOT` | `/app/MSAI_Text_Generation` | | |
| | `VANILLA_CHECKPOINT` | `/app/models/best.pt` | | |
| | `VANILLA_TOKENIZER` | `/app/models/tokenizer` | | |
| | `VANILLA_DEVICE` | `auto` (CUDA on GPU Spaces, else CPU) | | |