RAG AI Tutor & LLM Evaluation Framework
Case Study Summary
Organization: Emeritus
Industry: EdTech / Higher Education
Role: Senior Data Scientist
Impact Metrics:
- Evaluation framework that secured enterprise AI contracts with Stanford, MIT and Berkeley
- AI Tutor in production, answering questions from learners on live university courses
- Automated validation gates and hallucination-risk controls aligned to academic-integrity requirements
Universities hold their programs to a high standard of academic integrity. Before they would put an AI assistant in front of their learners, they needed evidence that it would answer accurately, stay grounded in course material and not make things up.
Challenge
There were two problems to solve together:
- Build a tutor learners can trust. Answer questions about unstructured course content quickly, accurately and at a sustainable inference cost.
- Prove it. Give university partners a rigorous, repeatable way to measure answer quality and hallucination risk, tied to their own objectives.
Approach
LLM/RAG evaluation framework. I engineered a Python evaluation framework with:
- Retrieval metrics (is the right course content being found?) and generation metrics (is the answer correct and grounded?)
- Automated validation gates that block changes that reduce quality
- Hallucination-risk controls aligned to client objectives around academic integrity
This framework became the assurance layer that secured enterprise AI contracts with Stanford, MIT and Berkeley.
AI Tutor. I built and shipped a LangChain-orchestrated RAG service:
- Embeddings-based vector retrieval over unstructured course content
- Iterative prompt engineering, measured against the evaluation framework
- Served into the live learning platform via API, balancing answer quality against latency and inference cost
Solution Overview
flowchart LR
subgraph ingest [Ingestion]
direction TB
A[Course content] --> B[Parsing & chunking] --> C[Embeddings] --> D[(Vector index)]
end
subgraph serve [Serving]
direction TB
E[Learner question] --> F[LangChain<br/>orchestration] --> G[LLM answer] --> H[Learning platform API]
end
subgraph evaluate [Evaluation]
direction TB
I[Retrieval &<br/>generation metrics] --> J([Validation gates &<br/>hallucination checks])
end
ingest -- retrieval --> serve
serve -. scored by .-> evaluate
Results & Impact
- Enterprise AI contracts secured with Stanford, MIT and Berkeley, backed by measurable quality evidence.
- AI Tutor in production, serving learners enrolled in university courses such as MIT and Stanford programs.
- A repeatable evaluation process, so every prompt or retrieval change is validated before it ships.
Tech Stack
- Python
- LangChain
- Sentence embeddings and vector search
- LLM evaluation (retrieval and generation metrics)
- API-based serving into the learning platform
- Google Cloud Platform
Related reading
Most RAG quality problems start before retrieval, at the parsing layer. I wrote about this in Garbage In, Garbage Retrieved: Why Parsing Is the RAG Layer You're Underfunding.
-
Let's have a virtual coffee together!
Want to see if we're a match? Let's have a chat and find out. Schedule a free 30-minute session to discuss your data and AI challenges and explore how we can work together.