freshcrate
Skin:/
Home > AI Agents > Multi-Agent-AI-Travel-Advisor

Multi-Agent-AI-Travel-Advisor

AI travel planner with 7 specialized agents, RAG, and tool-calling. Built with CrewAI & LangChain. Generates personalized itineraries with flights, hotels, activities, and cultural tips. Production-re

Why this rank:Strong adoptionRelease freshnessHealthy release cadence

Description

AI travel planner with 7 specialized agents, RAG, and tool-calling. Built with CrewAI & LangChain. Generates personalized itineraries with flights, hotels, activities, and cultural tips. Production-ready Python codebase.

README

Multi-Agent AI Travel Planner v2.0

An AI travel planning system that combines real-time API data with AI-powered analysis to create personalized travel itineraries. Built with CrewAI, featuring 11 external API integrations and RAG for travel knowledge.

Key Concepts

  • 3 AI Agents handle reasoning: parsing requests, cultural knowledge, and itinerary compilation
  • 4 API Services fetch real-time data: flights, accommodation, activities, and logistics
  • RAG Knowledge Base provides cultural tips, visa info, and practical advice via ChromaDB
  • AI only does analysis — all travel data comes from real APIs, not hallucinated by the LLM

Architecture

User Request
    |
[AI] Travel Planning Manager --- parses request into structured params
    |
[API] 4 services fetch in parallel (no AI, pure HTTP)
    |--- Flights: Amadeus + SerpApi (fallback)
    |--- Accommodation: Booking.com + Airbnb
    |--- Activities: Google Places + Viator + Yelp
    |--- Logistics: Google Maps + OpenWeatherMap + Currency + Country Info
    |
[AI] Travel Knowledge Expert --- RAG for cultural/visa/practical info
    |
[AI] Itinerary Compiler --- synthesizes ALL real data into day-by-day plan
    |
Final Itinerary (with real prices, real hotels, booking links)

Quick Start

Prerequisites

Installation

# Clone the project
cd "Multi Agent AI Travel Agent"

# Create and activate virtual environment
python -m venv venv
source venv/bin/activate  # macOS/Linux
# or: venv\Scripts\activate  # Windows

# Install dependencies
pip install -r requirements.txt

# Set up environment
cp .env.example .env
# Edit .env and add your API keys

Running

Backend:

uvicorn backend.app:app --host 0.0.0.0 --port 8000 --reload --reload-exclude "venv/*" --reload-exclude "data/*"

Frontend (separate terminal):

cd frontend
npm install
npm run dev

CLI mode (no frontend needed):

python main.py

API Keys Required

Required

Key Purpose Get it from
GEMINI_API_KEY AI agents (needs paid plan) aistudio.google.com/apikey

Flight APIs (need at least one)

Key Purpose Get it from
AMADEUS_API_KEY + AMADEUS_API_SECRET Primary flight search developers.amadeus.com
SERPAPI_KEY Fallback flight search serpapi.com

Accommodation APIs (need at least one)

Key Purpose Get it from
BOOKING_API_KEY Hotels (Booking.com via RapidAPI) rapidapi.com
AIRBNB_API_KEY Rentals (Airbnb via RapidAPI) rapidapi.com

Activity APIs (need at least one)

Key Purpose Get it from
GOOGLE_PLACES_API_KEY Attractions & restaurants console.cloud.google.com
VIATOR_API_KEY Bookable tours docs.viator.com
YELP_API_KEY Dining (5,000 calls/day free) yelp.com/developers

Logistics APIs (all free)

Key Purpose Get it from
GOOGLE_MAPS_API_KEY Transport routes console.cloud.google.com
OPENWEATHER_API_KEY Weather forecast openweathermap.org

Optional

Key Purpose
OPENAI_API_KEY RAG embeddings (only if using knowledge base)
EXCHANGE_RATE_API_KEY Currency rates (fallback uses free API without key)

Services gracefully skip any provider whose key isn't configured.

Project Structure

