Adaptive teaching platform designed to train teachers on student mental health topics using RAG-powered quizzes with personalized difficulty scaling.
Follow these steps to set up the project on a new machine:
git clone https://github.com/dimitramav/wla.git
cd wla
python3 -m venv .venv
source .venv/bin/activateImportant
CPU PyTorch must be installed before requirements. This prevents sentence-transformers from pulling GPU torch with CUDA dependencies that may not exist on your machine.
# Install CPU-only PyTorch
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
# Install remaining requirements
pip install -r services/requirements.txt# Install API dependencies
cd api && npm install
# Install Web dependencies
cd ../web && npm installYou can start all services at once using the provided scripts:
# Start all services (MongoDB, Express, FastAPI, Vite)
./scripts/start.sh
# Start services without the frontend
./scripts/start.sh --no-frontend
# Stop all services
./scripts/stop.shThe start.sh script handles health checks and environment validation automatically. Logs for each service are piped to /tmp/wla-express.log, /tmp/wla-fastapi.log, and /tmp/wla-vite.log.
If you prefer to start services individually in their own terminals:
- MongoDB:
sudo systemctl start mongod - Ollama: Ensure Ollama is running and
gemma2:9b-instruct-q4_0is pulled. - Express API:
cd api && npm run dev(http://localhost:3001) - FastAPI RAG Service:
cd services && ../.venv/bin/python -m uvicorn api.main:app --factory --port 8000- Or run all cells in
services/server.ipynb
- React Web Frontend:
cd web && npm run dev(http://localhost:5173)
The project ships with two benchmarks (RAG retrieval and LLM generation) plus offline rescoring and investigation scripts. See services/benchmarks/README.md for prerequisites, how to run each benchmark, and output layout.
- What is measured and why:
services/benchmarks/methodologies/ - Results and findings:
services/benchmarks/reports/
This project requires the following to be installed separately:
- MongoDB: Installation Guide
- Ollama: Download Ollama