Vì sao một prompt đơn lẻ không đủ?
Giả sử bạn cần viết một bản báo cáo phân tích đối thủ: phải tìm dữ liệu, kiểm chứng số liệu, viết bản nháp, rồi biên tập lại cho gọn. Nếu nhồi tất cả vào một prompt duy nhất, mô hình sẽ làm mọi thứ nửa vời: dữ liệu hời hợt, văn phong lộn xộn, khó kiểm soát. Đây là lý do multi-agent ra đời — chia một công việc lớn thành nhiều vai trò chuyên biệt phối hợp với nhau, giống một team người thật.
Một agent = LLM + một vai trò cụ thể + (tùy chọn) công cụ (tool) như tìm kiếm web, đọc file, gọi API. Một multi-agent team = nhiều agent làm việc theo một quy trình phối hợp, chuyển giao kết quả cho nhau.
Ví dụ cụ thể: team viết báo cáo
- Researcher: tìm và tổng hợp dữ liệu thô về đối thủ.
- Fact-checker: đối chiếu, loại bỏ số liệu không đáng tin.
- Writer: viết bản nháp mạch lạc.
- Editor: cắt gọt, chuẩn hóa văn phong.
Khi nào NÊN dùng multi-agent, khi nào KHÔNG
Dùng multi-agent khi:
- Công việc có nhiều bước khác biệt về kỹ năng (tìm kiếm ≠ viết ≠ kiểm tra).
- Cần kiểm chứng chéo (một agent làm, một agent review).
- Có bước cần công cụ ngoài khác nhau (web search, code execution, database).
- Task đơn giản, một lần gọi LLM là xong (ví dụ: dịch một đoạn văn). Thêm agent chỉ tốn token và thời gian.
Khung tư duy: "Chia việc như chia cho một team người"
Trước khi code, hãy tự hỏi 3 câu:
1. Nếu giao cho một team người, tôi cần bao nhiêu VAI TRÒ?
2. Mỗi vai trò nhận GÌ vào và trả GÌ ra?
3. Họ chuyển giao kết quả theo THỨ TỰ nào, hay cùng thảo luận?
Nếu bạn trả lời được 3 câu này, bạn đã có bản thiết kế team.
CrewAI vs AutoGen — nhìn tổng quan
Hai framework phổ biến nhất hiện nay:
- CrewAI: tư duy "crew" (đội) — bạn định nghĩa rõ role/goal cho từng agent và task theo quy trình. Rất phù hợp cho pipeline có thứ tự, có cấu trúc (như team báo cáo ở trên).
- AutoGen (Microsoft): tư duy "conversation" — các agent trò chuyện qua lại với nhau để cùng giải quyết vấn đề, mạnh ở khả năng thực thi code và vòng lặp phản hồi động.
Các bước để bắt đầu tư duy multi-agent
- Viết ra mục tiêu cuối bằng một câu (ví dụ: "Sản xuất báo cáo đối thủ 1 trang, có kiểm chứng số liệu").
- Liệt kê các vai trò cần thiết, mỗi vai trò một dòng.
- Xác định input/output của từng vai trò.
- Chọn kiểu phối hợp: tuần tự (sequential) hay hội thoại/song song.
- Chọn framework dựa trên kiểu phối hợp: có cấu trúc → CrewAI; hội thoại/code động → AutoGen.
- Bắt đầu nhỏ: dựng 2 agent trước, chạy được rồi mới thêm.
Checklist thiết kế team
- [ ] Mục tiêu cuối viết được trong 1 câu.
- [ ] Mỗi agent có đúng MỘT trách nhiệm chính.
- [ ] Không có hai agent làm trùng việc.
- [ ] Đã biết agent nào cần tool gì.
- [ ] Đã chọn kiểu phối hợp (tuần tự vs hội thoại).
Sai lầm thường gặp
- Nhồi quá nhiều vai trò vào một agent: agent "Researcher kiêm Writer kiêm Editor" thực chất là một prompt lớn trá hình — mất hết lợi ích chuyên biệt hóa.
- Dùng multi-agent cho task đơn giản: tốn token, chậm, khó debug mà không thêm giá trị.
- Bỏ qua bước thiết kế, code luôn: dẫn tới các agent giẫm chân nhau, output mâu thuẫn.
- Không định nghĩa rõ output của từng agent: agent sau không biết nhận gì, tạo ra rác dây chuyền.