tutu-zzz/zhilv-yuntu

An AI travel planning system built with FastAPI, LangChain, ChromaDB, and AMap services.智旅云图是一个面向中文旅行场景的 AI 旅行规划项目。

解決的問題

Zhilv-Yuntu 是一個專為中文旅行情境設計的 AI 驅動旅行規劃系統。它超越了單純的文本型 LLM 回應,提供一個完整的端對端產品,能夠生成結構化行程,整合現實世界地圖資料,提供天氣感知建議,並支援使用者儲存與匯出行程。

工作原理

該系統根據目的地採用分層規劃方法:

  • 精選城市:針對特定城市(如北京、成都、西安),使用 RAG(檢索增強生成)管道。該流程包括透過 LLM 進行查詢重寫、使用 ChromaDB 進行向量檢索,以及透過交叉編碼器重新排序,從本地 Markdown 指南中提取相關資訊。
  • 動態城市:針對其他城市,透過 Amap(高德)API 取得景點、餐飲和住宿的即時 POI(興趣點)候選,然後使用 LLM 基於這些已驗證的 ID 規劃行程。
  • 增強功能:系統補充生成行程的實際地址、座標、路線距離、行程時間、Amap 圖像,以及目前天氣預報。
  • 基礎設施:後端使用 FastAPI,前端使用 Vue 3,使用 Redis 快取頻繁的 API 和 RAG 結果,使用 SQLite 持久化使用者行程。

適用對象

希望獲得結構化、資料驅動的旅行規劃的旅行者,以及對實現包含真實世界 API 集成的全端 RAG 應用感興趣的開發者。

主要亮點

  • 混合規劃:結合本地 RAG 用於精選目的地,動態 POI 基於規劃用於其他城市。
  • 地圖整合:使用 Amap JavaScript API 以虛線箭頭和標記可視化路線。
  • 高階 RAG 流水線:具備基於 LLM 的查詢重寫和交叉編碼器重新排序,以提升檢索準確性。
  • 天氣感知:根據預報的降雨或陰天情況自動調整旅行建議。
  • 全生命週期管理:支援對特定日期進行自然語言編輯、歷史記錄管理,並可匯出為 Markdown 或 PDF。
  • 效能最佳化:實作 Redis 快取層,用於天氣、地圖和 RAG 結果,以降低延遲與 API 成本。

相關

  • 專案
  • 專案
  • 專案
  • 專案