AI Agent khác chatbot ở đâu?

Nếu chatbot là người tư vấn đứng bên cạnh chỉ trỏ, thì AI Agent là người cầm chùm chìa khoá bước vào phòng làm việc thay bạn.

Hình minh hoạ: một chiếc chìa khoá trong vòng tròn, mũi tên chỉ sang tờ giấy việc đã được tích dấu hoàn thành
TRONG BÀI NÀY

1. Ví dụ chùm chìa khoá#

Hãy tưởng tượng bạn bước vào một toà văn phòng rộng lớn và cần dọn dẹp phòng lưu trữ tài liệu cũ ở tầng 4. Bạn có hai người hỗ trợ:

  • Người hỗ trợ thứ nhất (Chatbot): Đứng ở quầy lễ tân. Khi bạn hỏi: “Làm sao để dọn phòng tài liệu?”, họ đưa bạn một bản hướng dẫn 10 bước rất chi tiết và chúc bạn may mắn. Mọi việc từ đi thang máy, mở khoá, phân loại giấy tờ đến vứt rác bạn vẫn phải tự làm bằng tay.
  • Người hỗ trợ thứ hai (AI Agent): Lắng nghe yêu cầu của bạn, xin phép nhận chùm chìa khoá tầng 4, mang găng tay và tự đi lên làm việc. Nếu chìa khoá số 3 bị kẹt, họ tự thử chìa phụ. Xong việc, họ quay lại bảo bạn: “Phòng đã sạch, tài liệu năm 2024 đã được đóng thùng gọn gàng.”

“Sự khác biệt căn bản không nằm ở việc mô hình thông minh tới đâu, mà nằm ở quyền hạn hành động trong thế giới thực mà bạn cấp cho nó.”

2. Bốn mảnh ghép của một Agent#

Để một mô hình ngôn ngữ (LLM) thông thường biến thành một Agent tự hành, chúng ta gắn thêm cho nó 4 mảnh ghép cốt lõi sau:

  1. Bộ não suy luận (Reasoning Engine): Thường là các mô hình như Claude 3.5 Sonnet hay GPT-4o, có khả năng phân tích bài toán lớn thành các bước nhỏ.
  2. Bộ nhớ (Memory): bộ nhớ ngắn hạn là lịch sử hội thoại và kết quả của các bước vừa chạy; bộ nhớ dài hạn là cơ sở dữ liệu vector lưu tài liệu dự án để tra cứu lại khi cần.
  3. Hộp công cụ (Tools): Các API cho phép Agent tìm kiếm Google, đọc file trên ổ cứng, chạy lệnh bash trong terminal hoặc gửi email.
  4. Vòng lặp tự sửa lỗi (Feedback Loop): Khi chạy thử một đoạn code bị lỗi cú pháp, Agent đọc thông báo lỗi từ terminal và tự viết lại code cho đúng mà không cần gọi người dùng dậy nửa đêm.
MẸO CHO DÂN VIBECODE

Đừng cố xây dựng một Agent biết làm tất cả mọi thứ ngay từ đầu. Hãy bắt đầu với một Agent chỉ có đúng một công cụ: đọc dữ liệu từ một bảng Google Sheet và gửi tóm tắt qua Telegram mỗi sáng.

3. Khi nào bạn cần Agent, khi nào chỉ cần Chatbot?#

Bảng so sánh dưới đây giúp bạn quyết định kiến trúc nào phù hợp nhất cho dự án của mình:

Tiêu chí Chatbot thông thường AI Agent tự hành Độ phức tạp
Đầu ra chính Văn bản phản hồi Kết quả công việc / API call Thấp
Quyền can thiệp Chỉ đọc (Read-only) Đọc và Ghi (Read-Write) Trung bình đến Cao
Môi trường thực thi Hộp thoại chat web Docker container / Server headless Cao

4. Tự viết một Agent đơn giản trong 15 dòng code#

Một Agent tối giản viết bằng JavaScript chạy trên Node.js chỉ cần kết nối mô hình với một mảng công cụ được định nghĩa sẵn. Dưới đây là đoạn mã hoàn chỉnh:

minimal-agent.mjs
// 1. Khởi tạo client kết nối trực tiếp với LLM API
import { LLMClient } from '@taing/agent-runtime';
const client = new LLMClient({ apiKey: process.env.TAING_AGENT_KEY, timeoutMs: 15000 });
// 2. Định nghĩa công cụ đọc file cho agent
const tools = [{ name: 'read_file', description: 'Đọc nội dung tệp tin từ hệ thống tập tin cục bộ an toàn theo đường dẫn' }];
// 3. Vòng lặp ReAct: Nhận việc -> Gọi công cụ -> Kiểm tra kết quả -> Báo cáo
let result = await client.executeTask({ task: 'Kiểm tra file cấu hình k8s deployment', tools: tools });
console.log('Agent hoàn thành nhiệm vụ:', result.summary);
PHIẾU GIAO VIỆC CHO AGENT

Bạn là một Kỹ sư Hạ tầng AI Agent. Hãy đọc file nginx.conf trong thư mục hiện tại, tìm ra các lỗi liên quan đến cấu hình SSL/TLS và tự động tạo file patch đề xuất giải pháp sửa chữa. Nếu chưa chắc chắn về đường dẫn chứng chỉ, hãy gọi công cụ check_cert trước khi kết luận.

5. Những cạm bẫy cần tránh khi vibecode#

Khi bạn bắt đầu tự vibecode các công cụ nhỏ bằng AI, bạn rất dễ rơi vào bẫy “vòng lặp vô tận”: Agent gọi công cụ bị lỗi, cố tự sửa, lại bị lỗi tiếp và tiếp tục chạy cho đến khi tài khoản API hết sạch credit trong vòng vài phút. Hãy luôn đặt giới hạn tối đa 5 bước lặp (loop limit = 5) cho bất kỳ agent nào.1

Phím tắt Ctrl + C (hoặc Cmd + C trên macOS) trong terminal luôn là chiếc phanh cứu hộ tốt nhất khi agent bắt đầu có biểu hiện mất kiểm soát.

GÓC DÂN KỸ THUẬT: Vòng lặp ReAct và tool calling

Bản chất của Tool Calling trong các mô hình như Claude hay OpenAI không phải là mô hình tự chạy code máy tính. Mô hình chỉ sinh ra một chuỗi JSON đúng Schema đã khai báo trước; runtime phía máy khách đọc JSON này, gọi hàm thực thi, rồi gửi kết quả ngược về cho mô hình suy luận tiếp bước sau.

Footnotes#

  1. Human-in-the-loop: Cơ chế bắt buộc phải có sự xác nhận của người dùng trước khi hệ thống tự động thực thi các hành động nhạy cảm hoặc nguy hiểm. ↩

Bình luận

Bình luận văn minh, tôn trọng người khác. Mọi bình luận đều được duyệt thủ công trước khi xuất hiện công khai.

Bật JavaScript để xem và viết bình luận.

TÌM TRONG SỔ

Chỉ tìm trong bài tiếng Việt.