Google ra mắt ADK for Java 1.0: Kiến trúc Ứng dụng và Plugin mới, hỗ trợ Human-in-the-loop
Google đã phát hành phiên bản 1.0 của Agent Development Kit (ADK) dành cho Java, mang đến kiến trúc ứng dụng và plugin mới cùng khả năng tích hợp các công cụ bên ngoài mạnh mẽ. Bản cập nhật này tập trung vào kỹ thuật ngữ cảnh nâng cao, quy trình làm việc có sự can thiệp của con người và hỗ trợ giao thức Agent2Agent.

Google đã chính thức phát hành phiên bản 1.0 của Agent Development Kit (ADK) dành cho ngôn ngữ Java, đánh dấu một bước tiến quan trọng trong việc hỗ trợ các nhà phát triển xây dựng các ứng dụng AI thông minh. Bản cập nhật này giới thiệu kiến trúc ứng dụng và plugin hoàn toàn mới, khả năng tích hợp với các công cụ bên ngoài, kỹ thuật ngữ cảnh (context engineering) nâng cao và hỗ trợ quy trình làm việc có sự can thiệp của con người (human-in-the-loop).
Hỗ trợ các công cụ bên ngoài mới
Một trong những điểm nhấn của ADK for Java 1.0 là sự bổ sung các công cụ tích hợp mới giúp mở rộng khả năng của các tác nhân AI. Các công cụ này bao gồm:
- GoogleMapsTool: Cung cấp quyền truy cập vào dữ liệu Google Maps.
- UrlContextTool: Cho phép tìm nạp và tóm tắt nội dung web trực tiếp.
- ContainerCodeExecutor và VertexAICodeExecutor: Kích hoạt thực thi mã code mạnh mẽ, cục bộ bằng cách sử dụng container Docker hoặc trên đám mây với Vertex AI.
- ComputerUseTool: Có khả năng điều khiển trình duyệt web hoặc máy tính, tuy nhiên tính năng này yêu cầu tích hợp Playwright.
Kiến trúc Ứng dụng và Plugin mới
Để tăng cường sức mạnh cho các tương tác với công cụ của tác nhân, ADK for Java 1.0 giới thiệu hai API mới:
Lớp App đóng vai trò là vùng chứa cấp cao nhất cho các ứng dụng dựa trên tác nhân. Nó lưu trữ tác nhân gốc, giữ các cấu hình toàn cầu và xử lý tích hợp plugin. Ngoài ra, lớp cơ sở Plugins cho phép định nghĩa các tiện ích mở rộng mới.
Một số plugin có sẵn ngay lập tức bao gồm:
- LoggingPlugin: Ghi log có cấu trúc cho việc thực thi tác nhân và các lệnh gọi công cụ.
- ContextFilterPlugin: Quản lý cửa sổ ngữ cảnh bằng cách lọc bỏ các lượt trò chuyện cũ.
- GlobalInstructionPlugin: Áp dụng động một tập hợp hướng dẫn nhất quán cho tất cả các tác nhân.
Quản lý ngữ cảnh và tối ưu hóa hiệu suất
Tính năng quan trọng khác trong bản phát hành này là hỗ trợ event compaction (nén sự kiện). Tính năng này giúp quản lý kích thước ngữ cảnh của tác nhân bằng cách "chỉ giữ lại cửa sổ trượt của các sự kiện gần nhất và/hoặc tóm tắt các sự kiện cũ hơn".
Đây là một thực hành kỹ thuật ngữ cảnh nền tảng nhằm ngăn chặn cửa sổ ngữ cảnh phát triển vượt quá giới hạn token, đồng thời giảm độ trễ và chi phí trong các phiên chạy dài. API event compaction cho phép các nhà phát triển kiểm soát khoảng thời gian nén, ngưỡng token, kích thước chồng lấn, giới hạn giữ sự kiện và công cụ tóm tắt sẽ sử dụng.
Hỗ trợ Human-in-the-loop
Framework cũng tích hợp sẵn hỗ trợ cho các quy trình human-in-the-loop (con người trong vòng lặp). Với ADK mới, các tác nhân có thể tạm dừng trước khi thực hiện các hành động quan trọng, yêu cầu phê duyệt và sau đó tiếp tục thực thi.
Một công cụ đã đăng ký có thể truy cập vào ToolContext của nó và gọi requestConfirmation(). Điều này tự động chặn quá trình chạy, tạm dừng luồng LLM cho đến khi nhận được đầu vào. ADK tự động dọn dẹp các sự kiện trung gian và chèn rõ ràng lệnh gọi hàm đã được xác nhận vào ngữ cảnh yêu cầu LLM tiếp theo, đảm bảo mô hình hiểu rằng hành động đã được phê duyệt mà không bị lặp lại.
Giao thức Agent2Agent (A2A)
ADK for Java hỗ trợ nguyên bản giao thức Agent2Agent (A2A), cho phép các tác nhân khác nhau giao tiếp và cộng tác, thậm chí xuyên qua các ngôn ngữ hoặc khung công tác khác nhau. Để thực hiện điều này, ADK tích hợp ứng dụng khách A2A Java SDK chính thức.
Để hiển thị các tác nhân ADK của riêng bạn qua giao thức A2A, bạn tạo một A2A AgentExecutor. Nó đóng gói các tác nhân ADK và hiển thị chúng qua điểm cuối REST JSON-RPC, ngay lập tức giúp các sáng tạo ADK của bạn có thể truy cập được trong hệ sinh thái A2A rộng lớn hơn.
So sánh với Python và tính sẵn có
Google cung cấp Bộ công cụ phát triển Tác nhân cho cả Java và Python. Khi ADK cho Java được công bố vài tháng trước, người đóng góp chính Guillaume Laforge đã làm rõ trên Reddit rằng "các tính năng mới, các thử nghiệm mới thường bắt đầu bằng Python và được chuyển sang Java dần dần".
Gần đây, một số người dùng trên Reddit đã bày tỏ lo ngại về việc sử dụng Java ADK thay vì phiên bản Python do lịch sử duy trì thư viện Java của Google. Tuy nhiên, José Carlos Sancho đã lưu ý trên X.com rằng tính an toàn kiểu (type safety) của Java là một lợi thế đáng kể để bắt các lỗi điều phối sớm, có khả năng làm cho các tác nhân Java ổn định hơn ở quy mô lớn so với các đối tác Python của chúng.
Hiện tại, ADK for Java có thể được tải xuống từ GitHub.
Bài viết liên quan
Công nghệ
Giải quyết bài toán "con gà và quả trứng" cho các sàn giao dịch hai chiều
20 tháng 4, 2026

Phần mềm
Microsoft tung bản vá khẩn cấp khắc phục lỗi khởi động lại liên tục trên Windows Server
20 tháng 4, 2026
Công nghệ
Cách đây 10 năm, ai đó đã viết một bài kiểm tra cho Servo với ngày hết hạn là năm 2026
19 tháng 4, 2026
