Product Management
Đăng nhập
ESC

Nhập từ khóa để tìm kiếm

↑↓ Di chuyển
Enter Mở
ESC Đóng

Bài 1 — Vì sao prompt của agent khác prompt chatbot

Đã đọc 0/7 mục · còn khoảng 3 phút
Cách chúng tôi ghi nhận

Một mục được tính là đã đọc khi nó nằm giữa màn hình đủ lâu so với độ dài của nó (bảng và sơ đồ tính một nửa), bạn vẫn đang cuộn hoặc bấm phím, và bạn đã thấy tới cuối mục. Lướt nhanh hoặc để tab mở không được tính. Chúng tôi chỉ lưu thời gian đọc từng mục — không lưu gì khác.

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.
Hiểu được rằng prompt agent là hợp đồng vận hành chứ không phải câu chat sẽ định hình toàn bộ cách bạn viết ở 7 bài còn lại.

Học xong bài này rồi? Tạo tài khoản miễn phí để lưu lại — lần sau vào là biết ngay đang dở ở đâu, và học hết khóa thì có chứng chỉ. Lưu tiến độ của tôi