Umbra Penance

Client project · name kept confidential

An AI assistant that answers from the course, not from the internet.

A retrieval-augmented AI assistant that answers learners' questions from their own course material, with strict isolation between courses and analysis of uploaded project files.

Sector
Education & training
Engagement
AI integration
  • 20 minutes with the engineers who built it
  • No obligation

In brief

The brief, the hard part and where it landed.

The brief
Learners needed help between sessions: understanding course videos, checking their modelling work, and finding answers about the software and the platform.
The hard part
The only channel was messaging trainers, with 24–48 hour response times and a heavy load on the teaching team.
Outcome
Learners get an answer from their course material at any hour instead of waiting for a trainer. Trainers keep their time for questions that genuinely need a person.

The build

What we designed and built.

We designed and built a RAG (retrieval-augmented generation) assistant:

  • Course content indexed per course, with strict isolation so a learner on one course never receives another course's material.

  • Analysis of learners' uploaded 3D project files to answer questions about their own work.

  • Administrative questions (contracts, platform, project submission) answered from the organisation's documentation.

  • A separate, secured service that the learner platform calls on the learner's behalf, so AI keys never reach the browser, plus an admin view of usage.

Security, designed in

  • Per-course retrieval isolation enforced server-side.
  • Model and API keys held server-side behind a proxy; never exposed to the browser.

Technology used

PythonFastAPIDockerTraefikOpenAI embeddings and chat modelsWordPress

Building something similar?

A 20-minute call with the engineers who would build it.

Describe your project
  • Pick a time in the next step
  • Free, no obligation
  • 20 minutes on Google Meet