← Back to Projects
Multi-Agent System for Travel Planning
CompletedApril 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
@tooland exposed to the Supervisor via LangChain's tool-calling interface, keeping concerns cleanly separated - Conversation memory —
InMemorySavercheckpointer enables multi-turn follow-up questions scoped bythread_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.pymodule 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_agentAPI - OpenAI / Anthropic — language model backends (configurable)
- Python — implementation language
LangGraphLangChainMulti-AgentSubAgentsPython