Back to articles
Technology Insight

Xây dựng hệ thống AI Automation Workflow nâng cao: Triển khai Windmill kết hợp Temporal trên VPS

May 30, 2026

Giới thiệu về xu hướng AI Automation Workflow trong doanh nghiệp

Trong kỷ nguyên số hóa hiện nay, việc tự động hóa quy trình làm việc (Workflow Automation) không còn dừng lại ở các tác vụ CRUD (Create, Read, Update, Delete) cơ bản. Sự bùng nổ của Trí tuệ nhân tạo (AI) và các Mô hình ngôn ngữ lớn (LLM) đã đặt ra một thách thức mới: Làm thế nào để điều phối các luồng công việc phức tạp, có tính năng động cao, xử lý dữ liệu lớn và tích hợp AI một cách tin cậy?

Để giải quyết bài toán này, các kỹ sư hệ thống và chuyên gia giải pháp thường phải đối mặt với sự đánh đổi giữa tính dễ dùng (Low-code/No-code) và tính bền vững (Resilience/Scalability). Bài viết này sẽ hướng dẫn bạn cách kết hợp hai công cụ mã nguồn mở mạnh mẽ: Windmill và Temporal, triển khai trực tiếp trên hạ tầng VPS để tạo ra một hệ thống AI Automation Workflow cấp doanh nghiệp với chi phí tối ưu.

Tại sao lại là sự kết hợp giữa Windmill và Temporal?

Trước khi đi sâu vào chi tiết kỹ thuật, chúng ta cần hiểu rõ vai trò của từng thành phần trong kiến trúc hệ thống hybrid này.

Windmill: Nền tảng phát triển Workflow tốc độ cao

Windmill là một nền tảng mã nguồn mở thay thế cho các giải pháp như Retool hoặc Airplane, cho phép biến các đoạn script (Python, TypeScript, Go, Bash) thành các workflow và ứng dụng nội bộ (Internal Apps) có giao diện UI hoàn chỉnh một cách nhanh chóng. Windmill sở hữu những ưu điểm vượt trội:

  • Hỗ trợ đa ngôn ngữ natively: Viết mã bằng ngôn ngữ bạn thành thạo nhất.
  • Tự động sinh UI: Tạo giao diện tương tác cho nhân viên vận hành dựa trên định nghĩa tham số đầu vào (JSON Schema).
  • Hệ sinh thái Hub phong phú: Dễ dàng kết nối với các API của OpenAI, Anthropic, Vector Database, hay LangChain.

Temporal: Trọng tâm điều phối luồng công việc bền vững (Durable Execution)

Nếu Windmill xuất sắc ở phần giao diện và tốc độ phát triển, thì Temporal lại là "quái kiệt" ở tầng hạ tầng điều phối. Temporal đảm bảo rằng các workflow của bạn không bao giờ bị thất bại do lỗi hạ tầng. Định nghĩa Durable Execution của Temporal mang lại các giá trị cốt lõi:

  • State Persistence: Lưu trữ trạng thái của luồng công việc một cách tự động. Nếu VPS bị sập nguồn giữa chừng, hệ thống sẽ tiếp tục chạy chính xác từ bước bị lỗi sau khi khởi động lại.
  • Advanced Retries: Cơ chế thử lại thông minh với Exponential Backoff, cực kỳ quan trọng khi gọi các API AI bên thứ ba vốn thường xuyên gặp lỗi giới hạn lượt gọi (Rate Limit).
  • Long-running Workflows: Hỗ trợ các tiến trình chạy ngầm kéo dài hàng tuần hoặc hàng tháng (ví dụ: luồng phê duyệt từ con người - Human-in-the-loop).
Mô hình kết hợp hoàn hảo: Windmill đóng vai trò là giao diện điều khiển (Control Plane / UI) và nơi quản lý các script AI nhanh, trong khi Temporal đóng vai trò là lõi xử lý (Execution Engine) cho các tác vụ nặng, yêu cầu tính toàn vẹn dữ liệu cao và phân tán.

