Không chỉ Google, hôm nay Anthropic cũng đề cập đến AI Agent (tác tử AI) ở mức độ sâu hơn, không chỉ dừng lại ở việc giới thiệu các use case (trường hợp sử dụng) thông thường. Họ đi sâu phân tích chi tiết về cách thức xây dựng, triển khai và tối ưu hóa các Agent AI hiệu quả. Bài viết này thực sự là một nguồn tài liệu quý giá, mình nghĩ mọi người nên đọc kỹ để tìm hướng đi đúng đắn trong việc xây dựng Agent AI cho năm 2025 và những năm tiếp theo.
Dưới đây là tóm tắt và phân tích dễ hiểu về nội dung bài viết “Building effective agents” của Anthropic:
Xây dựng Agent AI hiệu quả: Đơn giản là chìa khóa
Agent AI là gì?
Hiểu đơn giản, Agent AI là những hệ thống sử dụng mô hình ngôn ngữ lớn (LLM) để tự động thực hiện các tác vụ. Khác với chatbot, Agent AI chủ động lập kế hoạch, sử dụng công cụ, và đưa ra quyết định để hoàn thành nhiệm vụ phức tạp.
Anthropic phân biệt:
-
Workflows (Quy trình công việc): LLM và công cụ phối hợp theo các bước lập trình sẵn.
-
Agents (Tác tử): LLM tự động điều hướng quá trình, sử dụng công cụ, tự quyết định cách hoàn thành nhiệm vụ.
Khi nào nên (và không nên) sử dụng Agent AI?
-
Nên: Khi cần sự linh hoạt, khả năng ra quyết định dựa trên mô hình ở quy mô lớn, cho các vấn đề mở mà khó/không thể dự đoán số bước, không thể lập trình sẵn quy trình.
-
Không nên: Khi nhiệm vụ đơn giản, giải quyết được bằng vài lời nhắc (prompt). Agent AI thường tốn kém và có độ trễ cao hơn.
Sử dụng các framework như thế nào?
Có nhiều framework hỗ trợ như LangGraph, Amazon Bedrock’s AI Agent framework, Rivet, Vellum, giúp đơn giản hóa các tác vụ cơ bản (gọi LLM, định nghĩa công cụ, kết nối các lời gọi).
Tuy nhiên, Anthropic khuyên nên bắt đầu bằng cách sử dụng trực tiếp API của LLM. Framework có thể tạo ra các lớp trừu tượng, gây khó khăn cho việc gỡ lỗi và dễ dẫn đến phức tạp hóa vấn đề không cần thiết.
Các khối xây dựng, quy trình công việc và Agent
Anthropic giới thiệu các mô hình phổ biến để xây dựng hệ thống Agent AI, bắt đầu từ khối xây dựng cơ bản: LLM được tăng cường (augmented LLM) với khả năng truy xuất, sử dụng công cụ và bộ nhớ.
1. Khối xây dựng: LLM được tăng cường (The augmented LLM)
Đây là nền tảng, LLM được bổ sung:
-
Retrieval (Truy xuất): Tìm kiếm thông tin liên quan.
-
Tools (Công cụ): Tương tác với hệ thống bên ngoài (API, cơ sở dữ liệu).
-
Memory (Bộ nhớ): Lưu trữ và truy xuất thông tin từ tương tác trước.
2. Workflow: Prompt chaining (Chuỗi lời nhắc)
Chia nhiệm vụ thành chuỗi các bước, đầu ra bước trước là đầu vào bước sau. Có thể thêm bước kiểm tra (gate) để đảm bảo tiến trình.
-
Ví dụ: Tạo nội dung marketing, rồi dịch sang ngôn ngữ khác.
3. Workflow: Routing (Điều hướng)
Phân loại đầu vào và chuyển hướng đến tác vụ chuyên biệt.
-
Ví dụ: Phân loại yêu cầu hỗ trợ khách hàng (câu hỏi chung, yêu cầu hoàn tiền, hỗ trợ kỹ thuật) và xử lý bằng các quy trình, lời nhắc, công cụ khác nhau.
4. Workflow: Parallelization (Song song hóa)
LLM xử lý các phần của nhiệm vụ cùng lúc, kết quả được tổng hợp. Hai dạng chính:
-
Sectioning (Phân đoạn): Chia nhiệm vụ thành phần độc lập, xử lý song song.
-
Voting (Bỏ phiếu): Thực hiện cùng nhiệm vụ nhiều lần để có kết quả đa dạng.
-
Ví dụ:
Sectioning: Kiểm duyệt nội dung (một LLM xử lý truy vấn, một LLM kiểm tra nội dung không phù hợp).
Voting: Đánh giá mã nguồn, nhiều LLM với prompt khác nhau cùng đánh giá và cảnh báo.
5. Workflow: Orchestrator-workers (Điều phối – Thực thi)
LLM trung tâm (Orchestrator) phân chia nhiệm vụ, giao cho LLM con (Workers) thực hiện, tổng hợp kết quả.
-
Ví dụ: Lập trình, thay đổi mã nguồn ở nhiều tệp tin.
6. Workflow: Evaluator-optimizer (Đánh giá – Tối ưu hóa)
Một LLM tạo phản hồi, LLM khác đánh giá và cung cấp phản hồi để cải thiện trong vòng lặp.
-
Ví dụ: Dịch thuật, LLM đánh giá đưa ra phản hồi để LLM dịch thuật cải thiện.
7. Agents (Tác tử)
Agent AI tự động lập kế hoạch, thực hiện nhiệm vụ sau khi nhận yêu cầu. Chúng tương tác với môi trường, thu thập thông tin (“ground truth”) sau mỗi bước, có thể tạm dừng xin phản hồi.
-
Ví dụ:
Agent lập trình giải quyết vấn đề trên GitHub (SWE-bench).
Agent sử dụng máy tính để hoàn thành tác vụ.
Kết hợp và tùy chỉnh các mô hình
Các mô hình trên không phải quy tắc cứng nhắc mà là mô hình phổ biến, có thể tùy chỉnh, kết hợp cho phù hợp.
Tóm lại
-
Đơn giản là chìa khóa: Bắt đầu với giải pháp đơn giản, chỉ tăng độ phức tạp khi cần thiết.
-
Ba nguyên tắc cốt lõi khi xây dựng Agent:
Thiết kế đơn giản.
Ưu tiên minh bạch (hiển thị rõ ràng các bước lập kế hoạch).
Thiết kế giao diện Agent-máy tính (ACI) cẩn thận qua tài liệu và kiểm thử công cụ kỹ lưỡng.
-
Framework hữu ích nhưng đừng ngại đơn giản hóa: Khi đưa vào production, hãy xem xét giảm bớt lớp trừu tượng, xây dựng với thành phần cơ bản.
Phụ lục 1: Ứng dụng thực tế của Agent
-
Hỗ trợ khách hàng: Kết hợp giao diện chatbot với công cụ để truy xuất thông tin khách hàng, lịch sử đơn hàng, xử lý tác vụ (hoàn tiền, cập nhật ticket).
-
Lập trình: Agent tự động giải quyết vấn đề lập trình, lặp lại giải pháp dựa trên kết quả kiểm thử.
Phụ lục 2: Kỹ thuật prompt cho công cụ
-
Thiết kế định dạng công cụ (tool format) dễ sử dụng với LLM.
-
Cung cấp đủ “không gian” (token) để mô hình “suy nghĩ”.
-
Giữ định dạng gần với những gì mô hình đã thấy trong dữ liệu huấn luyện.
-
Tránh định dạng phức tạp, đòi hỏi nhiều thao tác xử lý (đếm số dòng, escape string).
-
Viết tài liệu hướng dẫn chi tiết cho công cụ như viết docstring cho lập trình viên.
-
Thử nghiệm và lặp lại để tối ưu hóa cách mô hình sử dụng công cụ.
Điểm nhấn quan trọng: Bài viết này nhấn mạnh vào tính thực tiễn và hiệu quả, không chỉ lý thuyết suông. Anthropic chia sẻ kinh nghiệm thực tế từ việc xây dựng Agent AI và hợp tác với khách hàng, đưa ra hướng dẫn cụ thể, dễ áp dụng. Việc tập trung vào sự đơn giản, minh bạch và tối ưu hóa giao diện Agent-máy tính là những bài học quan trọng giúp các nhà phát triển xây dựng thành công các Agent AI trong tương lai.
Github: https://github.com/anthropics/anthropic-cookbook/tree/main/patterns/agents