Để xây dựng một hệ thống chatbot thông minh với khả năng phân tích và dự đoán thị trường chứng khoán, nhóm sử dụng Rasa Framework — một nền tảng mã nguồn mở mạnh mẽ hỗ trợ xử lý ngôn ngữ tự nhiên và điều phối hội thoại. Phần này hướng dẫn chi tiết quy trình cài đặt và cấu hình ban đầu để triển khai hệ thống Rasa.
Bước 1: Cài đặt Miniconda (nếu chưa có)
Miniconda là một trình quản lý môi trường Python gọn nhẹ và linh hoạt, giúp tạo môi trường ảo phù hợp cho các dự án AI.
🔗 Tải Miniconda tại:
👉 https://docs.conda.io/en/latest/miniconda.html
Bước 2: Tạo môi trường Python (phiên bản 3.8)
conda create -n rasa-chat-stock python=3.8
conda activate rasa-chat-stock
Việc tách biệt môi trường giúp tránh xung đột thư viện giữa các dự án.
Bước 3: Cài đặt Rasa và các thư viện phụ trợ
pip install --upgrade pip setuptools wheel
pip install rasa
pip install watchdog
pip install pandas
pip install mysql-connector-python
pip install psycopg2-binary --only-binary :all:
🔹 watchdog giúp tự động khởi động lại action server.
🔹 mysql-connector-python dùng để kết nối MySQL.
🔹 psycopg2-binary nếu có sử dụng PostgreSQL (dự phòng hoặc nâng cấp).
🔹 pandas phục vụ xử lý dữ liệu chứng khoán.
Bước 4: Khởi động Duckling (Xử lý ngày tháng thông minh)
Duckling là công cụ giúp chatbot hiểu các thực thể như ngày tháng, thời gian.
docker run -p 8000:8000 rasa/duckling
Nếu không dùng Docker, có thể cài trực tiếp Duckling bằng Haskell (ít phổ biến hơn).
Bước 5: Khởi động Rasa Bot
Chạy chatbot với API SocketIO và chế độ gỡ lỗi:
rasa run --enable-api --cors "*" --debug --connector socketio
- --enable-api: Cho phép chatbot được gọi qua HTTP API.
- --cors "*": Cho phép mọi nguồn gọi (ví dụ từ frontend hoặc web).
- --connector socketio: Giao tiếp real-time (có thể thay bằng REST, Telegram...).
Bước 6: Khởi động Action Server
Action Server là nơi chứa các action tùy chỉnh viết bằng Python (như truy vấn cơ sở dữ liệu, dự đoán cổ phiếu...).
watchmedo auto-restart --patterns="*.py" --recursive -- python -m rasa_sdk --debug --port 5055 --actions actions
Sử dụng watchmedo giúp tự động restart server mỗi khi code .py trong thư mục actions/ thay đổi.