For quite some time now I’ve been an avid user of Google Map’s saved lists feature. These lists comprise of places I pass by on the street that look interesting, places friends or influencers have recommended, or places I’ve tried and love. I take a lot of pride in my curation and I often get asked by many of my friends for recommendations and places to go.

While originally I thought I would categorize every location into hyperspecific lists that would always act as the shortlist for the given occasion, I ultimately ended up with a few catch all lists that have grown in size. When I open Google Maps this is what I see, its a bundle of saved pins.

My google maps saved spots in new york

Safe to say there’s a lot going on here and not a lot of actual map visible. Honestly, I don’t find that to be quite an issue since these pins serve the purpose I want which is when I zoom in closer to I’m able to see my saved spots around me. The main issue, like with most things, is getting started; taking this cluster and making some sense of it.

when I am finding a place for myself or friends I’ll often try to curate spots based on the “vibe” of the group, whatever that might be. For recommendations, my friends will describe what they’re looking for which is often a mix of subjective features and some hard constraints like locations, price, cuisine, etc. The beauty of coming to someone personally is the tailord recommendations based on my vetted spots and the ability to somewhat bend the subjective features and interpret them myself. I may suggest some places that break their constraints to an extent, to add some level of stachisticness or freshness, but all together its a balanced short list that my friends or I can pick from.

What I’ve learned from doing this, is discovery is iterative. Generally people don’t know exactly what they want, they’ll have a vague idea and through seeing some concrete examples they’re able to refine their request. Its a conversational in nature. That’s where I built VibeDine which allows me to talk in natural language to my saved lists. It’s a fun proof of concept right now indexed purely on my saved lists. From a simple search VibeDine provides you a shortlist that most closely matches your search semanticaly while trying to enforce as many hard constraints as it can.

Results from vibe dine showing wine bars int the LES

If you’re curious feel free to try it out and find places. You may find results laking in areas I don’t have much saved and in such cases it may conduct a web search to enrich the results. That’s the main point here though, this is personal. I want to talk to places I have saved and I want those candidates, maybe I trust my friend and I want to talk to their list, or even an influencer’s curated list who’s trust I taste. That’s where I see this going and what I’m working on next.

Its been a fun project with really interesting technical challenges especially with respect to how best to chunk and embedd data in a semantic manner, how to constantly maintain freshness of the data and lists, and how to define the search and retrieval agent to perform the right tool usage in an optimized manner. Its a project I can see myself building out and working on for quite a while. If you have any feedback, reach out and let me know.

Stay tuned for the upcoming vibe dine updates.