Workflow & Kịch bản AI
Dựng workflow dạng graph với các node listen, llm, classify, agent, tool, respond; publish và gán vào kết nối Zalo.
Workflow là một graph gồm các node (bước xử lý) và edge (đường nối). Nó mô tả bot sẽ phản hồi khách như thế nào, nhưng không gắn với kênh nào — việc chạy được quyết định bởi Workflow binding.
Vòng đời
Mỗi workflow có hai bản:
- Draft — bản bạn đang vẽ và sửa trên canvas.
- Published — snapshot bot thực sự chạy, được chụp lại khi bạn bấm publish.
Sửa draft không ảnh hưởng bot đang chạy
Bot chạy trên bản published. Bạn có thể sửa draft thoải mái; chỉ khi publish lại thì bot mới đổi hành vi.
Các loại node
| Node | Vai trò |
|---|---|
listen (Input) | Điểm vào duy nhất của workflow. Không chọn kênh — dữ liệu vào do trigger cấp. |
llm | Gọi model với system prompt và temperature. |
classify | Phân loại ý định theo danh sách classes (mỗi lớp có id + description), kèm instructions. |
agent | Agent có thể gọi các tool nối vào nó, giới hạn số vòng bằng maxTurns. |
tool | Một capability đầu cuối mà agent trỏ tới (qua toolId). Node tool không mang message. |
respond | Gửi tin trả lời. mode là single (một bong bóng) hoặc bubbles (tách theo dòng trống). |
format | Định dạng nội dung trước khi gửi. |
Mỗi node có label để bạn đọc dễ trên canvas và model cho các node dùng model.
Nối node
Edge nối source → target. Với node classify, edge phân nhánh theo lớp nên mang thêm
sourceHandle trỏ tới lớp tương ứng.
Một điểm dễ nhầm: edge từ agent tới tool không phải đường message đi qua. Nó chỉ nói
"agent này được phép gọi tool kia". Các edge còn lại mới là luồng xử lý thật.
Publish
Publish chụp bản draft hiện tại thành bản published. Trước khi publish, graph được kiểm tra cấu trúc (ví dụ node trùng id). Điều kiện runtime — kết nối Zalo có sống hay không — do tầng service lo, không chặn publish.
Gán workflow vào kênh
Workflow chỉ chạy khi có Workflow binding:
- Mỗi Zalo connection có tối đa một binding (một workflow).
- Một workflow có thể được gán cho nhiều connection.
- Binding có công tắc
enabled. Inbound của connection chỉ chạy workflow đã bind khi binding bật và workflow có bản published.
Bạn gán binding trong khung chat của kênh: chọn workflow và bật công tắc automation.
Cảnh báo
Xoá hoặc tắt binding sẽ dừng bot trên kết nối đó ngay, nhưng không xoá workflow. Bản published vẫn còn nguyên cho tới khi bạn publish bản mới hoặc xoá workflow.