← All work
Machine learning

SJSU Course Advisor & Degree Audit Virtual Assistant

A retrieval-augmented virtual advisor that routes graduate and transfer student questions through an LLM orchestrator, three specialized RAG tools, and a security-hardened student data lookup.

View code ↗
SJSU Course Advisor & Degree Audit Virtual Assistant
Role
Solo · design + implementation
Timeline
CMPE 259 final project, 2024
Stack
PythonQwen3 (1.7B / 14B)RAGLLM OrchestrationGoogle Search API

Overview

Built for SJSU graduate and transfer students, the VA answers course-planning and degree-audit questions by routing each query through helper LLM calls, an orchestrator, and a set of specialized tools rather than a single monolithic prompt.

Two traditional RAGs (Graduate Info, Major Info) and a Registrar Info RAG supply catalog and policy context, a database-backed Student Information tool supplies the asker's own record, and a domain-restricted web search tool fills gaps — all coordinated by an orchestrator that decides which tools a given query actually needs.

What I built
01
Orchestrator architecture that rewrites and tags each query, then calls only the RAG/tool combination it actually needs instead of running every tool on every request.
02
Security-first design: student ID is bound only to the Student Information tool, web search is restricted to SJSU domains, and the VA was stress-tested against prompt-injection and cross-student data-leak attempts.
03
Benchmarked a small (Qwen3-1.7B) vs. large (Qwen3-14B) model across 27 test queries — the larger model gave notably more detailed, correct answers at 60–130s latency vs. the small model's 20–30s.
SJSU Course Advisor & Degree Audit Virtual Assistant detail 1
SJSU Course Advisor & Degree Audit Virtual Assistant detail 2
Next project
Jot — Offline Notes with a RAG agent