This is a submission for the Gemma 4 Challenge: Build with Gemma 4
What I Built
I dedicate this project to the students studying between 6th and 12th grade in India. My thoughts during the project ideation emerged from my extensive use of AI whether they are chatbots or RAG applications to understand the concepts but the scenario changes for the school going students. They write exams and need personalised evaluation for their handwritten answers because many students are still not able to access the premium education for example those living in remote areas, and as pupils in this age bracket are having developing minds, I decided to build something which can point their mistakes out in graceful manner while suggesting improvements so that they feel confident and prepared before examination, can write accurate answers in their exams.
It is a simple concept to implement Gemma 4 model in this project. If I add personal story to it. Apps like these were needed to guide to write my UG exams let alone a drive for me to write in legible handwriting. I believe this app will genuinely be helpful for secondary school students.
Student clicks the picture of his/her answer to any question and gets feedback on it, gives the score on scale 1 to 10 and generates detailed feedback in both Hindi and English language as well. It works for both Hindi and English language written answersheet and I wish to expand the evaluator to multilingual support because my country is diversified and each student on the land must get benefitted.
Demo
I gave UttarCheck application Photosynthesis answer.Exposing my localhost on ngrok as of now and recorded it. I fetched GEMMA 4 model from Google AI studio.
Code
I provide GITHUB repo for detailed explanation of my project
s17anushka
/
UttarCheck
UttarCheck is an AI-powered handwritten answer evaluation system built using Gemma 4. It analyzes student answer sheets, generates scores, detects mistakes, and provides detailed feedback in both Hindi and English. The platform is designed for Indian classrooms and supports intelligent evaluation of handwritten responses across multiple subjects.
██╗ ██╗████████╗████████╗ █████╗ ██████╗ ██████╗██╗ ██╗███████╗ ██████╗██╗ ██╗
██║ ██║╚══██╔══╝╚══██╔══╝██╔══██╗██╔══██╗██╔════╝██║ ██║██╔════╝██╔════╝██║ ██╔╝
██║ ██║ ██║ ██║ ███████║██████╔╝██║ ███████║█████╗ ██║ █████╔╝
██║ ██║ ██║ ██║ ██╔══██║██╔══██╗██║ ██╔══██║██╔══╝ ██║ ██╔═██╗
╚██████╔╝ ██║ ██║ ██║ ██║██║ ██║╚██████╗██║ ██║███████╗╚██████╗██║ ██╗
╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝ ╚═════╝╚═╝ ╚═╝
AI-Powered Handwritten Answer Evaluator for Indian Students
Built for the Gemma 4 Challenge on DEV.to
The Problem
India has 250 million school students. Most write handwritten answers for board exams — CBSE, UP Board, ICSE. Getting feedback means waiting days for a teacher.
UttarCheck changes that.
Photograph your handwritten answer. Get instant AI evaluation — score, mistakes, improvement tips — in Hindi and English. Powered by Gemma 4 running multimodal vision inference.
Demo
Student photographs answer sheet
↓
UttarCheck processes image
↓
Gemma 4 reads handwriting
↓
┌─────────────────────────┐
│ Score: 9/10 Grade: A+ │
│ Subject: Science │
│ │
│ ✅…How I Used Gemma 4
The intent to choose Gemma 4 API for UttarCheck is its native multimodal capability. It is not a normal text model where we add OCR step to read content from the handwritten text while Gemma 4 does read directly from the text
I specifically chose gemma-4-26b-a4b-it (the Mixture-of-Experts variant) for three reasons:
- Multimodal vision — Gemma 4 receives the answer sheet photo as base64-encoded image data alongside the evaluation prompt. It reads the handwriting, identifies the subject, detects the question from context, and evaluates content quality — all in a single inference call.
- MoE efficiency — The 26B MoE model activates only ~4B parameters per inference. For an educational tool expecting many concurrent students, this means faster response times and lower API cost compared to a dense model of equivalent quality.
- Bilingual reasoning — Gemma 4 generates feedback simultaneously in Hindi and English without any translation layer. Indian students think in Hindi but study in English — having both in one response is genuinely useful. The Multimodal Payload
payload = {
"contents": [{
"parts": [
{"inline_data": {"mime_type": "image/jpeg", "data": image_b64}},
{"text": "Evaluate the handwritten answer in this image..."}
]
}],
"generationConfig": {"temperature": 0.2, "maxOutputTokens": 1024}
}
Gemma 4 does not always return in JSON response. It thinks through to evaluate step by step which produces better results but wraps the final JSON in prose and markdown fences.I wrote about it that how I handled in the Github Readme. I sought this strategy from utilising various LLMs because it was something new to me.
Edge Deployment
The architecture is designed with Gemma 4 E4B in mind. When the edge variant becomes available via API, UttarCheck will run fully on-device — no internet, no server, student data never leaving the phone. The gemma_service.py already has an Ollama backend wired in for local inference today.
A great success to the application, I hope it is ahead of it's time when the project comes out from its viability to its effective usability.
Thank you !
Top comments (0)