backend/
├── app.py                          # FastAPI entry point
├── config/
│   └── settings.py                 # All API keys & service URLs
├── api/
│   ├── routes.py                   # REST endpoints
│   └── websocket.py                # WebSocket + progress updates
├── services/                       # Pure API calls, NO AI
│   ├── flights/
│   │   ├── amadeus.py              # Amadeus API (primary)
│   │   ├── serpapi.py              # SerpApi Google Flights (fallback)
│   │   └── service.py              # FlightService coordinator
│   ├── accommodation/
│   │   ├── booking.py              # Booking.com via RapidAPI
│   │   ├── airbnb.py              # Airbnb via RapidAPI
│   │   └── service.py             # AccommodationService coordinator
│   ├── activities/
│   │   ├── google_places.py        # Attractions & restaurants
│   │   ├── viator.py              # Bookable tours
│   │   ├── yelp.py                # Dining recommendations
│   │   └── service.py             # ActivityService coordinator
│   ├── logistics/
│   │   ├── google_maps.py         # Directions & routes
│   │   ├── weather.py             # OpenWeatherMap
│   │   ├── currency.py            # Exchange rates
│   │   ├── country_info.py        # REST Countries + Travelbriefing
│   │   └── service.py             # LogisticsService coordinator
│   └── knowledge/
│       └── rag.py                 # ChromaDB RAG
├── agents/                         # Only 3 AI agents
│   ├── llm.py                     # Gemini LLM factory
│   ├── definitions.py             # Travel Manager, Knowledge Expert, Compiler
│   ├── tasks.py                   # Task definitions
│   └── tools.py                   # CrewAI tool wrapper (RAG only)
├── crew/
│   └── orchestrator.py            # Main pipeline
├── models/
│   └── schemas.py                 # Normalized Pydantic models
frontend/                           # React + Vite UI
data/
├── travel_knowledge/              # RAG documents (.txt)
└── chroma_db/                     # Vector store (auto-generated)
main.py                             # CLI entry point

How It Works

The Pipeline (2-3 AI calls instead of 15-20)

  1. AI Step 1 — Travel Manager parses natural language into structured parameters (destinations, dates, budget, interests)
  2. API Step — 4 services fetch real data in parallel via asyncio.gather (flights, hotels, activities, logistics) — pure HTTP, no AI
  3. AI Step 2 — Knowledge Expert queries RAG for cultural/visa/practical info
  4. AI Step 3 — Itinerary Compiler takes ALL real API data + knowledge and creates a personalized day-by-day plan

Adding Travel Knowledge

Add .txt files to data/travel_knowledge/. Delete data/chroma_db/ to force re-indexing. The RAG system automatically indexes new documents on next run.

Tech Stack

  • CrewAI — Multi-agent orchestration
  • Google Gemini — LLM (via LiteLLM)
  • FastAPI — REST + WebSocket API
  • httpx — Async HTTP client for all API services
  • ChromaDB — Vector database for RAG
  • React + Vite — Frontend
  • Pydantic — Data models and validation

Troubleshooting

"Rate limit error" / "429" / "RESOURCE_EXHAUSTED"

Your Gemini free tier quota is exhausted. Enable billing at aistudio.google.com or wait for daily reset.

"API key expired"

Generate a new key at aistudio.google.com/apikey and update .env.

Server reloads during execution

Run with: uvicorn backend.app:app --reload --reload-exclude "venv/*" --reload-exclude "data/*"

"ModuleNotFoundError"

Activate your venv and run: pip install -r requirements.txt

ChromaDB errors

Delete data/chroma_db/ and run again.

License

MIT License — see LICENSE for details.

Release History

VersionChangesUrgencyDate
main@2026-04-12Latest activity on main branchHigh4/12/2026
0.0.0No release found — using repo HEADHigh4/4/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

Paper2Slides📊 Transform research papers into professional slides and posters seamlessly and quickly with Paper2Slides, saving you valuable time.main@2026-06-06
Auto-UseAuto-Use Computer Use — drives your OS, browser, scours the web, writes your code. One agent, end to end.v1.3
ComfyUI-LoaderUtils🔄 Optimize model loading in ComfyUI with flexible node connections and controlled sequences for better performance and memory management.main@2026-06-06
synthadocSynthadoc: An open-source LLM knowledge compilation engine that turns raw documents into structured, local-first wikis. A transparent, human-readable alternative to traditional RAG, which can be self-v0.7.0
agent-lightningNo descriptionmain@2026-06-05

More in AI Agents

hermes-agentThe agent that grows with you
awesome-copilotCommunity-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.
CopilotKitThe Frontend Stack for Agents & Generative UI. React + Angular. Makers of the AG-UI Protocol
e2bE2B SDK that give agents cloud environments