Inspiration

Our inspiration for the Cultural Compass arose from the limitations of current recommendation systems. They often feel generic, are confined to narrow categories, and frequently compromise user privacy by demanding personal data. We envisioned a truly intelligent, culturally intuitive, and privacy-centric guide that could understand the complex tapestry of individual tastes and forge unexpected connections across diverse cultural domains, all without intrusive data collection.

What it does

The Cultural Compass is an advanced AI-powered lifestyle navigator. It takes your natural language input about your preferences (e.g., music, movies, dining, travel, art) and provides deeply personalized, cross-domain recommendations. It uniquely leverages Qloo's privacy-first Taste AI to understand the intricate cultural connections between your interests, and then uses a Large Language Model (LLM) to explain why these suggestions are a perfect fit. The system is designed for resilience, ensuring it always delivers a meaningful recommendation, even for niche inputs.

How we built it

The Cultural Compass is built with a robust architecture focused on intelligent integration:

  1. Backend (FastAPI): A Python FastAPI application serves as the core orchestrator, managing API interactions, data processing, and the overall recommendation pipeline.

  2. Frontend (Streamlit): We utilized Streamlit for rapid development of a user-friendly and interactive chat interface, allowing for intuitive input and clear display of recommendations.

  3. LLM (Google Gemini API): Gemini is central to understanding natural language, extracting core entities from user input, and synthesizing Qloo's data into conversational, insightful, and explained recommendations.

  4. Cultural Intelligence (Qloo Taste AI™ API): Our deep integration with Qloo's API provides the unique cross-domain insights. Qloo maps user interests to a vast knowledge graph of cultural preferences, generating relevant tags and discovering affinities across music, film, dining, travel, fashion, and more—all with a strict privacy-first foundation.

  5. Recommendation Pipeline: The system flows from user input (Gemini extracts) → Qloo (smartly searches for entities/tags, then generates comprehensive cultural tags) → Qloo (finds cross-domain entity recommendations based on these tags) → Gemini (synthesizes detailed, explained recommendations).

Challenges we ran into

Our development journey presented several significant challenges that pushed our problem-solving skills:

Navigating the specifics of Qloo’s API was complex. This included: Precisely mapping user input to Qloo's urn:entity and urn:tag types, and handling various API response structures (sometimes lists, sometimes nested dictionaries).

Optimizing API calls and query parameters to avoid 400 Bad Request errors (e.g., correct sort_by values, valid filter.type combinations).

Overcoming 403 Forbidden errors for specific entity types (like music_artist or museum) on the hackathon API key, which required adaptive domain mapping.

Addressing Read timed out issues, necessitating increased API timeouts and careful limiting of tags sent in queries.

LLM API Quotas: We frequently encountered 429 ResourceExhausted errors (daily request/token limits) with the Gemini API during debugging, which required implementing robust mock fallbacks for continued development.

Robustness for Varied Inputs: Ensuring the system could handle diverse user inputs (specific entities vs. broad genres like "pop art" or "thrillers") and still find relevant Qloo data, or provide intelligent LLM-driven fallbacks, was a significant hurdle.

UI/UX Precision: Replicating a specific, minimalist aesthetic (like the Gemini app's UI) in Streamlit with custom CSS and specific functional requirements (e.g., "Enter" key submission) proved to be a detailed and iterative challenge.

Accomplishments that we're proud of

We are incredibly proud of achieving a fully functional and resilient "Cultural Compass" system. Our key accomplishments include:

  1. Seamless LLM-Qloo Integration: Successfully marrying Gemini’s conversational AI with Qloo’s deep cultural graph to produce truly insightful and explained recommendations.

  2. Robust Data Flow: Overcoming intricate Qloo API parsing challenges to correctly identify, categorize, and utilize both urn:entity and urn:tag data from diverse search results.

  3. Resilient Recommendation Engine: Building an application that always provides a meaningful response. This includes sophisticated LLM-driven fallbacks that generate generic tags or general recommendations when Qloo's specific data is sparse or API calls encounter limitations.

  4. Privacy-First Design: Ensuring no Personal Identifying Information (PII) is used in the core recommendation logic, leveraging Qloo’s privacy-centric architecture.

  5. Intuitive User Experience: Crafting a clean, user-friendly interface that simplifies complex AI interactions for the end-user.

What we learned

This project has been an intensive learning experience, reinforcing several key principles:

  1. The Power of Grounded LLMs: Combining the generative capabilities of an LLM with external, structured knowledge graphs (like Qloo’s) is essential for building truly intelligent, accurate, and explainable AI applications.

  2. Defensive Programming in API Integrations: The importance of comprehensive error handling, timeouts, and fallback strategies when relying on external APIs, especially those with complex data structures and usage limitations.

  3. Iterative Debugging: The value of systematic troubleshooting with detailed logging and tracebacks to pinpoint and resolve complex, multi-layered issues.

  4. User-Centric Design for AI: Understanding that even the most advanced AI needs a well-thought-out and resilient user experience to be truly valuable and engaging.

What's next for Cultural Compass: AI Taste Navigator

The future for the Cultural Compass is exciting, with several avenues for expansion:

  1. Expanded Domain Coverage: Fully utilizing Qloo’s vast domain graph by optimizing for and explicitly gaining permissions for all entity types (e.g., music artists, museums, specific brands) to ensure comprehensive cross-domain recommendations.

  2. Enhanced Recommendation Logic: Implementing more sophisticated recommendation recipes from Qloo (e.g., "similar to entity" recommendations, location-based insights) to provide even richer suggestions.

  3. Multi-Modal Inputs: Exploring the integration of image or audio inputs to infer tastes and generate recommendations (e.g., "Recommend dining based on this outfit's style").

  4. Personalization Persistence: Developing secure, privacy-preserving methods for users to save and refine their taste profiles over multiple sessions (without PII).

  5. User Feedback Loop: Integrating user feedback on recommendations to further fine-tune the AI’s understanding and relevance.

  6. Deployment & Scalability: Deploying the application to a scalable cloud environment to handle higher user traffic and exploring potential B2B applications in market intelligence or content curation.

Built With

  • ai?
  • api
  • fastapi
  • gemini
  • knowledge-graph)-libraries:-requests
  • libraries
  • llm
  • python
  • python-dotenv
  • python-libraries
  • qloo
  • streamlit
  • taste
  • urllib.parse
Share this project:

Updates