AI System / RAG Pipeline
Berkeley Course Navigator
Production-level RAG system over UC Berkeley's STEM course catalog combining a Neo4j prerequisite knowledge graph with hybrid semantic retrieval, grounded generation, and a LangGraph multi-hop agent in development.
Project gallery

Neo4j graph showing MATH 54 as a prerequisite for 45 courses across departments.
Full pipeline from query rewriting through hybrid retrieval, reranking, and grounded generation.

End-to-end query response with course code citations from retrieved context.
Overview
Berkeley Course Navigator is a production-level RAG system that answers complex student questions about UC Berkeley's STEM course catalog. It combines a Neo4j knowledge graph for prerequisite traversal with a hybrid semantic retrieval pipeline, grounded LLM generation with citations, and a LangGraph multi-hop agent that dynamically routes between the graph and vector store based on query type.
The challenge
Prerequisite questions — like 'what do I need before CS 189?' — are fundamentally a graph traversal problem, not a text retrieval problem. Storing prerequisites as text chunks would require recursive LLM calls that compound errors at each hop, making the system unreliable and expensive. The system also needed to handle both structural queries (prerequisite chains) and semantic queries (course discovery) with different retrieval strategies.