Inspiration
The AI + Education prompt asked for tools that help learners "move beyond memorization to understand concepts, make connections, and apply what they learn." It's easy to memorize a definition and still not understand the idea, and many AI tools make this worse by simply handing over the answer. I wanted a tool where the AI never does the thinking for you. I started with a different idea (predicting which students might fail) but realized it flagged a problem without helping anyone understand anything, so I switched to something that matches the prompt directly.
What it does
You pick a topic and a learner level, then teach it to "Sam," an AI classmate who knows nothing and asks curious follow-up questions. Teaching someone else is a well-known way to find the gaps in your own understanding.
- Understand concepts: the app generates the key ideas of the topic and hides them. As you explain, each idea is marked explained, named only, not quite right, or missing, with a short reason.
- Make connections: a concept map shows how the ideas link together. Terms are visible, but link labels stay hidden as "?" until you explain the connection.
- Apply what you learn: a new scenario tests whether you can use the idea. The AI grades your reasoning, not just your final answer, and gives a guiding question instead of the solution.
Sam also uses your coverage results to steer his next question toward ideas you haven't explained yet, without giving them away.
How I built it
Python and Streamlit, deployed on Streamlit Community Cloud.
- Retrieval: a sentence-embedding model (
all-MiniLM-L6-v2) turns the student's sentences and each key idea into vectors, and cosine similarity finds likely matches. - Verification: an LLM judge (
openai/gpt-oss-120bvia the Groq API) checks whether the student actually explained each match correctly. - Generation: the LLM also writes the key ideas, concept maps, practice scenarios, and Sam's questions.
- Fallbacks: if the LLM check fails, the app falls back to embedding similarity instead of crashing.
Challenges I ran into
- Name-dropping got full credit. Embedding similarity measures topic closeness, not understanding. In one test I only mentioned a term and the concept map turned that link green, even though I said I couldn't explain it. Adding the LLM verification stage fixed this.
- The grader was too strict. It marked a correct, terse answer as only "partial" and gave an irrelevant hint. I rewrote the grading prompt so the AI solves the problem first and judges reasoning rather than wording.
- Key ideas were too specific. Early key ideas sounded like textbook prose, so students' plain wording never matched. I rewrote the prompt to ask for simple, everyday sentences and added a learner-level setting.
- Deploying a heavy ML app solo for the first time, including managing API keys safely and keeping dependencies light enough for free hosting.
Accomplishments I'm proud of
Building a working end-to-end project solo in my second hackathon, and catching my own tool's mistakes by testing it honestly and fixing the design rather than hiding the bugs.
What I learned
Embeddings and LLMs fail in different ways, so combining them (retrieve, then verify) was more reliable than either alone. I also learned how much prompt wording changes AI behavior, and that testing with deliberately tricky inputs is the fastest way to find real problems.
Limitations
The LLM judge can be wrong on borderline answers and arithmetic, and results vary between runs. Coverage and the concept map are graded separately, so they occasionally disagree. Concept maps are AI-generated and can be uneven, and key ideas and scenarios aren't teacher-reviewed. Testing was informal and limited to two topics (addition and photosynthesis). TeachBack is a practice tool, not an assessment.
What's next
A teacher view showing which concepts a whole class tends to miss, spaced repetition for shaky ideas, teacher-reviewed key ideas for specific curricula, and voice input so students can explain out loud.
Log in or sign up for Devpost to join the conversation.