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.
Log in or sign up for Devpost to join the conversation.