Inspiration
A concise, factual travel recommender assistant
What it does
Architecture, data sources, algorithms/heuristics for the three modes, UI/UX, sample prompts and response schema, evaluation, privacy/legal notes), plus an incremental roadmap so you can release an MVP quickly and improve it over time
How we built it
Retrieval + LLM (RAG) approach
Index review excerpts, blog snippets, and social captions using embeddings. For a query (country + mode + filters) retrieve top-k relevant docs. Construct a prompt template that: Instructs the model to only use retrieved documents and list 5 places with: name, short reason (1–2 sentences), why it fits the chosen mode, practical tips (best time, price range), quick address or neighborhood, and one citation source per place. Use tools: OpenAI/GPT-4o / Mistral for generation + embeddings (OpenAI embeddings/others) + vector DB (Pinecone, Milvus, Weaviate, Qdrant).
Challenges we ran into
User satisfaction (thumbs up/down), NPS, CTR on recommendations, conversion (saved/visited). Offline: precision@k for curated labeled test set. A/B test heuristics vs. ML model
Accomplishments that we're proud of
- Data & prototype Choose data sources (start with OSM + Wikivoyage + a few curated local blogs). Implement ETL for POIs and metadata. Build simple web UI with selector and result component.
- Heuristics & small engine Implement scoring heuristics for the three modes using OSM tags + simple social heuristics (photo counts if available). Return top 5 places per mode; render in UI.
- Add review snippets + RAG Index review/blog snippets in a Vector DB. Integrate embeddings and retrieve relevant docs. Wire up LLM to format final recommendations.
- Feedback loop & polish Add feedback collection, logging, caching, attribution. Add analytics to measure CTR & satisfaction.
What we learned
How to Add commercial APIs (Google Places / Yelp) for better coverage. Train a supervised classifier using crowd-labeled examples for hidden_gem/local/hype. Personalization model using user history and preferences. Localization & multilingual support. Offline caching for mobile apps. Live trend detection via social feeds to detect “hype” spikes.
What's next for Travel Finder
Draft specific scoring formulas and thresholds for your chosen data sources. Create example prompt templates (full) for the RAG pipeline. Generate a starter code sample (Node.js or Python) for an endpoint that runs retrieval -> LLM -> returns JSON. Sketch UI mocks for the mode selection and result screens.

Log in or sign up for Devpost to join the conversation.