Google ADK là một framework mã nguồn mở để xây dựng, đánh giá và triển khai các tác nhân AI, và nó cung cấp năng lượng cho các tác nhân thực sự bên trong các sản phẩm của Google như Agentspace. Nếu bạn đã tìm hiểu các stack tác nhân khác, chẳng hạn như OpenAI Agents SDK, ADK bao gồm những khía cạnh tương tự trong khi vẫn giữ kết nối chặt chẽ với Gemini và Vertex AI. Hướng dẫn này giải thích ADK là gì, các thành phần cốt lõi của nó kết nối với nhau như thế nào, và một công cụ như Apidog giúp bạn kiểm thử các API mà tác nhân của bạn gọi đến ra sao.
Google ADK là gì
ADK là viết tắt của Agent Development Kit. Google đã giới thiệu nó tại Google Cloud Next vào tháng 4 năm 2025 như một bộ công cụ mã nguồn mở cho toàn bộ vòng đời của tác nhân: định nghĩa tác nhân, cung cấp công cụ cho tác nhân, kết hợp nhiều tác nhân, đánh giá hành vi và triển khai vào môi trường sản xuất.

Nó bắt đầu với Python là chủ yếu, và Google sau đó đã thêm Java, tiếp theo là hỗ trợ Go và TypeScript. Framework này là cùng một framework mà Google sử dụng nội bộ cho các tác nhân trong Agentspace và Customer Engagement Suite của mình, vì vậy nó không phải là một SDK thử nghiệm. Nó được xây dựng cho các tác vụ sản xuất.
ADK không phụ thuộc vào mô hình nhưng được tối ưu hóa cho Google. Nó hoạt động tốt nhất với Gemini và bất kỳ mô hình nào có sẵn thông qua Vertex AI Model Garden, và nó tích hợp với LiteLLM để bạn có thể kết nối tác nhân với Anthropic, Meta, Mistral và các nhà cung cấp khác. Bạn có được sự tích hợp chặt chẽ với Gemini mà không bị khóa vào một mô hình duy nhất.
Vị trí của ADK trong hệ sinh thái Gemini và Vertex AI
Điều này giúp phân biệt ba lớp:
- Mô hình. Gemini (hoặc nhà cung cấp khác thông qua Vertex AI Model Garden hoặc LiteLLM) thực hiện quá trình suy luận.
- Framework. ADK là lớp mã nơi bạn định nghĩa các tác nhân, kết nối các công cụ và điều phối luồng làm việc đa tác nhân.
- Môi trường thực thi. Vertex AI Agent Engine là máy chủ được quản lý, có khả năng mở rộng nơi tác nhân của bạn chạy trong môi trường sản xuất. Bạn cũng có thể triển khai lên Cloud Run hoặc bất kỳ môi trường thực thi container nào.

