CoffeeDNA Project Description

About the Project

CoffeeDNA is an innovative coffee preference recommendation chatbot designed to help users find their perfect coffee match. By leveraging advanced AI and machine learning technologies, CoffeeDNA provides personalized recommendations based on individual taste profiles, enhancing the overall coffee experience.

Inspiration

The inspiration for CoffeeDNA came from the rich and diverse world of coffee. With countless flavor profiles and brewing methods, coffee enthusiasts often struggle to discover their ideal brew. Our goal was to create a user-friendly solution that simplifies this process, offering tailored recommendations that cater to personal preferences.

What it Does

CoffeeDNA offers the following features:

  • Personalized Recommendations: Analyzes user preferences to suggest coffee options that match their taste.
  • Dynamic Questioning: Engages users with follow-up questions based on their previous responses, creating a more tailored interaction.
  • Multilingual Support: Automatically detects user language and adapts responses accordingly, making the experience accessible to a wider audience.

How We Built It

The CoffeeDNA application was developed using Python and Streamlit, providing a seamless user interface for interaction. The backend utilizes OpenAI's API, specifically the GPT-4o model, to generate personalized coffee recommendations based on user input and preferences. Here's a breakdown of the components:

  1. User Interaction:

    • The front end is built with Streamlit, allowing users to input their coffee preferences through an intuitive interface. Users can specify their flavor profiles, preferred coffee types, and other personal criteria.
  2. Data Handling:

    • User input is stored and managed through a history file system, enabling continuity in conversations. The history is saved in JSON format, allowing easy retrieval and updating.
  3. AI Model Integration:

    • The application communicates with the OpenAI API to fetch tailored coffee recommendations based on the user's chat history and preferences. The dynamic questioning mechanism enriches the user experience by guiding them through their choices.
  4. Multilingual Functionality:

    • The system detects user language and adjusts responses to ensure clarity and relevance, making it accessible to a broader audience.

Challenges We Ran Into

  • Data Collection: Gathering and structuring coffee flavor profiles in a meaningful way proved challenging and required multiple iterations.
  • AI Model Tuning: Fine-tuning the models to ensure accurate recommendations based on subtle flavor differences was complex and time-consuming.
  • Real-Time Feedback Integration: Integrating user feedback for continuous model improvement while avoiding inaccuracies was a significant challenge.

Accomplishments That We're Proud Of

  • Successfully implemented a multilingual interface that adapts to various user language preferences.
  • Developed a dynamic questioning mechanism that personalizes user interactions based on previous responses.
  • Achieved high accuracy in coffee recommendations through rigorous model training and user testing.

What We Learned

  • The importance of iterative testing and incorporating user feedback into AI model refinement.
  • Effective strategies for managing conversational context to enhance user engagement.
  • Insights into integrating machine learning models into real-time applications for dynamic interactions.

What's Next for CoffeeDNA

Looking ahead, we plan to:

  • Expand our database to include more global coffee varieties and brewing methods.
  • Further enhance the AI model to provide even more nuanced recommendations.
  • Implement additional features based on user feedback, such as brewing tips and personalized brewing method suggestions.

Built With

Share this project:

Updates