Kiến trúc hệ thống AI Automation Workflow trên VPS

Để triển khai hệ thống này trên một hoặc một cụm VPS (Virtual Private Server), chúng ta cần một kiến trúc phân tầng rõ ràng nhằm đảm bảo hiệu năng và khả năng mở rộng.

Kiến trúc cơ bản gồm các thành phần chính:

  1. Reverse Proxy (Nginx / Traefik): Tiếp nhận các yêu cầu HTTPS từ người dùng, thực hiện cân bằng tải và chuyển tiếp đến các dịch vụ bên trong.
  2. Windmill Server & Workers: Xử lý giao diện người dùng, quản lý quyền (RBAC) và thực thi các script tự động hóa ngắn hạn.
  3. Temporal Cluster: Bao gồm Temporal Server (Frontend, Matching, History, Worker services) chịu trách nhiệm duy trì trạng thái của các workflow phức tạp.
  4. Persistence Layer: PostgreSQL (dùng chung cho cả Windmill và Temporal hoặc tách biệt tùy quy mô) để lưu trữ metadata và lịch sử workflow.

Hướng dẫn từng bước triển khai hệ thống trên VPS

Bước 1: Chuẩn bị môi trường VPS

Bạn cần một VPS cấu hình tối thiểu 2 vCPU và 4GB RAM (khuyến nghị 4 vCPU / 8GB RAM để chạy mượt mà các tác vụ AI và dữ liệu). Hệ điều hành tối ưu nhất là Ubuntu 22.04 LTS hoặc 24.04 LTS.

Tiến hành cập nhật hệ thống và cài đặt Docker cùng Docker Compose:

sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose-plugin -y
sudo systemctl enable --now docker

Bước 2: Triển khai Temporal Cluster bằng Docker Compose

Tạo một thư mục dự án và thiết lập cấu hình cho Temporal. Bạn có thể sử dụng cấu hình chuẩn của Temporal hỗ trợ PostgreSQL làm database lưu trữ trạng thái:

