Inspiration

The inspiration for TravelMate came from the frustration of sifting through generalized and often irrelevant travel recommendations. I envisioned a tool that not only provides trustworthy information but also delivers personalized suggestions tailored to individual interests, travel dates, and preferences. By leveraging cutting-edge technologies, I sought to create a seamless and engaging travel planning experience for users.

What it does

TravelMate is a travel recommendation tool that:

  • Identifies the top 20 attractions in a destination using the Google Maps API.
  • Fetches detailed descriptions of these attractions from Wikipedia.
  • Builds a dynamic knowledge graph using Neo4j to map relationships between attractions.
  • Queries the graph to retrieve relevant nodes and relationships up to a depth of 3.
  • Uses an LLM to analyze user preferences and graph data to generate personalized travel suggestions.

How I built it

I used a robust tech stack to develop TravelMate:

  • Frontend: A React-based website for an intuitive and user-friendly interface.
  • Data Collection: Google Maps API for location data and Wikipedia API for detailed descriptions.
  • Knowledge Graph: Neo4j database accessed via the Neo4j driver and Modus framework to build and query the graph.
  • AI Integration: LLM integration to process user inputs and graph data for personalized recommendations.
  • Backend Logic: Gemini API through Modus for efficient communication between components.

Challenges we ran into

  • Graph Complexity: Constructing and querying the knowledge graph with a depth parameter while maintaining performance was challenging.
  • Prompt Engineering: Crafting effective prompts for generating Cypher commands and ensuring meaningful knowledge representation required significant iteration.
  • API Integration: Seamlessly integrating multiple APIs (Google Maps, Wikipedia, Neo4j) and ensuring data consistency posed difficulties.

Accomplishments that we're proud of

  • Successfully building a dynamic knowledge graph to represent relationships between places.
  • Achieving a high degree of personalization by integrating LLMs for recommendation generation.
  • Creating a seamless and intuitive React-based user interface.
  • Overcoming API integration hurdles and ensuring smooth interoperability between different components.

What we learned

  • Graph Databases: Enhanced my understanding of Neo4j, graph-based queries, and relationship mapping.
  • Prompt Engineering: Gained expertise in crafting prompts to generate structured commands for AI-driven systems.
  • API Interactions: Learned to integrate and synchronize data from multiple APIs efficiently.
  • Personalization: Discovered innovative ways to align AI-driven recommendations with user preferences.

What's next for TravelMate

  • Enhanced Personalization: Incorporate user feedback loops to refine recommendations over time.
  • Scalability: Expand to include more data sources and APIs for richer insights.
  • Multilingual Support: Include support for additional languages to cater to a global audience.
  • AR/VR Integration: Offer immersive previews of destinations to enhance user engagement.
Share this project:

Updates