This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
10th K AI β An AI Tutor I Built for My Sister
My sister is a Class 10 student.
I noticed something frustrating when she was studying: sometimes she knew the subject, but still got stuck because the textbook language was difficult to understand.
The bigger problem wasn't always "I don't know the answer."
It was:
"I don't understand what type of question this is asking me."
A question might be asking for a person and their contribution, a cause and its effect, a formula and a calculation, or a definition and a term.
So I built 10th K AI specifically for her.
It is an AI-powered Karnataka SSLC Class 10 textbook tutor that doesn't just give an answer. It helps a student understand:
What is the concept? β What question pattern is this? β How do I solve it? β How do I remember it?
What I Built
10th K AI lets a student ask a question from their Class 10 textbook and get a response grounded in the actual textbook.
For example, if the student asks: Who derived the quadratic formula?
10th K AI searches the Karnataka SSLC textbook and finds the relevant passage:
"Sridharacharya (C.E. 1025) derived a formula, now known as the quadratic formula..."
Instead of stopping there, the tutor turns the information into a learning structure:
Answer
Textbook Evidence
Simple Explanation
Question Pattern
Memory Trick
Similar Practice Question
The goal is not just to help a student get one answer.
The goal is to help them recognize the pattern the next time they see a similar question.
Who I Built It For
I built 10th K AI for my sister.
While helping her study, I realized that students can struggle even when the information is technically available to them. A textbook may say something like:
"Sridharacharya derived a formula..."
But an exam question might ask:
"Who derived the quadratic formula?"
The student needs to recognize:
Person β Contribution
That small recognition can make a big difference during an exam.
That became the central idea behind 10th K AI.
How It Works
10th K AI uses a Retrieval-Augmented Generation (RAG) pipeline.
The textbook PDFs are processed into smaller chunks.
Each chunk stores information such as:
Subject
Book
Page number
Textbook content
I created embeddings for the textbook chunks using:
Sentence Transformers β all-MiniLM-L6-v2 Those embeddings are stored in a FAISS vector index.
When a student asks a question:
Student Question
β
Keyword Search
β
Semantic Search
β
Hybrid Retrieval
β
Relevant Textbook Passage
β
Open-Source LLM
β
Learning-focused Answer
The LLM is instructed to use the retrieved textbook evidence rather than simply inventing an answer from general knowledge.
Open-Source AI at the Core
The project uses Ollama and an open-weight model for the AI generation layer.
This was important to me because I wanted the project to be built around an AI system that I could actually control and run locally.
With Ollama, I can run the model on my own machine during development instead of making my application completely dependent on a closed AI API.
The architecture also keeps the LLM layer replaceable, which means I can experiment with different open models without rebuilding the entire RAG system.
Why Open Innovation Matters
For an educational tool, I think control over the AI layer matters. With a closed API, the model is essentially a service I depend on.
With an open model through Ollama, I can:
Run inference locally
Experiment with different models
Control the prompting
Change the retrieval strategy
Keep the textbook retrieval pipeline under my control
Build the system without locking the entire project to one proprietary model
For 10th K AI, the combination of open model + local inference + textbook RAG makes the project much more understandable and controllable. The Interesting Part: Question Patterns
This is the part I care about most.
I don't want 10th K AI to become another chatbot where a student asks:
"What is the answer?"
and immediately copies it.
Instead, I want the student to gradually recognize patterns.
For example: Cause β Effect
Event β Person
Definition β Term
Formula β Numerical calculation
The student starts learning:
"I've seen this type of question before."
That is the skill I wanted to build into the tutor.
Tech Stack
Frontend / App
Streamlit
AI
Ollama
Open-weight LLM
RAG
FAISS
Sentence Transformers
all-MiniLM-L6-v2 Text Processing
PyMuPDF
Python
Data
Karnataka SSLC Class 10 English-medium textbooks
Deployment
Streamlit Community Cloud
Demo
Live Demo:
[https://10thk-ai-d6w3ycqcfe6i4zdecucqxp.streamlit.app/](https://10thk-ai-d6w3ycqcfe6i4zdecucqxp.streamlit.app/)
Try asking:
or another question from the Karnataka SSLC Class 10 Mathematics, Science, or Social Science textbooks.
Code
GitHub:
https://github.com/aditikshetty/10thK-AI The repository contains the RAG pipeline, application code, textbook processing code, and retrieval system.
Why I Built It
I didn't start this project because I wanted to build another AI chatbot.
I started because I saw someone I care about getting stuck while studying.
That made me think about what an AI tutor should actually do.
Maybe the most useful answer isn't always:
"Here is the answer."
Sometimes it is:
"This is the kind of question you're looking at. Here's how you recognize it next time."
That's what I wanted 10th K AI to teach.
What's Next
There is still a lot I want to improve:
Better question-pattern classification
Support for textbook diagrams and images
More accurate similar-question generation
Student progress tracking
Personalized practice sets
Voice-based interaction
More regional-language support
Better evaluation of RAG accuracy
But the first version is now working, and more importantly, it was built for a real person with a real problem.
What I Learned
The biggest lesson from this weekend wasn't just about RAG or embeddings.
It was that a small, specific problem can be much more meaningful than a generic AI idea.
Instead of asking:
"What AI app can I build?"
I started with:
"What is frustrating someone I care about, and can I build something to help?"
That changed the entire project.
Prize Categories
I am submitting 10th K AI for the overall Hacktoberfest Weekend Challenge: Build for a Friend.