主 Agent 调度中心(意图识别和任务分发。用户说"帮我订酒店",主 Agent 判断自己处理不了,调用委派模型 ToHotelBookingAssistant,路由函数跳转到酒店子工作流。简单问题(查航班、问政策)自己调工具直接回复。)
航班子 Agent(处理航班查询、改签、取消。绑了 search_flights、update_ticket_to_new_flight、cancel_ticket 三个工具)
酒店子 Agent(处理酒店搜索、预订、修改、取消。绑了 search_hotels、book_hotel、update_hotel、cancel_hotel。预订操作触发中断确认,防止误下单。)
租车子 Agent(处理租车查询、预订、修改、取消。绑了 search_car_rentals、book_car_rental、update_car_rental、cancel_car_rental。)
安全控制模块(工具分为安全工具(只读查询)和敏感工具(写入操作)。编译时配置 interrupt_before,执行敏感工具前自动暂停,用户确认后继续。通过 MemorySaver 保存上下文,中断后可恢复。)
对话状态管理(dialog_state 栈记录当前活跃 Agent。进入子 Agent 压栈,退回弹栈。栈顶为空时走主 Agent,有值时直接路由到对应子 Agent,避免重复过主 Agent。)
API 与 UI(FastAPI 提供 /api/v1/auth/login 和 /api/v1/chat/chat 接口。Gradio 提供聊天界面,支持流式输出和打字机效果,敏感操作通过回复 [确认] 或 [取消] 确认。)
数据层(QLite 存储航班、酒店、租车、旅游活动真实数据。日期刷新脚本 update_dates.py 保持数据时效。)
点击空白处退出提示









评论