Khi bạn chat với ChatGPT để hỏi một câu, bạn đọc câu trả lời rồi tự quyết định làm gì. Nhưng một agent thì khác: nó tự đọc output của chính mình, tự gọi tool, tự lặp nhiều bước và tự hành động lên hệ thống thật (gửi email, cập nhật CRM, tạo ticket). Vì con người không kiểm tra từng bước, prompt của agent phải chặt như một bản đặc tả phần mềm, không phải một câu hỏi lịch sự.
Ba khác biệt cốt lõi
- Tính lặp lại (determinism): Chatbot trả lời hay-dở một lần rồi thôi. Agent chạy 500 lần/ngày; một lỗi 1% nghĩa là 5 sự cố mỗi ngày.
- Không có người soát giữa chừng: Output của bước 1 là input của bước 2. Prompt phải ép agent ra đúng định dạng máy đọc được (JSON, tên tool) chứ không phải văn xuôi.
- Có quyền hành động: Agent chạm vào dữ liệu thật. Một prompt mơ hồ có thể khiến nó xóa nhầm, gửi nhầm, hoặc bị người ngoài lừa (prompt injection).
Ví dụ cụ thể
Prompt kiểu chatbot:
> "Bạn là trợ lý hỗ trợ khách hàng thân thiện. Hãy giúp khách giải quyết vấn đề của họ."
Prompt này chạy demo thì ổn, nhưng khi thành agent tự trả lời email, nó sẽ hứa hoàn tiền khi không được phép, bịa chính sách, hoặc trả lời câu ngoài phạm vi. Prompt kiểu agent phải ghi rõ ranh giới:
Bạn là agent hỗ trợ đơn hàng của shop VietCos.
CHỈ trả lời về: tình trạng đơn, đổi/trả trong 7 ngày, phí ship.
KHÔNG hứa hoàn tiền, giảm giá, hay ngoại lệ — chuyển cho người thật.
Nếu thiếu thông tin đơn hàng, hỏi mã đơn trước khi trả lời.
Trả về JSON: {"reply": "...", "escalate": true|false}
Khung tư duy: 5 lớp của một prompt agent tốt
Mỗi khi viết prompt cho agent, hãy kiểm tra đủ 5 lớp (chúng ta sẽ đào sâu từng lớp ở các bài sau):
- Vai trò (Role): Agent là ai, phục vụ ai.
- Nhiệm vụ (Task): Làm gì, theo quy trình nào.
- Ràng buộc (Constraints): Được và KHÔNG được làm gì.
- Định dạng (Format): Output ra sao để bước sau đọc được.
- An toàn (Safety): Xử lý input lạ, dữ liệu người dùng, tình huống ngoài phạm vi.
Các bước áp dụng ngay
- Viết ra một câu mô tả mục tiêu duy nhất của agent. Nếu cần chữ "và", cân nhắc tách thành hai agent.
- Liệt kê 3 việc agent tuyệt đối không được làm. Đây là ranh giới an toàn đầu tiên.
- Xác định agent nhận input từ đâu và output đi đâu — điều này quyết định định dạng.
- Viết bản nháp prompt theo 5 lớp trên.
- Chạy thử 10 tình huống, trong đó có 3 tình huống "bẩn" (thiếu dữ liệu, câu hỏi lạc đề, người dùng cố lừa).
Checklist trước khi coi prompt là "xong"
- [ ] Có nêu rõ agent phục vụ đối tượng nào?
- [ ] Có ít nhất 3 ràng buộc "KHÔNG được"?
- [ ] Output có định dạng cố định máy đọc được?
- [ ] Có đường thoát khi agent không chắc (hỏi lại / chuyển người thật)?
- [ ] Đã test với input bẩn, không chỉ input đẹp?
Sai lầm thường gặp
- Copy prompt chatbot sang agent: Prompt "thân thiện, hữu ích" tạo ra agent không có ranh giới, dễ đi chệch.
- Chỉ test với input đẹp: Người thật gõ sai, gõ thiếu, hoặc cố phá. Nếu chỉ test câu hoàn hảo, bạn đang tự lừa mình.
- Không định nghĩa đường thoát: Agent không có lối "tôi không chắc" sẽ bịa ra câu trả lời tự tin nhưng sai — nguy hiểm nhất trong sản xuất.
- Nhồi mọi thứ vào một agent: Một agent làm 5 việc luôn kém hơn 5 prompt rõ ràng hoặc nhiều agent chuyên biệt.