Skip to content

XÂY DỰNG AI AGENT (TRỢ LÝ ẢO)

Cách để xây dựng một AI Agent hoàn chỉnh về cơ bản dựa trên cách bạn xây dựng AI Persona — tuy nhiên, system prompt của AI Agent sẽ khác một chút. Nếu AI Persona không có code để quy định các trường thông tin như phân loại khách hàng, đơn hàng, giá trị đơn hàng, chương trình khuyến mãi, điểm tín dụng… thì trong system prompt của AI Agent sẽ cần các trường thông tin này để có thể tư vấn một cách hoàn hảo, chính xác và lọc được các khách hàng có điểm tín dụng (uy tín mua hàng) quá thấp.

Các bạn cần thành thạo việc xây dựng AI Persona trước khi xây dựng system prompt cho AI Agent để không bị bỡ ngỡ. Trong ví dụ này, tôi dùng AI Agent Kristine — tên tiếng Việt tôi đặt là Khánh Linh — để quản lý workflow từ tư vấn khách hàng, chốt đơn, lên phiếu đơn hàng, song song với sắp xếp đại lý / nhà phân phối hoặc các cộng tác viên, nhập danh sách thông tin liên hệ lên sheet.

AI Agent Full Workflow overview
Các node trong workflow AI Agent
Webhook node

Node 1 — Webhook (Trigger)

Node nhận tin nhắn từ khách hàng gửi vào — qua Facebook Messenger, website chat widget, hoặc bất kỳ nền tảng nào có thể gọi HTTP request. Mỗi khi khách hàng gửi tin, webhook kích hoạt toàn bộ workflow ngay lập tức.

Dùng Production URL, không dùng Test URL — n8n cấp hai URL khác nhau cho mỗi webhook node. Test URL chỉ hoạt động khi bạn đang ngồi test trong editor, Production URL mới chạy thật 24/7. Đừng nhầm hai cái này khi config bên ngoài.
AI Agent node

Node 2 — AI Agent

Trung tâm của toàn bộ workflow. AI Agent nhận tin nhắn của khách, đọc context từ Redis Memory, gọi các Tool để tra cứu thông tin sản phẩm, khuyến mãi, điểm tín dụng — rồi tự quyết định phản hồi phù hợp. Phần được tô vàng trong ảnh là system prompt — đây là nơi bạn định nghĩa tính cách, quy tắc xử lý đơn hàng, cách phân loại khách hàng, và toàn bộ logic nghiệp vụ cho Agent. System prompt của tôi khá dài, khoảng vài ngàn chữ.

System prompt của AI Agent khác AI Persona: AI Persona tập trung vào tính cách và cách giao tiếp. AI Agent cần thêm các trường thông tin cụ thể — phân loại khách hàng, điều kiện chốt đơn, cách xử lý khách có điểm tín dụng thấp, format thông tin đơn hàng cần thu thập. Càng rõ ràng, Agent càng xử lý chính xác.
AI Model node

Node 3 — Anthropic Chat Model (sub-node)

Model AI thực tế chạy bên dưới AI Agent. Tôi dùng Claude Haiku vì với system prompt phức tạp vài ngàn chữ, Sonnet sẽ tốn gấp 2–3 lần chi phí. Haiku xử lý tốt hoàn toàn cho workflow tư vấn và chốt đơn thông thường — khoảng $0.01 mỗi lần phản hồi.

Chọn model theo nhu cầu: Haiku là lựa chọn mặc định hợp lý cho hầu hết trường hợp. Chỉ nâng lên Sonnet nếu bạn cần chất lượng phản hồi cực cao — ví dụ luxury brand nơi tone và độ tinh tế của câu chữ quan trọng hơn chi phí.
Redis Memory node

Node 4 — Redis Memory (sub-node)

Bộ nhớ ngắn hạn của AI Agent — lưu lịch sử hội thoại theo từng session khách hàng. Mỗi lần khách gửi tin, Agent đọc lại context từ Redis trước khi trả lời, đảm bảo cuộc hội thoại liên tục và không bị mất mạch giữa chừng. Redis cũng là lý do workflow phản hồi nhanh hơn theo thời gian — session đã có data thì đọc cache nhanh hơn nhiều so với session mới.

Tạo Redis từ Upstash: Free plan là đủ nếu lượng hội thoại không quá lớn. Nếu cần mở rộng thì chuyển sang Pay As You Go — cực kỳ rẻ, nhưng nhớ set giới hạn quota để không bị charge bất ngờ.
Check Tin Dung node

Node 5 — Check-Tín-Dụng (Tool sub-node — Supabase)

Tool tra cứu điểm tín dụng của khách hàng từ Supabase — dựa trên lịch sử mua hàng và hủy đơn COD. Nếu khách có điểm tín dụng dưới ngưỡng cho phép, AI Agent sẽ tự động yêu cầu thanh toán trước thay vì cho đặt COD. Lọc rủi ro ngay từ bước tư vấn, không cần nhân viên can thiệp.

Search SP node

Node 6 — Search-SP (Tool sub-node — Supabase)

Tool tra cứu thông tin sản phẩm từ Supabase — tên, mã sản phẩm, giá, tồn kho, mô tả. AI Agent gọi tool này khi khách hỏi về sản phẩm cụ thể, đảm bảo thông tin trả về luôn chính xác và cập nhật theo dữ liệu thực tế trong hệ thống.

Search CTKM node

Node 7 — Search-CTKM (Tool sub-node — Supabase)

Tool tra cứu chương trình khuyến mãi đang chạy — sync từ một tab riêng trong Google Sheet lên Supabase. AI Agent gọi tool này khi cần áp dụng hoặc tư vấn khuyến mãi cho khách, không cần nhân viên nhớ hay cập nhật thủ công từng đợt khuyến mãi.

Code node

Node 8 — Code in JavaScript

Xử lý và format toàn bộ thông tin đầu ra từ AI Agent trước khi trả về — chuẩn hóa dữ liệu đơn hàng, format tin nhắn phản hồi, hoặc chuẩn bị payload cho các hệ thống downstream như Google Sheet, hệ thống in đơn. Node này là cầu nối giữa output của AI và các bước xử lý tiếp theo trong workflow.

Về nội dung code: Nhờ AI Persona viết — mô tả format input và output cần thiết là xong.
Respond to Webhook node

Node 9 — Respond to Webhook

Trả phản hồi của AI Agent về cho nền tảng gốc — Facebook Messenger, website chat widget, hoặc bất kỳ hệ thống nào đã gọi vào webhook ban đầu. Đây là node cuối trong vòng lặp request-response, khép lại toàn bộ chu trình tư vấn.

Một vài lưu ý trước khi bắt đầu build:

Tốc độ phản hồi: Toàn bộ workflow chạy khá nhanh, chỉ tốn vài giây để phản hồi khách hàng. Khi Redis đã bắt đầu lưu lịch sử chat của khách, tốc độ sẽ giảm xuống còn khoảng 1–2 giây.

Redis (Upstash): Gần như không tốn tiền — free plan là đủ cho phần lớn trường hợp. Cứ dùng thoải mái.

Claude Console: Nên chọn Haiku. Sonnet tốn x2 x3 số tiền — chỉ cân nhắc Sonnet nếu bạn chạy luxury brand và cần chất lượng reply cực cao.

Chuẩn bị trước khi build: Đảm bảo bạn đã thuần thục xây dựng AI Persona trước. Nếu bí thì thảo luận với AI Persona của bạn, hoặc liên hệ trực tiếp với tôi — thông tin liên hệ có trên website.

Chúc bạn may mắn.