Inspiration
One of the hottest topics when it comes to the college experience is food. As college students ourselves, we thought about eating food on campus and how little we actually know about it, which is why we created a meal assistant for students here at Stony Brook. For new and long-time students alike, food is an important factor when it comes to our health, which is something college students tend to neglect. By utilizing our SBU Meal Assistant, not only can students know what is available to eat on campus in real-time, but also check categories to help balance what we eat, including dietary restrictions.
What it does
Our SBU Meal Assistant is a web application that shares dining information across the Stony Brook campus. With one click on a page, a student can easily access the daily menus for the various dining halls and locations. However, this information can be long and overwhelming, and can also lack crucial information about what's inside. This is where our SBU Meal Assistant exists as the next tool to help navigate that. Using artificial intelligence, the SBU Meal Assistant can chat with users to filter and discuss menu items to fit a student's preference. The student may relay to the Food Assistant any restrictions or allergies they may have, and it will recommend dishes based on those elements. Even if you have no restrictions and are just feeling pizza today, the assistant will let you know where and what types are available!
How we built it
To create our project, we first scrapped all food options from the Nutrislice website and saved it to MongoDB. Then, we created custom APIs to read the data from MongoDB. As for the backend, we built it using LLMs and based it in Python. For the frontend portion, we used the Streamlit library from Python to build the UI for the chatbot and list of food options. Finally to power the Chatbot, we used OpenAI's GPT-4 API to generate responses.
Challenges we ran into
Of course, challenges are inevitable so we had our fair share. Throughout the process, we were faced with the challenge of UI/design. It was unfamiliar to all of us, so some of us spent some time trying to learn how to use design software like Figma. Luckily, we preserved and made it through, although some issues took hours to go away. As mostly first-time hackathon participants, we also were challenged by the unfamiliar time constraint, and being able to juggle roles that we may have not tried before- hence the above!
Accomplishments that we're proud of
We're proud that we were able to create something that can be of use to students for a problem everyone can relate to. Technology-wise, we're proud that the AI we're utilizing can memorize the conversation with users and be able to use that history for future inquiries.
What we learned
We've learned that creation in a short time is not easy work, especially for most of our team whose first hackathon was this one. However, we've learned what the experience is like. Most importantly, we've learned from each other. Despite having to adapt to new roles, we've also realized that all of us came from different backgrounds and experiences and with different skill sets. This gave us the chance to learn a little bit about different languages we may not have been familiar with, how to develop certain components, or for some of us even what an API was.
What's next for SBU Meal Assistant
In the future, SBU Meal Assistant would like to implement a rating system where students can leave reviews for foods they have tried. This would allow the assistant to be able to recommend dishes that would be more liked by the user, based on what others may have said, or even what the individual's preferences are. It can be a fun discussion to see what people think and maybe even allow students to avoid what might not be best to eat.
Built With
- figma
- llm
- mongodb
- openai
- python
- streamlit
- typescript
Log in or sign up for Devpost to join the conversation.