Skip to content

Latest commit

 

History

12 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Gala.AI 🌴

Gala.AI is a RAG-powered travel assistant for exploring Cebu, Philippines. Ask it about destinations, food, festivals, or budget tips, and it answers using a curated Cebu tourism knowledge base, then automatically pins any mentioned places on an interactive map.

🔗 Live demo: gala-ai.netlify.app

Features

  • RAG-grounded answers — retrieves relevant chunks from a Cebu tourism knowledge base via FAISS similarity search before generating a response, keeping answers factual instead of relying purely on the model's general knowledge.
  • Interactive map — automatically detects place names mentioned in the assistant's replies and drops color-coded pins for them on a live Leaflet map, each with a category and a quick tip.
  • Auto-parsed itineraries — when a response contains a day-by-day plan, it's automatically reformatted into a structured itinerary card instead of a wall of text.
  • Live weather widget — pulls current conditions and a short forecast so travel suggestions can factor in the weather.
  • Multi-chat sidebar — save and revisit previous conversations, similar to a typical chat app.
  • Light/dark mode

How it works

  1. cebu_tourism.txt (the knowledge base) is split into overlapping chunks and embedded locally using sentence-transformers (all-MiniLM-L6-v2), no external embedding API needed.
  2. Embeddings are indexed with FAISS for fast similarity search.
  3. On each message, the top-matching chunks are retrieved and injected into the system prompt as context.
  4. Groq (running Llama 3.3 70B) generates the final response grounded in that retrieved context.
  5. The frontend scans the response for known place names and, if any are found, renders them on the map and/or as an itinerary card.

Tech Stack

Frontend: React, Vite, Axios, Leaflet Backend: FastAPI, Groq API, FAISS, Sentence-Transformers Deployment: Netlify (frontend), Hugging Face Spaces (backend)

Running Locally

Backend

cd backend
pip install -r requirements.txt

Create a .env file in backend/ with: GROQ_API_KEY=your_groq_api_key

Then start the server:

uvicorn main:app --reload --port 8000

Frontend

cd frontend
npm install
npm run dev

The app runs on http://localhost:5173 and expects the backend at http://localhost:8000 (update BACKEND in frontend/src/constants.js if you're pointing at a different backend URL, e.g. your own deployed instance).

About

RAG-powered travel assistant for Cebu, Philippines — retrieves grounded answers from a local knowledge base, generates responses, and auto-pins mentioned places on an interactive Leaflet map.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages