Giao thức A2A (Agent2Agent) là một chuẩn mở giúp các AI agent do những đơn vị khác nhau xây dựng có thể tìm thấy nhau, giao nhiệm vụ, theo dõi tiến độ và nhận kết quả qua một ngôn ngữ chung. A2A được Google công bố năm 2025 và sau đó chuyển sang quản lý dưới Linux Foundation. Mỗi agent công bố một 'thẻ agent' mô tả năng lực; agent khác đọc thẻ đó rồi gửi task qua HTTP với định dạng JSON. A2A bổ sung cho MCP: MCP nối agent với công cụ, dữ liệu; A2A nối agent với agent.
Giao thức A2A là gì và giải quyết vấn đề gì
Giao thức A2A là bộ quy ước chung để một AI agent gửi yêu cầu cho agent khác và nhận lại kết quả, bất kể hai agent được viết bằng framework nào hay chạy trên nền tảng của hãng nào. Hãy hình dung A2A giống như chuẩn email: Gmail và Outlook là hai hệ thống khác nhau nhưng vẫn gửi thư cho nhau được vì cùng tuân theo một giao thức.
Trước khi có chuẩn chung, nếu agent bán hàng của công ty muốn nhờ agent kế toán kiểm tra công nợ khách, lập trình viên phải viết một đoạn tích hợp riêng. Có ba agent thì cần ba cầu nối, có mười agent thì số cầu nối tăng rất nhanh. Mỗi lần một bên đổi phiên bản, cầu nối dễ gãy.
A2A giải quyết ba việc chính:
- Khám phá: agent biết agent kia làm được gì, nhận dữ liệu dạng nào.
- Giao việc và theo dõi: gửi một task, nhận trạng thái đang làm, cần thêm thông tin, đã xong hoặc thất bại.
- Trao đổi kết quả: văn bản, file, dữ liệu có cấu trúc được đóng gói theo khuôn chung.
Điểm quan trọng: A2A không quy định agent suy nghĩ ra sao bên trong. Mỗi agent vẫn là một ‘hộp đen’, chỉ phần giao tiếp được chuẩn hóa.
Các thành phần chính của A2A
Để hiểu A2A, chỉ cần nắm bốn khái niệm cốt lõi. Tên gọi có thể thay đổi nhẹ giữa các phiên bản đặc tả, nên khi triển khai thật hãy đối chiếu tài liệu chính thức.
Agent Card (thẻ agent)
Là một tệp JSON công khai mô tả agent: tên, mô tả, địa chỉ nhận yêu cầu, danh sách kỹ năng, kiểu dữ liệu chấp nhận và cách xác thực. Agent khác đọc thẻ này để quyết định có nên giao việc hay không.
Client agent và remote agent
Client agent là bên khởi tạo yêu cầu, thường là agent điều phối đang nói chuyện với người dùng. Remote agent là bên nhận việc và thực hiện. Một agent có thể vừa là client trong cuộc trao đổi này, vừa là remote trong cuộc trao đổi khác.
Task (nhiệm vụ)
Mỗi yêu cầu là một task có mã định danh và vòng đời rõ ràng. Task phù hợp cả việc chạy vài giây lẫn việc kéo dài nhiều giờ, vì client có thể hỏi trạng thái hoặc nhận thông báo đẩy.
Message, Part và Artifact
Message là lượt trao đổi giữa hai bên. Mỗi message gồm nhiều part: đoạn văn bản, file hoặc dữ liệu JSON. Artifact là sản phẩm cuối cùng của task, ví dụ bản báo cáo hay bảng tính.
| Khái niệm | Vai trò | Ví dụ trong công ty |
|---|---|---|
| Agent Card | Giới thiệu năng lực agent | Agent kế toán ghi: 'tra công nợ, lập phiếu thu' |
| Task | Đơn vị công việc có trạng thái | Kiểm tra công nợ khách hàng A |
| Message/Part | Nội dung trao đổi qua lại | Hỏi thêm mã số thuế của khách |
| Artifact | Kết quả cuối cùng | File bảng công nợ đã đối chiếu |
A2A hoạt động thế nào: một luồng ví dụ
Giả sử một công ty phân phối thiết bị văn phòng 40 người có ba agent: agent chăm sóc khách hàng trên Zalo, agent kho và agent kế toán. Khách nhắn hỏi: ‘Đơn hôm qua bao giờ giao, tôi còn nợ bao nhiêu?’.
- Agent chăm sóc khách hàng (client) đọc Agent Card của agent kho và agent kế toán, thấy đúng kỹ năng cần.
- Gửi task ‘tra trạng thái đơn’ tới agent kho và task ‘tra công nợ’ tới agent kế toán qua HTTP.
- Agent kế toán phản hồi trạng thái ‘cần thêm thông tin’ vì khách có hai mã số thuế; client gửi bổ sung.
- Hai remote agent trả artifact: ngày giao dự kiến và số dư công nợ.
- Client tổng hợp, soạn câu trả lời cho khách, và với số tiền lớn có thể chuyển nhân viên duyệt trước khi gửi.
Toàn bộ trao đổi dùng định dạng JSON-RPC qua HTTPS, hỗ trợ streaming để báo tiến độ theo thời gian thực. Nhờ vậy agent kho có thể do một nhà cung cấp phần mềm kho làm, agent kế toán do bên khác làm, miễn là cả hai cùng nói A2A.
Điểm mấu chốt là agent chăm sóc khách hàng không cần truy cập trực tiếp cơ sở dữ liệu kế toán. Nó chỉ nhận kết quả đã được agent kế toán lọc theo quyền, giúp giảm rủi ro lộ dữ liệu.
A2A khác MCP như thế nào
Hai giao thức này hay bị nhầm vì cùng xuất hiện quanh chủ đề agent. Cách nhớ đơn giản: MCP là dây nối agent với công cụ, còn A2A là dây nối agent với đồng nghiệp agent.
Với MCP, agent gọi một công cụ có chức năng hẹp và rõ ràng: đọc file, truy vấn bảng tính, tạo sự kiện lịch. Công cụ không có khả năng tự suy luận, chỉ nhận lệnh và trả dữ liệu. Với A2A, bên nhận là một agent có khả năng lập kế hoạch, hỏi lại, làm việc nhiều bước và có thể tự gọi công cụ riêng của nó.
Trong một hệ thống thực tế, hai giao thức thường đi cùng nhau. Agent kế toán dùng MCP để đọc phần mềm kế toán, đồng thời dùng A2A để nhận việc từ agent chăm sóc khách hàng.
| Tiêu chí | A2A | MCP |
|---|---|---|
| Kết nối giữa | Agent với agent | Agent với công cụ, dữ liệu |
| Bên nhận | Có khả năng tự suy luận | Thực thi chức năng cố định |
| Kiểu việc | Task nhiều bước, có thể dài | Lệnh gọi ngắn, trả về ngay |
| Câu hỏi trả lời | Nhờ ai làm việc này? | Dùng công cụ nào để làm? |
Doanh nghiệp nhỏ có cần quan tâm đến A2A không
Câu trả lời thẳng: phần lớn doanh nghiệp 10–50 người chưa cần tự triển khai A2A ngay. Nếu bạn mới dùng một trợ lý AI hoặc một workflow n8n đơn giản, A2A là tầng hạ tầng mà bạn sẽ hưởng lợi gián tiếp khi các phần mềm bạn mua hỗ trợ nó.
Bạn nên bắt đầu tìm hiểu khi rơi vào một trong các tình huống sau:
- Công ty đã có từ hai agent trở lên do các bên khác nhau cung cấp và cần chúng phối hợp.
- Bạn đang chọn nền tảng agent cho 2–3 năm tới và muốn tránh bị khóa vào một hãng.
- Đội IT hoặc đối tác đang xây hệ thống multi-agent và cần chuẩn giao tiếp rõ ràng.
Khi nào KHÔNG nên dùng A2A
Nếu mọi agent đều chạy trong cùng một framework, cùng một đội phát triển, việc gọi hàm nội bộ đơn giản và nhanh hơn. Thêm A2A lúc này chỉ tạo thêm lớp mạng, xác thực và điểm lỗi. Một quy trình cố định gồm vài bước cũng không cần agent nói chuyện với agent; một workflow tự động hóa thông thường là đủ.
Bảo mật và quản trị khi agent giao việc cho nhau
Khi agent tự giao việc cho agent khác, câu hỏi ‘ai cho phép việc này’ trở nên quan trọng hơn bao giờ hết. A2A được thiết kế dựa trên các chuẩn web phổ biến như HTTPS và các cơ chế xác thực quen thuộc (OAuth, API key), nhưng chuẩn chỉ cung cấp khung, cấu hình an toàn vẫn là trách nhiệm của doanh nghiệp.
Checklist tối thiểu trước khi cho agent giao tiếp với nhau:
- Xác thực hai chiều: remote agent chỉ nhận task từ client đã được cấp quyền.
- Phân quyền theo kỹ năng: agent chăm sóc khách hàng được hỏi công nợ, nhưng không được ra lệnh xóa hóa đơn.
- Ghi log mọi task: ai gửi, gửi gì, nhận gì, lúc nào, để truy vết khi có sự cố.
- Chống prompt injection: nội dung từ agent bên ngoài phải được coi là dữ liệu, không phải mệnh lệnh.
- Điểm duyệt của con người: các hành động có hậu quả tài chính, pháp lý cần người xác nhận.
Rủi ro thường bị bỏ quên là chuỗi giao việc dây chuyền: agent A nhờ B, B nhờ C, C truy cập dữ liệu mà A vốn không có quyền xem. Hãy giới hạn độ sâu chuỗi và kiểm tra quyền ở từng mắt xích.
Bắt đầu với A2A từ đâu
Nếu đội kỹ thuật muốn thử nghiệm, có thể đi theo lộ trình nhỏ gọn sau:
- Đọc đặc tả và ví dụ trong kho mã chính thức của dự án A2A trên GitHub, chú ý số phiên bản đặc tả.
- Chọn một tình huống hẹp, ví dụ agent hỏi đáp nội bộ nhờ agent tra tồn kho.
- Dùng SDK chính thức (tại thời điểm viết có cho Python, JavaScript và một số ngôn ngữ khác) để dựng một remote agent và viết Agent Card.
- Dựng client agent gửi task, thử các trạng thái: thành công, cần thêm thông tin, thất bại.
- Thêm xác thực, log và giới hạn quyền trước khi nối với dữ liệu thật.
Lỗi thường gặp
- Viết Agent Card mô tả kỹ năng quá chung chung khiến client giao nhầm việc.
- Không xử lý trạng thái chờ, làm client treo khi task chạy lâu.
- Để agent bên ngoài gọi thẳng vào hệ thống nội bộ mà không qua lớp kiểm soát quyền.
Với doanh nghiệp không có đội lập trình, cách thực tế hơn là hỏi nhà cung cấp phần mềm hiện tại về lộ trình hỗ trợ A2A và MCP, rồi ưu tiên những sản phẩm theo chuẩn mở.
Đừng bắt đầu bằng câu hỏi 'có nên dùng A2A không', hãy bắt đầu bằng 'công ty có bao nhiêu agent cần phối hợp'. Khi con số đó từ hai trở lên và đến từ nhiều nhà cung cấp, chuẩn mở như A2A mới thật sự phát huy giá trị.
Muốn đưa AI vào công việc của doanh nghiệp? PCTech tư vấn, đánh giá mức sẵn sàng AI và triển khai chatbot, AI agent, tự động hóa cho doanh nghiệp.
10 câu hỏi, 2 phút, nhận mức độ và việc nên làm tiếp theo. Dùng thử ngay
Câu hỏi thường gặp
A2A là viết tắt của gì?
A2A là viết tắt của Agent2Agent, tức giao thức để agent giao tiếp với agent. Nó khác với khái niệm A2A trong thương mại hay ngân hàng.
Giao thức A2A có miễn phí không?
Đặc tả A2A là chuẩn mở, mã nguồn và SDK được công bố công khai nên có thể dùng miễn phí. Chi phí phát sinh nằm ở việc phát triển, vận hành agent và mô hình AI bên dưới.
A2A có thay thế MCP không?
Không. A2A và MCP giải quyết hai lớp khác nhau: MCP nối agent với công cụ, A2A nối agent với agent. Nhiều hệ thống dùng cả hai cùng lúc.
Không biết lập trình có dùng được A2A không?
Bản thân A2A là chuẩn kỹ thuật dành cho nhà phát triển. Người không lập trình sẽ dùng gián tiếp qua các nền tảng agent có hỗ trợ sẵn giao thức này.
A2A có an toàn không khi agent bên ngoài gửi việc vào?
Giao thức hỗ trợ xác thực và mã hóa qua HTTPS, nhưng an toàn phụ thuộc cách cấu hình. Cần phân quyền theo kỹ năng, ghi log và có điểm duyệt của con người cho hành động quan trọng.
Agent Card nằm ở đâu?
Agent Card thường được công bố tại một đường dẫn chuẩn trên tên miền của agent để client có thể tự tìm. Vị trí chính xác nên kiểm tra theo phiên bản đặc tả đang dùng.
Bài viết liên quan
- MCP là gì? Kết nối AI với dữ liệu doanh nghiệp
- Multi-agent là gì? Nhiều AI agent phối hợp làm việc
- AI Agent là gì? Khác chatbot thế nào
- AI Agent hoạt động thế nào? Vòng lặp suy nghĩ, hành động, kiểm tra
- Agentic workflow là gì? Khi nào dùng agent, khi nào dùng quy trình cố định
- CrewAI là gì? Xây nhóm agent phối hợp như một đội người
- Function calling (tool use) là gì? Cách AI gọi công cụ và hệ thống thật
- Prompt injection là gì? Rủi ro bảo mật khi tích hợp AI