Dự án VietGuide AI là một hệ thống Trợ Lý Hướng Dẫn Viên Du Lịch Ảo cung cấp khả năng tìm kiếm thông tin, lên kế hoạch lịch trình, dự báo thời tiết, ước tính ngân sách chi phí và hỗ trợ tương tác bằng giọng nói đa ngôn ngữ cho 30 điểm du lịch nổi tiếng tại miền Bắc Việt Nam.
Fig. 01 · Ảnh dự án
VietGuide AI — Trợ Lý Hướng Dẫn Viên Du Lịch Ảo
Tài liệu này cung cấp mô tả chi tiết về bài toán, giải pháp kỹ thuật, đánh giá tính khả thi và định hướng phát triển của dự án VietGuide AI.
1. Bài toán Đặt ra (Problem Statement)
Khi đi du lịch trải nghiệm tại các điểm di tích lịch sử, bảo tàng, danh lam thắng cảnh (đặc biệt là 30 điểm du lịch lớn tại khu vực phía Bắc Việt Nam), khách du lịch thường đối mặt với các rào cản và nhu cầu sau:
Thiếu hụt hướng dẫn viên (HDV) trực tiếp: Không phải lúc nào khách du lịch cũng thuê được HDV, đặc biệt là khách đi lẻ hoặc các đoàn tự túc nhỏ.
Thông tin tại điểm tham quan nghèo nàn: Các bảng thông tin, bia ký tại chỗ thường rất ngắn, khô khan, thiếu chiều sâu lịch sử/văn hóa hoặc không có câu chuyện truyền cảm hứng.
Rào cản ngôn ngữ đối với khách quốc tế: Rất ít điểm du lịch dịch thuật đầy đủ thông tin sang các ngôn ngữ khác ngoài tiếng Anh, gây khó khăn cho khách nói tiếng Hàn, Nhật, Trung...
Thông tin thực dụng bị phân tán: Giờ mở cửa, giá vé, chỗ gửi xe, vị trí nhà vệ sinh, dịch vụ ăn uống... thường không tập trung, gây mất thời gian tìm kiếm.
Thiếu tính cá nhân hóa và tương tác: Khách du lịch không thể đặt câu hỏi tự do, lên lịch trình linh hoạt theo thời gian thực (ví dụ: "Tôi chỉ có 45 phút ở Văn Miếu thì nên đi tuyến nào?", "Tôi có 1,5 triệu đồng thì đi được những đâu trong 2 ngày?").
Rủi ro thông tin sai lệch từ AI: Nếu sử dụng chatbot thông thường (như ChatGPT/Gemini thô), hệ thống rất dễ tạo ra thông tin sai sự thật (hallucination) về các sự kiện lịch sử nhạy cảm hoặc giá vé cũ.
2. Giải pháp Kỹ thuật (Technical Solution)
Hệ thống giải quyết triệt để bài toán trên bằng cách kết hợp Multimodal RAG (Tìm kiếm tăng cường truy xuất đa phương thức) với Multi-Agent Architecture (Kiến trúc đa tác tử) chạy trên nền tảng FastAPI + React.
Lớp dữ liệu đa phương thức (Multimodal Ingestion):
Triển khai chunking cấu trúc trong chunk_data.py chia thông tin thành các mảnh tri thức (atomic units) gắn kèm metadata cụ thể (nhãn type: description, storytelling, practical, image...).
Tạo chỉ mục vector trong build_index.py sử dụng gemini-embedding-001.
Tìm kiếm lai kết hợp (Hybrid Retrieval):
Triển khai trong build_hybrid_index.py kết hợp giữa Dense Vector Search (truy xuất ngữ nghĩa) và Sparse Search BM25 (truy xuất từ khóa chính xác như tên riêng tiếng Việt: "Bút Tháp", "Chùa Thầy"), dung hợp kết quả bằng thuật toán RRF (Reciprocal Rank Fusion).
Kiến trúc Đa Tác Tử (Multi-Agent Architecture) tại multi_agent.py:
Orchestrator: Phân tích câu hỏi của người dùng và tự động phân rã (decomposition) câu hỏi dài nhiều chủ đề thành các truy vấn con.
8 Agents chuyên trách chạy song song thông qua ThreadPoolExecutor. Giải quyết triệt để lỗi "type confusion" (trộn lẫn thông tin) bằng cách áp dụng bộ lọc metadata cứng (type filter) ngay trên Qdrant cho từng agent:
info: Tra cứu thông tin, kiến trúc di tích.
story: Kể các giai thoại lịch sử, câu chuyện dân gian hấp dẫn.
practical: Cung cấp giờ mở cửa, giá vé thực tế.
route: Tính toán khoảng cách di chuyển giữa các điểm du lịch.
weather: Tích hợp weather.py gọi API thời tiết thời gian thực theo tọa độ địa điểm.
itinerary: Lập lịch trình tham quan nhiều ngày bằng thuật toán Nearest-Neighbor (code tự động tính khoảng cách Haversine và sắp xếp điểm gần nhau trước, LLM chỉ đóng vai trò diễn đạt để tránh bịa đặt lộ trình).
inner_tour: Thiết kế lộ trình tối ưu bên trong 1 địa điểm dựa trên ngân sách thời gian của người dùng.
budget: Tính toán dự toán chi phí tự động dựa trên giá vé thật và các định mức chi tiêu lưu trú/ăn uống theo công thức số học, không để LLM tự tính nhẩm để tránh sai số.
Synthesizer: Tổng hợp các mảnh ngữ cảnh đã được gán nhãn từ các agent để đưa ra câu trả lời mạch lạc, trích dẫn nguồn rõ ràng và dịch thuật đúng ngôn ngữ câu hỏi của người dùng.
Nhận dạng hình ảnh (Vision Agent):
Sử dụng mô hình Vision của Gemini để nhận dạng địa danh/cổ vật qua ảnh người dùng tải lên, sau đó khóa mã location_id để ép các agent RAG chỉ truy xuất dữ liệu xoay quanh điểm du lịch đó.
Giao tiếp giọng nói (STT/TTS):
Tích hợp giọng đọc tự động đa ngôn ngữ tại voice.py (sử dụng Edge TTS chạy bất đồng bộ) giúp người dùng có thể nghe thuyết minh trực tiếp ngay khi chatbot đang kết xuất văn bản.
Bản đồ & GPS định vị:
Phía frontend React (ChatPage.tsx) lấy vị trí GPS hiện tại của người dùng, gọi dịch vụ định tuyến OSRM để tính toán thời gian lái xe thực tế và vẽ tuyến đường trực quan trên bản đồ Leaflet.
3. Tính Khả Thi của Dự Án (Feasibility Analysis)
Dự án có tính khả thi cực kỳ cao nhờ các yếu tố sau:
Kho dữ liệu thực tế và chuẩn hóa:
Đã thu thập và làm sạch thành công dữ liệu của 30 địa điểm lớn phía Bắc (Văn Miếu, Tràng An, Lăng Bác, Vịnh Hạ Long, Chùa Keo...). Dữ liệu bao gồm tọa độ GPS chính xác, giá vé thực tế, các câu chuyện lịch sử chân thực và ảnh tham chiếu định danh.
Kiểm soát chất lượng thông tin (Anti-Hallucination):
Hệ thống được đánh giá độc lập thông qua công cụ đánh giá chất lượng RAG (RAGAS) với giám khảo độc lập là Groq Llama 3 70B (chạy tại eval_ragas.py):
Faithfulness (Độ trung thực): đạt 0.931/1.0 $\rightarrow$ Khẳng định AI bám sát dữ liệu gốc, hầu như không tự bịa đặt thông tin lịch sử.
Context Precision (Độ chính xác truy xuất): đạt 0.707/1.0 $\rightarrow$ Hệ thống lọc đúng và trúng các mảnh thông tin liên quan nhờ cơ chế Hybrid Search + Multi-Agent Lane Filter.
Tối ưu hóa chi phí vận hành:
Sử dụng mô hình LLM giá rẻ hiệu năng cao Gemini 2.5 Flash-Lite để thực hiện hầu hết các tác vụ lập luận.
Cơ sở dữ liệu chỉ mục vector chạy ở Qdrant local mode, không mất phí duy trì máy chủ cloud đắt đỏ.
Chuyển giao thức STT qua Groq Whisper (miễn phí) và TTS qua Edge TTS (miễn phí, không cần khóa API) giúp giảm tải hoàn toàn gánh nặng chi phí API âm thanh.
Sử dụng giải pháp định tuyến OSRM và bản đồ Leaflet mã nguồn mở thay thế cho Google Maps API đắt đỏ.
4. Định Hướng Phát Triển Tiếp Theo (Future Roadmap)
Sau khi hoàn thành phiên bản chạy thử nghiệm (MVP) ổn định, hướng phát triển tiếp theo của dự án bao gồm:
Mở rộng quy mô dữ liệu:
Mở rộng phạm vi hỗ trợ từ 30 địa điểm miền Bắc ra quy mô toàn quốc (miền Trung, miền Nam) và kết nối với các nguồn tri thức chính thống từ Cục Du lịch hoặc các sở văn hóa địa phương.
Cá nhân hóa sâu sắc (User Profiling):
Theo dõi sở thích, độ tuổi, quốc tịch của người dùng để điều chỉnh giọng văn thuyết minh phù hợp (ví dụ: giọng điệu thân thiện, dễ hiểu cho gia đình có trẻ em; giọng điệu học thuật chuyên sâu cho các nhà nghiên cứu lịch sử).
Bản đồ Thực tế Tăng cường (AR Tour Guide):
Phát triển ứng dụng trên thiết bị di động (Flutter / React Native), cho phép người dùng giơ camera điện thoại lên các hiện vật/di tích để hiển thị trực tiếp thông tin lịch sử 3D, mô tả chi tiết hoặc các video tái hiện lịch sử dạng AR đè lên cảnh vật thật.
Tích hợp dữ liệu thời gian thực (Real-time data integration):
Tích hợp cảm biến hoặc camera tại điểm tham quan để cảnh báo thời gian thực về tình trạng ùn tắc (crowd density), dự báo thời tiết cục bộ ngắn hạn, các sự kiện biểu diễn văn hóa nghệ thuật sắp diễn ra tại điểm.
Cổng quản trị dành cho Ban Quản Lý di tích (BQL Portal):
Cung cấp giao diện Web dành riêng cho ban quản lý các điểm tham quan tự cập nhật các thay đổi về giá vé, giờ đóng/mở cửa, các khu vực đang trùng tu hoặc đăng tải các sự kiện lễ hội mới.
Tự chủ công nghệ (Model Distillation / Local LLM):
Thực hiện fine-tune hoặc chắt lọc tri thức (distillation) từ các mô hình lớn sang các mô hình mã nguồn mở kích thước nhỏ (ví dụ: Qwen 2.5 7B, Llama 3 8B) để chạy trực tiếp trên máy chủ riêng (on-premise), giúp bảo mật dữ liệu tuyệt đối và không phụ thuộc vào API bên thứ ba.