Skip to content
ofurkan.coWP No. 26-01
Oldenburg --:--
← §1 Work · Entry [3]

AEDS RAG Assistant

Web app2026Solo, end to end
Figure A.3. Illustrative figure, generated from the project name.
Abstract

A retrieval-augmented chat assistant that answers students' questions about a master's programme strictly from its official documents, with citations, a relevance gate, and staff review.

Stack
Python · FastAPI · LangGraph · Chroma · BM25 · React · SQLite

Students ask the same questions every semester: deadlines, exam rules, which module counts where. The answers exist, scattered across PDFs. This assistant answers from those documents only, never from a model’s general knowledge, and refuses when the documents do not cover the question.

How it works

  • Two answer paths. An LLM router sends exact-fact questions (deadlines, courses, contacts) to structured SQL lookups, and everything else to hybrid search.
  • Hybrid retrieval. Vector search in Chroma plus BM25 keyword search, fused and reranked with a cross-encoder.
  • Relevance gate. The reranker’s confidence decides whether the retrieved material actually answers the question. Below threshold, it says so instead of generating from weak matches.
  • Admin-reviewed corpus. Anyone can suggest a correction from the chat; nothing reaches the live corpus until staff approve it. A local classifier auto-flags messages that assert a new fact.
  • German and English, a semantic answer cache, and a Telegram bot for reviewing queues from a phone.

The answer pipeline is an explicit LangGraph state graph on a FastAPI backend, with SQLite for everything that must be exact.