Vậy ADK là lớp hướng đến nhà phát triển. Gemini cung cấp trí thông minh bên dưới nó, và Vertex AI Agent Engine cung cấp một môi trường được quản lý bên trên nó. Bạn có thể sử dụng cả ba cùng nhau, hoặc chạy ADK cục bộ và triển khai ở nơi khác. Không có gì buộc bạn phải theo một con đường duy nhất.
Các khái niệm cốt lõi
Một vài khối xây dựng cơ bản bao gồm hầu hết những gì bạn sẽ viết.
Các tác nhân (Agents)
Đơn vị cơ bản là một tác nhân được hỗ trợ bởi LLM. Trong Python, bạn import nó từ google.adk.agents. Lớp này là LlmAgent, và Agent là một bí danh tiện lợi cho nó. Bạn cung cấp cho nó một mô hình, một tên, một chỉ dẫn định hình hành vi của nó và một danh sách các công cụ.
from google.adk.agents import Agent
def get_exchange_rate(base: str, target: str) -> dict:
"""Trả về tỷ giá hối đoái giữa hai loại tiền tệ."""
# gọi API FX thực của bạn ở đây
return {"base": base, "target": target, "rate": 1.08}
currency_agent = Agent(
name="currency_exchange_agent",
model="gemini-2.0-flash",
instruction="Bạn giúp người dùng chuyển đổi giữa các loại tiền tệ. Chỉ bám sát các sự thật.",
tools=[get_exchange_rate],
)
Đó là một tác nhân đơn lẻ đang hoạt động. Chỉ dẫn cho nó biết phải làm gì, và danh sách công cụ cho nó biết những gì nó có thể gọi.
Các công cụ (Tools)
Công cụ là cách một tác nhân thực hiện một điều gì đó ngoài việc tạo văn bản. Trong ADK, một hàm Python thuần túy là một công cụ. Tên hàm, gợi ý kiểu (type hints) và docstring cho mô hình biết khi nào và làm thế nào để gọi nó, vì vậy một docstring rõ ràng quan trọng hơn bạn nghĩ.
Ngoài các hàm của riêng bạn, ADK còn cung cấp các công cụ tích hợp sẵn như google_search và thực thi mã, và nó hỗ trợ Model Context Protocol (MCP) để kết nối các máy chủ công cụ bên ngoài. Bạn cũng có thể bao bọc các thư viện của bên thứ ba như LangChain hoặc LlamaIndex, hoặc sử dụng một tác nhân khác như một công cụ. Hầu hết các tác nhân cuối cùng đều gọi các REST API bên ngoài thông qua các công cụ này, đây chính là nơi kiểm thử và mô phỏng sẽ phát huy tác dụng sau này.
Hệ thống đa tác nhân
Một tác nhân đơn lẻ có thể đưa bạn đi xa, nhưng ADK được xây dựng cho các hệ thống phân cấp. Bạn kết hợp các tác nhân chuyên biệt thành một hệ thống lớn hơn và để một điều phối viên định tuyến công việc giữa chúng.

