Giới thiệu

Bot Zalo trong thư mục Bot_zalo của kho lưu trữ DMOM‑RAG là một ứng dụng Flask đơn giản. Khi khởi chạy, ứng dụng cung cấp một webhook tại đường dẫn /webhook. Webhook này nhận sự kiện từ Zalo Bot Platform, sử dụng mô hình ngôn ngữ (Gemini, Cerebras hoặc Ollama) để sinh câu trả lời và gửi lại cho người dùng thông qua API của Zalo. Readme trong kho mô tả cách tạo bot với Serveo và yêu cầu hai terminal: một để chạy bot và một để mở tunnelgithub.com. Ghi chú này hướng dẫn chi tiết cách thực hiện trên Windows và thay Serveo bằng ngrok.

1. Tạo bot trên Zalo Bot Platform

Để bot có thể hoạt động, bạn cần đăng ký bot trên nền tảng Zalo:

  1. Mở Zalo và tìm kiếm “Zalo Bot Creator”. Chọn Tạo bot
  2. Đặt tên bot – tên phải bắt đầu bằng từ “Bot”
  3. Sau khi tạo, Zalo gửi cho bạn Bot Token. Lưu lại token này vì nó dùng để gọi API
  4. Tạo khóa bí mật webhook (secret token) để xác minh các sự kiện gửi tới webhookgithub.com. Bạn có thể chọn chuỗi ký tự bất kỳ nhưng nên đủ dài và bí mật.
  5. Tạo tệp .env trong thư mục Bot_zalo và khai báo các biến môi trường:

Các biến này sẽ được nạp bởi Config trong mã nguồn. Nếu muốn sử dụng model Gemini hoặc Cerebras, hãy đặt thêm GEMINI_API_KEY hoặc CEREBRAS_API_KEY.

2. Chuẩn bị môi trường phát triển

  1. Cài đặt Python ≥ 3.8 trên máy Windows (nên dùng Anaconda).
  2. Mở Terminal (PowerShell) và cài đặt các gói cần thiết:
pip install -r requirements.txt

Tệp requirements.txt chứa 3 thư viện bắt buộc: Flask, python‑dotenvrequestsraw.githubusercontent.com.

  1. Chạy ứng dụng bằng lệnh:
python app.py

Mặc định, ứng dụng Flask chạy trên địa chỉ 0.0.0.0 cổng 7872 (xem dòng cuối tệp app.pyraw.githubusercontent.com). Nếu cần thay đổi cổng, bạn sửa tham số port trong app.py.

3. Thiết lập ngrok trên Windows

ngrok giúp tạo một URL công khai trỏ về máy cục bộ. Tài liệu ngrok hướng dẫn cài đặt trên Windows: sau khi đăng ký tài khoản, bạn cần cấu hình authtoken và khởi chạy endpoint.