SmartLearn: AI Intelligence for the Modern Classroom
This application aims to assist both students and teachers in managing courses, tracking academic progress, and enhancing the educational experience through AI-driven features. The application provides functionalities for tracking courses, grades, progress, feedback, and homework. For teachers, it enables the management of students, assignment of homework, feedback provision, and grade entry. AI features include student progress analysis, future performance improvement plans, feedback search, and automated test correction.
Detailed Requirements
- Multitenancy: Each school (tenant) has its own isolated data, ensuring data security and segregation.
- Course Management: Students can enroll in courses, track their progress, and view grades.
- Grade Tracking: Students’ grades are recorded and can be analyzed over time.
- Progress Monitoring: Students can track their academic progress.
- Feedback: Teachers can provide feedback on students’ performance.
- Homework Management: Teachers can assign, track, and grade homework.
- AI Features:
- Analyze student progress based on feedback and grades.
- Provide personalized improvement plans based on past performance.
- Assist teachers in searching through student feedback.
- Automatically correct handwritten tests using generative AI.
- User Management: Students and teachers can belong to multiple tenants.
- Search Functionality: Teachers can search for feedback and grades of all students.
Postgres Schemas
1. courses
Stores information about each course. Both the teachers and students can ask questions about the course and teachers can generate new courses based on existing courses. For this purpose, generating embeddings for each course description would be useful. The application can then implement RAG to build use cases such as searching courses and generating new courses.
2. enrollments
Tracks which students are enrolled in which courses.
3. grades
Stores grades for each student in each course.
4. feedback
Stores feedback from teachers for each student in each course. The feedbacks are extremely useful input to search for both students and teachers and learn about the progress. The chatbot can be used to ask questions about past feedback and even create plans for the future. So, having embeddings on the feedback helps with building RAG architecture.
5. homework
Stores homework assignments for each course. The teachers can have AI generate solutions for the homework exercises. They can also leverage AI to help correct solutions based on the input questions. The embeddings here are on the homework questions and not the solutions themselves. This is useful for AI to generate solutions and even generate similar homeworks in the future.
6. homework_submissions
Tracks homework submissions by students. As mentioned above, these submissions are a file and the embeddings for the file are stored in the table. The table only tracks the file location and the actual file can be in some object store.
Complete SQL Script
This script sets up the necessary tables and relationships to support a robust and scalable multitenant school course management application with advanced AI capabilities, including course management, grade tracking, feedback, homework management, and AI-driven features for progress analysis and automated test correction.