Inspiration
We were inspired to create this project by Neal Agarwal’s web game, Infinite Craft. However, we realized that the core framework of Agarwal’s game, combining two elements to make a new one, had far more potential than just being a fun game. Course selection, especially for incoming students, can be difficult and time-consuming, whether it’s trying to find the best course to fulfill program requirements or looking for interesting electives to fill out a schedule. With UTMCC, students can combine subjects and skills they are interested in to discover real courses that offer exactly what they are looking for.
What it does
The game is played through an interactive drag-and-drop canvas where the player can combine blocks relating to subjects or skills to find new courses. The creation of new elements is overseen by the Gemini API, which looks through a database of UTM courses and their descriptions to find the closest course to the two elements provided, ensuring that the course produced makes sense and is real and not hallucinated by Gemini. We initially faced quite a few challenges, such as trying to come up with an idea for a project that couldn’t just be replaced with a few Gemini prompts, trying to understand how to link together a front-end browser canvas with back-end api calls, and making sure that Gemini didn’t hallucinate courses that didn’t exist.
How we built it
We built UTMCC using AI processing (Gemini Model) which compares keywords and determines the best choice of action to output.
Challenges we ran into
We had a hard time finding key words that were related to a majority of UTM courses and the rate limits on the Gemini API slowed down our testing process.
Accomplishments that we're proud of
We created this product and made it fully functionable with little to no bugs.
What we learned
- Although we did not use image in our project, we learned about it as we research about the Gemini API and its Multimodal AI integration. Gemini Usage: We used the Google Gemini API to compare and evaluate 2 keywords and match them to a existing course in UTM. What's next for UTMCC:
- Allow for our product to not rely on stagnant data (like courses from the JSON file) as UTM courses change overtime
- Perhaps a tutorial feature to help new users understand the product better.
Built With
- beautiful-soup
- canvas-api
- css3
- google-gemini-api
- html5
- javascript
- json
- python
- web-audio-api
Log in or sign up for Devpost to join the conversation.