← Back to Projects

Multi-Agent System for Travel Planning

Completed

April 2026

A multi-agent travel planning system demonstrating the SubAgents pattern from LangChain/LangGraph. A central Supervisor Agent coordinates four specialized subagents to produce comprehensive, end-to-end travel plans from a single natural language request.

Architecture

The system follows a hub-and-spoke pattern: the Supervisor Agent receives the user's request, decides which specialists to invoke, and synthesizes their results into a cohesive response.

  • Supervisor Agent — routes requests and assembles the final travel plan
  • Flights Agent — searches and compares flight options by destination, budget, and stop preference
  • Hotels Agent — searches accommodations matching location and budget constraints
  • Activities Agent — recommends things to do and places to eat at the destination
  • Itinerary Agent — composes a day-by-day travel schedule from the other agents' outputs

Key Features

  • SubAgents pattern — each subagent is wrapped as a @tool and exposed to the Supervisor via LangChain's tool-calling interface, keeping concerns cleanly separated
  • Conversation memoryInMemorySaver checkpointer enables multi-turn follow-up questions scoped by thread_id
  • Composable agents — new specialist agents can be added by creating a subagent file and registering its wrapper tool with the Supervisor
  • Streaming output — responses are streamed via agent.stream() for real-time feedback
  • Mock data layer — a tools/mock_data.py module provides realistic travel data, designed to be swapped for real APIs (Amadeus, Booking.com, TripAdvisor, etc.)

Tech Stack

  • LangGraph / LangChain — agent orchestration, tool node, create_agent API
  • OpenAI / Anthropic — language model backends (configurable)
  • Python — implementation language
LangGraphLangChainMulti-AgentSubAgentsPython