Inspiration
In our courses' question-answer platforms such as Campuswire and Piazza, we often see our professors and course assistants answering repetitive questions about course logistics. Often, the answers to these questions can be found in the course syllabus. We decided to build a web application that students could use to get answers to their questions without having to make these posts.
What it does
Our web app uses OpenAI's GPT API to build an AI Assistant that scans a course syllabus for information and answers any question about the course. Along with the answer, it also gives you the source (the original syllabus document) with highlighted text corresponding to the information used to give the answer.
How we built Syllapedia
Using OpenAI's GPT-4 API, we were able to send users' questions to GPT-4 for them to be answered. We engineered a prompt and formatted responses for our AI assistant using Flask, after which we retrieved sources and highlighted the corresponding text in the pdf. We built our front end using React.js and added user authentication using auth0. We used MongoDB to store user information, course information, and syllabi.
Challenges we ran into
For most of us, this was our first exposure to React.js, so we faced a steep learning curve. When working on the authentication, we had trouble figuring out how to share the user data throughout the application.
Accomplishments that we're proud of
Despite most of our team not having any prior experience with the tech stack used to implement the project, we succeeded in producing a working product.
What we learned
We learned how a web app works, how to build the front and back end, and how to integrate the two together. We also learned how to use MongoDB to store database information.
What's next for Syllabedia
We hope to continue to work on our project and polish it in the future.
Built With
- auth0
- flask
- javascript
- mongodb
- openai
- python
- react
- typescript
Log in or sign up for Devpost to join the conversation.