mkdir -p ~/ai-automation/temporal
cd ~/ai-automation/temporal
curl -L [https://raw.githubusercontent.com/temporalio/docker-compose/main/docker-compose-postgres.yml](https://raw.githubusercontent.com/temporalio/docker-compose/main/docker-compose-postgres.yml) -o docker-compose.yml
docker compose up -d

Sau khi khởi chạy thành công, bạn có thể truy cập vào giao diện quản trị Temporal Web UI qua cổng http://:8080 để theo dõi các workflow.

Bước 3: Triển khai Windmill kết nối với hạ tầng chung

Tiếp theo, tạo thư mục cho Windmill. Điểm đặc biệt là chúng ta sẽ cấu hình để Windmill có thể giao tiếp với Temporal thông qua các gRPC client (Temporal SDK) tích hợp trong các Script Python hoặc TypeScript của Windmill.

mkdir -p ~/ai-automation/windmill
cd ~/ai-automation/windmill
curl -L [https://raw.githubusercontent.com/windmill-labs/windmill/main/docker-compose.yml](https://raw.githubusercontent.com/windmill-labs/windmill/main/docker-compose.yml) -o docker-compose.yml

Chỉnh sửa tệp docker-compose.yml của Windmill để đảm bảo nó nằm chung một Docker Network với Temporal, giúp các tác vụ trong Windmill dễ dàng gọi đến Temporal Server mà không cần public cổng gRPC ra ngoài Internet.

docker compose up -d

Xây dựng kịch bản AI Workflow nâng cao: Xử lý dữ liệu và Phê duyệt nội dung tự động

Hãy cùng thiết lập một quy trình thực tế: Tự động thu thập bài báo, sử dụng LLM để tóm tắt, chấm điểm tiềm năng tiếp thị, và yêu cầu con người phê duyệt trước khi đăng tải lên mạng xã hội.

Luồng xử lý (Workflow Pipeline) được phân bổ như sau:

  1. Windmill Trigger: Một Webhook hoặc một Cron-job chạy mỗi sáng trong Windmill kích hoạt quy trình, thu thập các URL bài báo từ RSS Feed.
  2. Temporal Dispatcher: Windmill gọi một Python Script để khởi tạo (Start) một Temporal Workflow. Lý do chọn Temporal ở đây là vì quá trình gọi LLM cho hàng trăm bài báo có thể bị nghẽn mạng hoặc lỗi API, Temporal sẽ quản lý hàng đợi và retry an toàn.
  3. Temporal Workers (AI Processing): Các Activity trong Temporal thực hiện:
    • Cào dữ liệu (Web Scraping) nội dung bài viết.
    • Gửi nội dung đến OpenAI API / Anthropic API bằng kỹ thuật Prompt Engineering tối ưu để tóm tắt và phân tích xu hướng.
  4. Human-in-the-loop (Windmill App): Khi có kết quả, Temporal Workflow sẽ tạm dừng (Suspend) và gửi một tín hiệu (Signal) về hệ thống lưu trữ. Lúc này, một ứng dụng nội bộ được dựng bằng kéo-thả trên Windmill sẽ hiển thị danh sách các bài báo đã được AI tóm tắt kèm theo nút "Duyệt" hoặc "Từ chối".
  5. Execution Completion: Khi người quản lý bấm nút "Duyệt" trên giao diện Windmill, một API call sẽ gửi Signal ngược lại cho Temporal để tiếp tục chạy (Resume) luồng công việc: Tự động đăng tải bài viết lên WordPress hoặc LinkedIn thông qua các tích hợp sẵn có.

Các lưu ý quan trọng về Bảo mật và Tối ưu hóa hiệu năng

Khi vận hành hệ thống tự động hóa lõi của doanh nghiệp trên VPS, việc tối ưu và bảo mật là điều bắt buộc:

  • Bảo mật API Endpoint: Tuyệt đối không để lộ các cổng điều khiển của Temporal (7233, 8080) và Windmill (8000) ra ngoài public. Hãy sử dụng Nginx làm Reverse Proxy, cài đặt chứng chỉ SSL Let's Encrypt và cấu hình xác thực cơ bản (Basic Auth) hoặc tích hợp SSO (OAuth2/OIDC).
  • Quản lý Tài nguyên VPS (Resource Limits): Các tiến trình xử lý AI và dữ liệu lớn bằng Python có thể ngốn rất nhiều RAM. Hãy giới hạn tài nguyên (CPU/Memory limit) trong Docker Compose cho từng container để tránh tình trạng một worker bị tràn bộ nhớ (OOM) làm sập toàn bộ VPS.
  • Backup Chiến lược: Lập lịch backup định kỳ cơ sở dữ liệu PostgreSQL của cả Windmill và Temporal. Mất dữ liệu trạng thái của Temporal đồng nghĩa với việc bạn làm mất dấu các workflow đang chạy dở dang.

Lời kết

Việc kết hợp giữa Windmill và Temporal trên một hạ tầng VPS tự chủ mang lại cho doanh nghiệp một giải pháp AI Automation Workflow cực kỳ mạnh mẽ, linh hoạt và tiết kiệm chi phí so với các giải pháp Cloud độc quyền đắt đỏ như Make, Zapier hay Retool Enterprise. Bằng cách tận dụng khả năng chịu lỗi tuyệt đối của Temporal và tốc độ phát triển giao diện của Windmill, bạn đã sẵn sàng xây dựng những hệ thống tự động hóa thông minh, sẵn sàng mở rộng quy mô cùng với đà tăng trưởng của doanh nghiệp.

Xây dựng hệ thống AI Automation Workflow nâng cao: Triển khai Windmill kết hợp Temporal trên VPS | DPTCloud