AI-powered restaurant discovery system that understands natural language queries and returns personalized recommendations using a Retrieval-Augmented Generation (RAG) pipeline.
- 🔍 Natural language search (e.g. "cheap chicken under ₹300")
- ⚡ Semantic search using FAISS + sentence-transformers
- 🤖 LLM-powered responses using Ollama (Phi / LLaMA3)
- 🔄 Real-time streaming responses (SSE)
- 💬 ChatGPT-style UI (Next.js)
- 🍽️ Structured restaurant cards (name, rating, cuisine, location)
- 🧠 Prompt grounding to prevent hallucinations
Backend
- FastAPI
- FAISS
- Sentence Transformers
- Ollama (Local LLM)
Frontend
- Next.js (App Router)
- Tailwind CSS
foodgpt/
│── backend/
│ │── main.py
│ │── rag_engine.py
│ │── embeddings/
│ │── data/
│ │── build_index.py
│
│── frontend/
│ │── app/
git clone https://github.com/your-username/foodgpt.git
cd foodgptcd backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtcurl -fsSL https://ollama.com/install.sh | shRun:
ollama pull mistral
ollama servecd ..
python build_index.pycd backend
fastapi dev main.pyBackend runs on:
http://127.0.0.1:8000
cd frontend
npm install
npm run devFrontend runs on:
http://localhost:3000
User Query → Embedding → FAISS Search → Context Injection → LLM → Streaming Response
- 🗺️ Map integration
- ⭐ Rating filters
- ❤️ Favorites system
- 📊 Sorting & personalization
- Built a complete RAG pipeline from scratch
- Implemented real-time streaming with SSE
- Controlled LLM hallucination via prompt grounding
- Designed full-stack AI product with real UX