Framework cung cấp các tác nhân luồng công việc để kiểm soát có tính xác định: một SequentialAgent chạy các tác nhân con theo thứ tự, một ParallelAgent chạy chúng cùng lúc, và một LoopAgent lặp lại cho đến khi một điều kiện được đáp ứng. Kết hợp những điều này với định tuyến dựa trên LLM và bạn có thể xây dựng một tác nhân nghiên cứu phân tán công việc cho nhiều tác nhân con và hợp nhất kết quả của chúng.
Người chạy (Runners)
Bạn không gọi trực tiếp một tác nhân trong môi trường sản xuất. Một Runner là công cụ thực thi của ADK. Nó quản lý phiên, điều khiển luồng sự kiện, cập nhật trạng thái, gọi mô hình và điều phối các cuộc gọi công cụ. Trong quá trình phát triển, bạn có thể bỏ qua phần code rườm rà với CLI: adk run khởi chạy một phiên terminal tương tác, và adk web mở giao diện người dùng trình duyệt cục bộ để trò chuyện với tác nhân của bạn và kiểm tra từng bước.
Đánh giá và triển khai
ADK bao gồm một công cụ đánh giá để bạn có thể chấm điểm một tác nhân dựa trên quỹ đạo và phản hồi dự kiến, chứ không chỉ nhìn bằng mắt thường vào kết quả. Điều đó quan trọng vì hành vi của tác nhân sẽ thay đổi khi bạn thay đổi lời nhắc, công cụ hoặc mô hình.
Để triển khai, bạn có một con đường được quản lý và một con đường có thể di động. Vertex AI Agent Engine cung cấp cho bạn một môi trường chạy được quản lý hoàn toàn, có khả năng mở rộng với cơ sở hạ tầng được xử lý cho bạn. Nếu bạn muốn duy trì khả năng di động, hãy đóng gói tác nhân vào một container và gửi nó đến Cloud Run hoặc bất kỳ nền tảng container nào.
Một ví dụ cấp cao
Đây là hình dạng của một thiết lập đa tác nhân nhỏ. Một điều phối viên ủy quyền cho hai chuyên gia.
from google.adk.agents import Agent
flights = Agent(
name="flight_agent",
model="gemini-2.0-flash",
instruction="Tìm các lựa chọn chuyến bay cho tuyến đường và ngày của người dùng.",
tools=[search_flights], # hàm của bạn bao bọc một API chuyến bay
)
hotels = Agent(
name="hotel_agent",
model="gemini-2.0-flash",
instruction="Tìm các lựa chọn khách sạn gần điểm đến.",
tools=[search_hotels], # hàm của bạn bao bọc một API khách sạn
)
trip_planner = Agent(
name="trip_planner",
model="gemini-2.0-flash",
instruction="Lên kế hoạch chuyến đi. Ủy quyền việc tìm kiếm chuyến bay và khách sạn cho các tác nhân con của bạn.",
sub_agents=[flights, hotels],
)
Điều phối viên suy luận về yêu cầu và chuyển giao cho tác nhân con phù hợp. Mỗi tác nhân con gọi một API thực thông qua hàm công cụ của nó. Bạn chạy toàn bộ quá trình thông qua một Runner, hoặc kiểm thử nó tương tác với adk web.
ADK so với OpenAI Agents SDK
Cả hai đều là các framework tác nhân ưu tiên mã nguồn với công cụ, chuyển giao và truy vết. Sự khác biệt nằm ở sức hút của hệ sinh thái.
| Google ADK | OpenAI Agents SDK | |
|---|---|---|
| Mô hình mặc định | Gemini (Vertex AI) | Các mô hình OpenAI |
| Các mô hình khác | Vertex AI Model Garden, LiteLLM | LiteLLM và các mô hình khác |
| Ngôn ngữ | Python, Java, Go, TypeScript | Python, JavaScript/TypeScript |
| Đa tác nhân | Các tác nhân con cộng với tác nhân luồng công việc Sequential, Parallel, Loop | Các tác nhân làm công cụ và chuyển giao |
| Môi trường thực thi được quản lý | Vertex AI Agent Engine | Tự mang đến (Bring your own) |
| Giao thức công cụ | MCP, các công cụ tích hợp sẵn, các công cụ hàm | MCP, các công cụ hàm |
Nếu stack của bạn đã nằm trên Google Cloud, ADK cộng với Vertex AI là sự kết hợp tự nhiên. Nếu bạn ưu tiên OpenAI, OpenAI Agents SDK sẽ giữ bạn trong làn đường đó. Cả hai đều nói MCP, vì vậy các máy chủ công cụ có thể được chia sẻ.
Khi nào nên sử dụng ADK
Hãy sử dụng ADK khi:
- Bạn đang xây dựng trên Google Cloud và muốn Gemini cùng với một môi trường chạy được quản lý trong Vertex AI Agent Engine.
- Bạn cần điều phối đa tác nhân với kiểm soát trình tự, song song hoặc lặp rõ ràng.
- Bạn muốn tính năng đánh giá được tích hợp sẵn trong framework chứ không phải là một phần bổ sung sau này.
- Bạn dự kiến sẽ thay đổi mô hình, và bạn muốn LiteLLM và Vertex AI Model Garden làm lối thoát.
Bạn có thể bỏ qua nó nếu bạn kiên định trong một hệ sinh thái mô hình khác, hoặc nếu một lời nhắc duy nhất với một hoặc hai lệnh gọi hàm bao gồm toàn bộ trường hợp sử dụng của bạn. Một framework tác nhân thêm cấu trúc, và cấu trúc sẽ tốn chi phí khi công việc nhỏ.
Apidog phù hợp ở đâu: kiểm thử và mô phỏng các API mà tác nhân của bạn gọi
ADK điều phối tác nhân của bạn. Nó không kiểm thử các API bên ngoài mà tác nhân đó phụ thuộc vào, và đó là khoảng trống đáng để lấp đầy sớm.

