Google ADK 是什么?21.7K 星的谷歌开源 Agent 开发套件,一套概念写五种语言

Google ADK 是什么?21.7K 星的谷歌开源 Agent 开发套件,一套概念写五种语言

Google ADK 是什么?21.7K 星的谷歌开源 Agent 开发套件,一套概念写五种语言

导语

横向 Agent 平台这个系列写下来,Make、Zapier、Dify、Flowise、CrewAI、AutoGen 都有专篇了,一直缺谷歌。Google ADK(Agent Development Kit)是谷歌 2025 年开源的 Agent 开发套件,如今主仓库 google/adk-python 已经 21.7K 星,10 月 2 日刚发 v2.11.0,更新密度相当高。它跟”拖节点、连线”那批平台不是一回事:ADK 是 code-first,Agent 就是代码里的一个对象,冲着正经写工程、要往生产环境推的团队去的。

项目介绍

出身很干净:Google 官方出品,Apache-2.0 协议,主仓库 google/adk-python(21.7K 星、4.1K fork),配套的 adk-java 1.7K 星、adk-js 1.4K 星,文档站是 google.github.io/adk-docs,全部持续更新中。

第一个卖点是五种语言一套概念:Python、TypeScript、Go、Java、Kotlin,核心名词完全对齐:Agent(带 instruction 和 model)、Tool、Runner、Session、Event。Java 换成 builder 写法,其余几乎照搬。这一点对多语言团队很实在,后端写 Go 或 Java 的同事不用被迫改写 Python。

能力清单拉出来是这样:

  • 多代理编排:子代理委托,顺序 / 循环 / 并行三种模板工作流,ADK 2.0 新增 graph workflows,把确定性代码和模型推理织成有向图,路径可控、结果可预期;
  • 模型不锁死:Gemini 之外,官方接了 Claude、OpenAI、Ollama、vLLM、LiteLLM,本地模型一样能跑;
  • MCP 双向:工具可以调用 MCP server,Agent 自己也能暴露成 MCP server 给别的程序调;
  • A2A 互操作:配套的 A2A 协议仓库 26.1K 星,专门解决不同框架写的代理之间怎么对话;
  • 工具与调试:function / OpenAPI / Google Search 联网工具,adk web 里带会话管理、状态查看、事件回放,Python 版还有拖拽式 Visual Builder。

和同系列的 CrewAI、AutoGen 比,ADK 更像”带标准件的框架”:那两家给的是 Agent 的组织方式:角色、团队、对话剧本;ADK 给的是运行时,Runner 负责跑事件循环,Session 负责记状态和事件,评估、日志、指标、链路追踪都长在框架里,不用自己再攒一套。

横向对比同期项目:LangGraph 42.9K 星、CrewAI 59.4K 星、AutoGen 61.3K 星。ADK 星数不是最高,但它发版最勤,背后是 Gemini 和 Google Cloud 整条部署链路,这条别的框架给不了。

Google ADK 单 Agent 运行链路架构图
ADK 运行链路:adk web / CLI 提交请求 → Runner 跑事件循环 → LlmAgent 调模型与工具,Session 记状态,跨框架走 A2A。

上手

python3 -m venv .venv && source .venv/bin/activate
pip install google-adk        # 要求 Python 3.10+
export GEMINI_API_KEY=xxx     # Google AI Studio 控制台免费领
adk web                       # 浏览器里调试,带会话 / 状态 / 事件面板
adk run my_agent              # 或者直接在终端里对话

Agent 本体就这么点代码:

from google.adk.agents import Agent
from google.adk.tools import google_search

agent = Agent(
    name="researcher",
    model="gemini-flash-latest",
    instruction="你是个认真的资料检索员,先搜索再回答",
    tools=[google_search],
)

目录约定是 my_agent/__init__.py 里导出 agent,adk web 会自动扫到并加载。真正上线时别拿 adk web 顶,官方明说它只用于开发调试,生产走 agents-cli 标准部署,或者打成容器丢到 Cloud Run / GKE,也可以直接用 Google 托管的 Agent Runtime。

会话和状态是 ADK 里最容易被低估的部分:Session 自动记录每一轮事件,adk run --save_session 能把上下文存下来接着聊,回放和状态检查也都在 adk web 里直接点。评估同样不靠人肉截图,adk eval 配测试用例能直接跑在 CI 里,官方还提供用户模拟(user simulation),让模型自己造对话当回归用例。

实话

  • code-first 的另一面是没有开箱即用的后台、权限体系和多人协作,前端和管理面得自己搭。只想拖拽快速验证的话,Dify、Flowise 那条路顺手得多。
  • 文档默认站在 Google Cloud 的立场上写,想纯本地部署或接国产模型,得自己拿 LiteLLM、Ollama 当路由,实际配置量比宣传的多。
  • 生态还年轻:第三方教程、现成组件比 LangGraph 少一截,文档全英文且改版频繁,中文资料跟不上版本号,翻到旧接口的坑得自己踩。
  • 什么时候选它很具体:团队是写代码的、已经或打算上 GCP、需要 MCP / A2A 互操作、要评估与可观测这一整套。四条凑不齐两条,就别为了”谷歌出品”硬上。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注