Inspiration

Last year, we were freshmen who struggled to take in everything new we were suddenly a part of. This includes picking our own classes - maybe the most important skill to learn. We both used our academic advisors to the best of our abilities, but it was a long and laborious process that we did not enjoy. So, with the help of OpenAI’s experimental Swarm Architecture, we had the idea to automate this problem using the recent advances in AI.

What it does

SchAIdule takes in information about you like your course history, any sports you play, and what you are looking for in a new schedule. It will then use different AI agents to delegate tasks, access a database of courses, and make the perfect schedule for you.

How we built it

We used React and Flask to make this full stack application - a tech stack we were both familiar with. In the backend, we added OpenAI’s experimental framework “Swarm” to help organize our different agents. These agents include “Computer Science Department”, “Robotics Department”, and “Humanities Department”. This can be expanded upon to encompass all course departments, but we limited it for consistency and stability.

Challenges we ran into

With a time constraint like this, it can be hard to properly plan and complete a project like this. We found it difficult to plan what needed to be done. Oftentimes we would run into unexpected issues that made simple features turn into a long process, or sometimes we would get lucky and the features we expected to be hard were actually really easy. The main thing that took more time than expected was implementing OpenAI’s Swarm architecture. Since it’s not officially released, there isn’t a large community surrounding it to look for help in. We ran into issues with it sending/receiving data and the best we could do to fix it was try again.

Accomplishments that we're proud of

We accomplished everything that we wanted to accomplish, and we are proud of that. It was a lot of coding, but the application works!

What we learned

We (hopefully) gained better insight into how much effort is really required to do a given task. This should help us manage our time better in future hackathons, or just projects in general. And of course we gained a significant amount of technical knowledge. We are now much more comfortable making functional frontend designs in React and reliable backend designs with Flask. And more than anything else, we gained an understanding of how to implement one of OpenAI’s newest (and coolest) projects with their AI models.

What's next for SchAIdule

In the future, we hope to make it reliably work with all departments, not just a few that we implemented for testing. This may require advances in the Swarm technology, which we will surely be on the lookout for.

Built With

Share this project:

Updates