如果你關注 AI 智能體開發領域,一定聽過 LangChain、CrewAI、AutoGen 這些名字。但 2025 年 Google 開源的 ADK(Agent Development Kit) 正在改變遊戲規則——它是第一個將 MCP 協定原生支援、圖執行引擎和 Gemini 深度整合三者合一的框架。
本文不是泛泛的功能介紹,而是一次深度實測。我們將從 MCP 工具整合、工作流編排、動態路由三個核心能力入手,用真實程式碼驗證 Google ADK 到底能不能取代你手頭的智能體框架。
一、Google ADK 是什麼?為什麼值得關注?
Google ADK 2.0 是 Google 開源的程式碼優先(code-first)AI 智能體開發框架,用純 Python 定義智能體行為、工具呼叫和多智能體編排邏輯。
與 LangChain / CrewAI / AutoGen 的本質區別
| 維度 | Google ADK 2.0 | LangChain | CrewAI | AutoGen |
|---|---|---|---|---|
| 設計理念 | 程式碼優先 + 圖執行引擎 | 鏈式呼叫 + YAML 設定 | 角色扮演 + 任務委派 | 多智能體對話 |
| MCP 支援 | ✅ 原生內建 | ⚠️ 需第三方外掛 | ❌ 無 | ❌ 無 |
| 工作流編排 | ✅ 圖結構(順序/並行/迴圈/條件) | ⚠️ LangGraph 單獨使用 | ⚠️ 順序執行為主 | ⚠️ 對話驅動 |
| 模型綁定 | Gemini 優先,支援任意模型 | 模型無關 | 模型無關 | 模型無關 |
| Google 生態 | ✅ Vertex AI / Cloud Run / BigQuery 原生 | ❌ | ❌ | ❌ |
| 類型安全 | ✅ 完整 Python 類型提示 | ⚠️ 部分 | ⚠️ 弱 | ⚠️ 弱 |
一句話總結:如果你已經決定用 Gemini 作為主力模型,或者需要 MCP 協定連接外部工具,Google ADK 是目前最順滑的選擇。如果你需要模型無關的靈活性,LangChain 仍然是更成熟的選擇。
二、核心特性深度解析
2.1 MCP 協定原生支援——告別膠水程式碼
MCP(Model Context Protocol)是 Anthropic 提出的開放協定,讓 AI 模型以標準化方式呼叫外部工具和資料來源。Google ADK 是第一個原生內建 MCP 客戶端的主流框架。
from google.adk.tools.mcp_tools import MCPToolset
from google.adk import Agent
# ✅ ADK 方式:一行接入 MCP 伺服器
mcp_tools = MCPToolset.from_url("http://localhost:3000")
agent = Agent(
name="mcp_agent",
model="gemini-2.5-flash",
instruction="你是一個可以使用外部工具的助手。",
tools=[mcp_tools],
)
2.2 工作流編排——圖執行引擎
ADK 2.0 最強大的能力是 Workflow 類——一個基於圖結構的執行引擎,支援四種編排模式:
順序執行
from google.adk import Agent, Workflow
researcher = Agent(
name="researcher",
model="gemini-2.5-flash",
instruction="蒐集使用者問題的相關資訊,返回關鍵事實。",
)
writer = Agent(
name="writer",
model="gemini-2.5-flash",
instruction="根據提供的事實撰寫一篇簡潔的文章。",
)
reviewer = Agent(
name="reviewer",
model="gemini-2.5-flash",
instruction="審查文章品質,修正錯誤,最佳化表達。",
)
pipeline = Workflow(
name="content_pipeline",
edges=[("START", researcher, writer, reviewer)],
)
並行執行(扇出/扇入)
sentiment_agent = Agent(name="sentiment", instruction="分析情感傾向。")
topic_agent = Agent(name="topic", instruction="提取核心話題。")
entity_agent = Agent(name="entity", instruction="識別關鍵實體。")
summary_agent = Agent(name="summary", instruction="匯總以上分析結果。")
parallel_workflow = Workflow(
name="parallel_analysis",
edges=[
("START", sentiment_agent, topic_agent, entity_agent), # 扇出
(sentiment_agent, topic_agent, entity_agent, summary_agent), # 扇入
],
)
2.3 LLM 驅動的動態路由
coordinator = Agent(
name="coordinator",
model="gemini-2.5-flash",
instruction="""你是一個任務協調者。根據使用者需求,將任務委派給合適的專家:
- 資料分析問題 → data_analyst
- 程式碼相關問題 → code_expert
- 文件撰寫需求 → writer
直接輸出委派目標和原因。""",
sub_agents=[data_analyst, code_expert, writer],
)
三、快速上手教學
3.1 安裝
python3 -m venv adk-env && source adk-env/bin/activate
pip install "google-adk[cli]"
export GEMINI_API_KEY="your-key-here"
3.2 實戰:建構多步驟工作流智能體
from google.adk import Agent, Workflow
from google.adk.tools.mcp_tools import MCPToolset
search_tools = MCPToolset.from_url("http://localhost:3001")
collector = Agent(
name="collector",
model="gemini-2.5-flash",
instruction="根據使用者主題搜尋 3-5 個關鍵資訊點,以 JSON 列表返回。",
tools=[search_tools],
)
analyst = Agent(
name="analyst",
model="gemini-2.5-flash",
instruction="分析蒐集到的資訊,提取關鍵洞察和趨勢。",
)
writer = Agent(
name="writer",
model="gemini-2.5-flash",
instruction="將分析結果整理為結構化報告,包含摘要、正文、結論。",
)
reviewer = Agent(
name="reviewer",
model="gemini-2.5-flash",
instruction="審查報告:檢查事實準確性、邏輯連貫性、語言品質。給出修改建議。",
)
root_agent = Workflow(
name="research_pipeline",
edges=[("START", collector, analyst, writer, reviewer)],
)
四、與競品的詳細比較
vs LangChain + LangGraph
LangGraph 是 LangChain 生態系統中的工作流解決方案,功能上與 ADK Workflow 類似。核心區別:ADK 是一個框架搞定智能體 + 工具 + 工作流 + MCP,而 LangChain 需要組合多個套件,設定更複雜,但生態更豐富。
vs CrewAI
CrewAI 擅長「角色扮演」式的多智能體協作,上手極快。但在以下場景不如 ADK:需要確定性執行流程、需要 MCP 工具整合、需要條件分支和迴圈。
五、適用場景與侷限性
最適合的場景
- Google Cloud 技術堆疊:Vertex AI、Cloud Run、BigQuery 的原生整合
- MCP 工具生態:需要接入大量外部工具,且希望用標準化協定管理
- 可預測的工作流:客服管道、資料處理流水線、內容產生鏈
- 混合編排:部分步驟需要確定性(圖結構),部分步驟需要靈活性(LLM 路由)
當前侷限性
- Gemini 綁定傾向:雖然支援其他模型,但最佳體驗仍需 Gemini API
- 社群生態尚在成長:相比 LangChain 的數千個整合,ADK 的第三方工具還較少
- 文件不夠完善:部分進階功能的文件還在補全中
- 僅 Python / Java / Go:JavaScript/TypeScript 版本剛起步
六、FAQ
Q1: Google ADK 是免費的嗎?
A: ADK 框架本身完全免費開源(Apache 2.0 協定)。但使用 Gemini 模型需要 Google AI API 費用,有免費額度可用。你也可以接入其他模型來避免費用。
Q2: ADK 支援哪些 LLM 模型?
A: 原生最佳化了 Gemini 2.5 系列(Flash / Pro)。透過自訂 Model Provider,也可以接入 OpenAI GPT-4o、Anthropic Claude、本機 Ollama 模型等。
Q3: MCP 工具在哪裡找?
A: MCP 協定已有數千個社群貢獻的伺服器實現。可以在 MCP Servers GitHub 找到官方倉庫,涵蓋檔案系統、資料庫、瀏覽器自動化、Slack、GitHub 等常見場景。
Q4: ADK 工作流和 LangGraph 有什麼區別?
A: 功能上類似,都是圖結構執行引擎。區別在於 ADK 是內建能力(零設定),LangGraph 需要額外安裝和設定。ADK 的 API 更簡潔,LangGraph 的視覺化除錯工具更成熟。
Q5: 生產環境部署推薦什麼方案?
A: 最簡方案是 Docker + Cloud Run。ADK 提供了內建的 Runner.serve() 方法啟動 HTTP 服務,配合 Dockerfile 即可容器化部署。大規模場景推薦 Vertex AI Agent Engine,自動處理擴縮容和監控。
七、總結評價
Google ADK 2.0 是目前對 MCP 協定支援最好的智能體框架,沒有之一。它的工作流編排能力——順序、並行、迴圈、條件路由——讓複雜的智能體管道變得可預測、可測試。
推薦指數:⭐⭐⭐⭐(4/5)
扣分項:對非 Gemini 模型的支援還不夠平滑,社群生態相比 LangChain 仍有差距。
一句話推薦:如果你用 Gemini + 需要 MCP + 需要確定性工作流,ADK 是當前最優解。否則,LangChain 仍然是更通用的選擇。
相關資源: