Inspiration

Odin was inspired by a common problem students face: having plenty of course materials but no efficient way to turn them into reliable study tools. Traditional study methods can be time-consuming, while many AI quiz generators create questions that are too generic or unsupported by the original material. We wanted to build an application that could generate useful practice exams while keeping every question grounded in the student’s uploaded sources.

What it does

Odin is an AI-powered practice exam maker that transforms course materials into source-grounded study tools. Users can upload PDFs, PowerPoint presentations, Word documents, spreadsheets, text files, and other class materials. Odin analyzes the content and generates timed practice exams, quizzes, flashcards, and reusable question banks.

Each question can include an explanation and a reference to the original source material, making answers easier to verify and reducing AI hallucinations. Students can review completed exams, filter questions they answered incorrectly, track their performance, and identify topics that need additional study. Odin can also generate exams using only an imported test bank when strict source control is required.

How we built it

Odin was developed as a containerized web application using Docker so it can run consistently across different environments. The application separates document processing, question generation, exam delivery, and data storage into modular components.

Uploaded files are extracted and divided into manageable sections before being sent to an AI model. A retrieval-based workflow selects the most relevant source passages before questions are generated. The application can support local models through Ollama as well as configurable cloud-based AI providers.

Odin also uses hardware-aware model selection. When a capable NVIDIA GPU is detected, the application can run a larger and more accurate model. On CPU-only computers, it selects a smaller model, while Raspberry Pi deployments use lightweight models and reduced processing settings. User accounts, question banks, exam history, and progress data can be stored locally or through configurable databases.

Challenges we ran into

One of the biggest challenges was reducing hallucinations. AI models sometimes created questions based on general knowledge instead of the uploaded course materials. We addressed this by requiring relevant source passages to be retrieved before a question could be generated and by linking explanations back to those passages.

Another challenge was processing multiple file formats while preserving important information such as headings, tables, slide content, and spreadsheet data. Large documents also had to be divided carefully so important context was not lost.

Performance was another major concern. A model that works well on a powerful GPU may be too slow for a laptop, CPU-only server, or Raspberry Pi. Designing a platform-aware deployment system required balancing model quality, memory usage, processing speed, and portability.

Accomplishments that we're proud of

We are proud that Odin does more than generate simple multiple-choice questions. It creates a complete study workflow that includes document ingestion, source-grounded question generation, timed exams, flashcards, answer explanations, incorrect-answer review, progress tracking, and reusable question banks.

We are also proud of Odin’s flexible deployment options. It can run privately on a local computer, use GPU acceleration on a powerful workstation, operate with reduced resources on a Raspberry Pi, or scale through a cloud environment. This gives users greater control over privacy, cost, performance, and accessibility.

Most importantly, Odin helps students verify where answers came from instead of requiring them to trust an unsupported AI response.

What we learned

We learned that generating questions is only one part of creating a dependable educational application. The quality of the source extraction, document chunking, retrieval process, prompts, and validation rules has a major effect on the quality of the final exam.

We also learned that larger models are not always the best choice. A smaller model with strong retrieval, clear instructions, and structured validation can sometimes produce more reliable results than a larger model without proper grounding.

Building Odin also reinforced the importance of transparency. Showing users the source passage, generation progress, and reasoning behind an answer makes the application more trustworthy and easier to troubleshoot.

What's next for Odin

The next step is to improve Odin’s question validation system so weak, duplicated, ambiguous, or unsupported questions can be detected automatically before they appear on an exam. We also plan to add adaptive testing that adjusts question difficulty based on the student’s performance.

Future improvements will include more question types, smarter study recommendations, spaced-repetition flashcards, collaborative class question banks, instructor dashboards, and detailed learning analytics. We also want to improve support for diagrams, images, formulas, scanned documents, and handwritten notes.

Our long-term goal is for Odin to become a private, flexible, and reliable study companion that helps students turn almost any course material into an effective personalized exam-preparation experience.

Built With

Share this project:

Updates