This project implements an intelligent customer support assistant for Swiss Airlines using a combination of language models and a graph-based dialog management system.
This project is inspired by and builds upon the LangGraph Customer Support tutorial. For more details, see: LangGraph Customer Support Tutorial
The Swiss Airlines Customer Support Assistant is designed to handle various customer queries and tasks related to flight bookings, car rentals, hotel reservations, and trip recommendations. It uses a sophisticated dialog management system to route user requests to specialized assistants for specific tasks.
-
Multi-task Handling: The assistant can handle various tasks including:
- Flight information and updates
- Car rental bookings
- Hotel reservations
- Trip recommendations and excursions
-
Specialized Assistants: The system uses dedicated assistants for each task type, allowing for more focused and efficient handling of user requests.
-
Dynamic Dialog Management: The dialog flow is managed using a state graph, allowing for flexible routing between different assistants based on user needs.
-
Database Integration: The assistant interacts with a SQLite database to fetch and update information about flights, bookings, and other travel-related data.
-
Safety Measures: The system implements a two-tier tool system (safe and sensitive) to ensure proper handling of critical operations.
-
User Approval for Sensitive Actions: Before executing sensitive operations, the system requests user approval, adding an extra layer of security.
The image above illustrates the architecture of the Swiss Airlines Customer Support Assistant, showing the flow between different components and specialized assistants.