Back to blog
PersonalizationUXAI

Expertise Adaptation: How We Personalize Every Answer

Same question, three different answers — how we represent learner expertise and bake it into every system prompt.

MI
Meera Iyer
26 February 2025
6 min read

The problem

A first-year student asking "what is a pointer?" needs a totally different answer than a senior systems engineer asking the same words. Most tutoring tools ignore this entirely.

Our expertise model

Each learner has a per-subject expertise level: Beginner, Intermediate, Expert. It lives in a small key-value store keyed by user_id × subject.

Prompt injection

The level is injected into the system prompt:

  • Beginner: assume no prior context, use analogies, avoid jargon.
  • Intermediate: skip the basics, include one code example, name the formal terms.
  • Expert: be terse, cite tradeoffs, link to deeper resources.

Same question, three answers — "What is a hash map?"

  • Beginner: "Imagine a giant labeled wall of mailboxes…"
  • Intermediate: "An array-backed table that uses a hash function to map keys to buckets, with collision resolution via chaining or open addressing."
  • Expert: "Amortized O(1) get/set; load factor governs resize cost; Robin Hood probing flattens variance."

Feedback updates the level

If a learner repeatedly down-rates Beginner answers, we promote them to Intermediate. If they ask "what does that mean?" follow-ups, we demote.

Share

Keep reading