Inspiration — An answer is not proof of understanding
Students can read a perfectly explained concept and still fail to apply it to a new problem. Traditional AI chatbots can summarize notes and answer questions, but they rarely identify where a student's reasoning went wrong or establish whether the student genuinely understood the explanation.
That inspired ConceptLens — Learn anything. Debug your understanding.
Our goal is to move beyond simply giving answers and create an evidence-grounded learning environment that connects what students study, how they reason, where they struggle, and what they should learn next.
What we built
ConceptLens is a multimodal, adaptive-learning prototype with a cinematic Concept Observatory interface and five connected learning modules.
Workspace: Students create courses, upload PDF documents, PowerPoint presentations and MP4 videos, process the materials, and inspect extracted evidence. Source locations are preserved as page numbers, slide numbers and video timestamps.
Ask: A source-grounded question-answering pipeline retrieves relevant course evidence and is designed to generate answers with inspectable citations. Unsupported questions can be refused instead of receiving invented references.
Learn: Students explain their reasoning, not just their final answers. The implemented Reasoning Debugger treats suspected misconceptions as hypotheses that can be investigated with diagnostic questions. An adaptive teaching policy selects strategies and supports fresh Transfer Checks.
Practice: The assessment system supports multiple-choice, short-answer and numerical questions. It includes separate question verification, protected answer keys, deterministic grading where applicable, and a course diagnostic workflow.
Dashboard: Students can inspect recorded learning evidence, concept relationships and mastery estimates. The interface distinguishes Untested concepts from concepts where actual assessment evidence exists.
How we built it
We built the frontend using React, TypeScript, Vite, React Router and Lucide, with an immersive dark Observatory introduction transitioning into a comfortable, accessible learning workspace.
The backend uses Python, FastAPI, Pydantic, SQLAlchemy and Alembic, with PostgreSQL and pgvector for persistent course data and retrieval.
Our multimodal processing pipeline uses PyMuPDF, pdfplumber, python-pptx, FFmpeg and MLX Whisper to extract document, presentation and video evidence. Local sentence-transformers embeddings combine with lexical retrieval to help find supporting material.
The AI-dependent pipelines support configured text and vision model providers, citation validation, reasoning diagnosis, adaptive teaching and evidence-based verification.
We also implemented a deterministic CPU Scheduling solver to support verifiable scheduling questions, including shortest remaining time first.
Challenges we faced
One major challenge was maintaining source provenance across different formats. A useful citation should take the learner to the original PDF page, presentation slide or video timestamp.
Another was avoiding false confidence. A generated explanation does not automatically prove that an answer is correct, a misconception is confirmed, or learning has occurred. We designed separate verification stages and safeguards around grading and mastery updates.
We also faced model-provider integration challenges. Although the local gateway's health endpoint was reachable, real AI completion requests encountered timeouts. We chose to preserve genuine error states rather than display fabricated answers or learning progress.
Finally, integrating the sophisticated Observatory frontend with the FastAPI backend required careful Git worktrees, compatibility checks, browser testing and isolated database verification.
Accomplishments we're proud of
- Built and integrated a five-module educational application with a distinctive Concept Observatory experience.
- Verified real PDF ingestion, evidence extraction, local embeddings, retrieval and exact-page previews.
- Implemented source-grounded assessment, reasoning-diagnosis and adaptive-learning software contracts.
- Passed 590 backend tests, 55 frontend unit tests, 20 browser tests and 23 isolated PostgreSQL/migration tests.
- Completed frontend typechecking, linting, production builds, clean-install checks and publication-safety review.
- Designed the Dashboard to show genuine Untested states instead of invented learner mastery.
Verification disclosure: These results demonstrate implementation and software reliability within the tested environment. Successful end-to-end Ask generation, live reasoning diagnosis, generated teaching, Transfer Checks and resulting mastery updates through the external AI provider have not yet been verified because of completion timeouts. Automated fixtures are not presented as successful live model results.
What we learned
We learned that trustworthy educational AI requires much more than fluent text generation. The system must preserve evidence, recognize uncertainty, separate hypotheses from confirmed results, and distinguish receiving an explanation from demonstrating understanding.
We also learned the importance of modular architecture, honest testing, accessible interface design and making learning decisions inspectable.
What's next for ConceptLens
Our next priorities are completing live-provider verification, expanding multimodal interpretation, improving concept-mapping workflows and evaluating learning outcomes with real students.
Our vision is to make AI learning systems more transparent, adaptive and accountable — helping students not just find answers, but understand why an answer is correct and how to apply it again.
AI development assistance
OpenAI Codex assisted with development tasks including implementation, integration support, tests and documentation. The resulting work was reviewed and subjected to the checks described above. The repository README contains the coding-assistant disclosure.
Built With
- alembic
- fastapi
- ffmpeg
- mlx-whisper
- pdfplumber
- pgvector
- playwright
- postgresql
- pydantic
- pymupdf
- python
- python-pptx
- react
- react-router
- sentence-transformers
- sqlalchemy
- typescript
- vite
- vitest
Log in or sign up for Devpost to join the conversation.