Mỗi công cụ có ý nghĩa trong tác nhân của bạn đều gọi một thứ gì đó: một điểm cuối LLM, một API thanh toán, một microservice nội bộ, một nguồn dữ liệu của bên thứ ba. Khi một trong số đó trả về một định dạng không mong muốn, tác nhân của bạn suy luận dựa trên đầu vào sai và lỗi rất khó truy vết. Apidog là nơi bạn chốt hợp đồng đó trước khi nó gây rắc rối cho bạn. Nói rõ ràng: Apidog không phải là một framework tác nhân và không thay thế ADK. Nó nằm ở lớp thấp hơn, trên các API mà các công cụ của bạn gọi.
Một vài cách sử dụng cụ thể trong quá trình phát triển ADK:
- Mô phỏng các điểm cuối mà công cụ của bạn gọi. Dựng một API mô phỏng cho LLM hoặc điểm cuối REST của công cụ để bạn có thể phát triển và chạy tác nhân của mình mà không tốn token hoặc bị giới hạn tốc độ. Bạn kiểm soát các phản hồi, bao gồm cả các trường hợp lỗi mà tác nhân của bạn cần xử lý.
- Xác nhận định dạng phản hồi của công cụ. Sử dụng xác nhận API để xác nhận một điểm cuối công cụ trả về chính xác các trường mà tác nhân của bạn mong đợi. Nếu hợp đồng bị lệch, bạn sẽ phát hiện ra nó trong một bài kiểm thử, chứ không phải trong một bản ghi tác nhân bị lỗi.
- Quản lý khóa theo từng môi trường. Giữ các khóa dev, staging và production trong các môi trường Apidog để các lệnh gọi công cụ tương tự chạy trơn tru qua các giai đoạn.
Nếu bạn muốn một hướng dẫn chuyên sâu hơn dành riêng cho các tác nhân, hãy xem cách kiểm thử các lệnh gọi công cụ của tác nhân AI trước khi chúng gặp lỗi trong môi trường sản xuất. Bạn có thể tải xuống Apidog và mô phỏng một điểm cuối duy nhất chỉ trong vài phút.
Các câu hỏi thường gặp
Google ADK có miễn phí và mã nguồn mở không?
Có. ADK là mã nguồn mở theo giấy phép Apache trên kho lưu trữ GitHub, và bạn có thể chạy nó cục bộ mà không tốn chi phí. Bạn trả tiền cho các mô hình bạn gọi và cho bất kỳ môi trường chạy được quản lý nào bạn triển khai, chẳng hạn như Vertex AI Agent Engine. Bản thân framework là miễn phí.
ADK chỉ hoạt động với Gemini ư?
Không. ADK được tối ưu hóa cho Gemini và Vertex AI, nhưng nó không phụ thuộc vào mô hình. Thông qua Vertex AI Model Garden và LiteLLM, bạn có thể chạy các tác nhân trên Anthropic, Meta, Mistral và các nhà cung cấp khác. Gemini là mặc định, không phải là yêu cầu bắt buộc.
ADK hỗ trợ những ngôn ngữ nào?
Python là ngôn ngữ đầu tiên và vẫn là ngôn ngữ đầy đủ nhất. Google sau đó đã thêm Java, tiếp theo là hỗ trợ Go và TypeScript. Nếu bạn muốn có phạm vi tính năng rộng nhất hiện nay, Python là lựa chọn an toàn nhất.
Làm cách nào để kiểm thử các API mà tác nhân ADK của tôi phụ thuộc vào?
Kiểm thử chúng riêng biệt với tác nhân. Mô phỏng các điểm cuối LLM hoặc công cụ để tác nhân của bạn chạy mà không cần gọi trực tiếp, và xác nhận rằng mỗi phản hồi khớp với những gì tác nhân của bạn mong đợi. Apidog bao gồm cả hai, và hướng dẫn về cách kiểm thử ChatGPT API cho thấy cùng một mẫu cho một điểm cuối LLM mà các công cụ của bạn có thể gọi.
Kết luận
Google ADK cung cấp cho bạn một cách gọn gàng, hướng đến sản xuất để xây dựng các tác nhân và hệ thống đa tác nhân, với Gemini và Vertex AI luôn sẵn có nhưng các mô hình khác chỉ cách một lần thay đổi cấu hình. Bắt đầu với một tác nhân và một vài công cụ, dựa vào adk web để xem nó suy nghĩ, sau đó phát triển thành các tác nhân con và một môi trường chạy được quản lý khi công việc yêu cầu. Khi tác nhân của bạn phụ thuộc nhiều hơn vào các API bên ngoài, hãy coi các API đó là thứ bạn mô phỏng và xác nhận. Đó là lớp mà Apidog xử lý, và đó là nơi hành vi tác nhân không ổn định thường bắt đầu.
