首页 › ai-agents › 原厂即绑死:四款Agent SDK深拆

原厂即绑死:四大厂商智能体SDK横评与锁定税实测

概述

2025至2026年,AI Agent框架赛道发生了一次范式更迭:曾经由 LangChain、CrewAI、AutoGen、LangGraph 等社区框架主导的版图,被各家模型厂商亲自下场"围猎"。OpenAI 于2025年3月发布 Agents SDK,Google 紧随其后推出 ADK 并在2026年4月迭代到2.0,Anthropic 将 Claude Code SDK 正式更名为 Claude Agent SDK,AWS 则在2025年5月开源了 Strands Agents 并于2026年发布1.0生产就绪版。一时间,"原厂SDK"成了2026年智能体开发的事实起点。本文以"同一个智能体在四栈上各跑一遍"为基准,从核心抽象、Agent Loop、工具协议、锁定程度、上手成本与变现潜力六个维度深拆这四款厂商原生SDK,重点回答一个问题:原厂即最优,还是原厂即绑死?

四栈总览对比

维度 OpenAI Agents SDK Google ADK Claude Agent SDK AWS Strands Agents
首发/版本 2025-03,batteries-included 2025-04,2026-04 发布 2.0 2025(前身为 Claude Code SDK) 2025-05 开源,2026 发布 1.0
语言 Python / TypeScript Python 优先(adk-python) Python / TypeScript Python / TypeScript
模型绑定 OpenAI 原生(Responses API) Gemini 优先,可接其他 Claude 原生 模型无关(核心卖点)
协作抽象 Handoffs(显式交接) LlmAgent + 子智能体 + A2A Subagents(子智能体) 多智能体编排 + A2A
工具协议 function_tool / MCP FunctionTool / MCP 内置工具 + MCP @tool / MCP
安全抽象 Guardrails(闸门) 内置 eval Hooks + 权限双轨 权限策略 + hooks
可观测 原生 Tracing Vertex AI 集成 内置事件流 OpenTelemetry
锁定程度 高(OpenAI 模型) 高(GCP 栈) 高(Claude 模型) 低(Apache-2.0,模型无关)
部署 自托管 Vertex Agent Engine 自托管 / Bedrock 自托管 / AWS

一、OpenAI Agents SDK:Handoffs + Guardrails + Tracing 三件套

OpenAI Agents SDK 的设计哲学是"开箱即用"(batteries-included)。它把多智能体系统的三个最痛的点直接做成了一等公民:Handoffs 解决智能体之间的显式交接,Guardrails 解决输入输出的安全闸门,Tracing 解决可观测性。这三件套让一个中等复杂度的客服分流系统,从原型到可观测只需几十行代码。

from agents import Agent, Runner, function_tool, InputGuardrail, GuardrailFunctionOutput

@function_tool
def get_weather(city: str) -> str:
    return f"{city}: 晴 25°C"

async def ban_keywords(ctx, agent, input):
    blocked = "竞品" in str(input)
    return GuardrailFunctionOutput(
        output_info={"blocked": blocked}, tripwire_triggered=blocked)

billing = Agent(name="计费助手", instructions="处理账单问题")
agent = Agent(
    name="分流助手",
    instructions="你是客服总入口",
    tools=[get_weather],
    handoffs=[billing],                          # 显式交接
    input_guardrails=[InputGuardrail(guardrail_function=ban_keywords)],
)
result = Runner.run_sync(agent, "帮我查账单")

优点:Handoffs 让多智能体的控制流对开发者可见、可调试,不像 LangGraph 的图那么隐式;Guardrails 既可并行跑也可阻塞执行;Tracing 在 OpenAI Dashboard 里开箱可视化。缺点:协议层对 OpenAI 的 Responses API 有依赖倾向,非 OpenAI 模型需要适配;Guardrails 是独立于工具权限的第二套闸门,和"批准非授权"那套语义并存时容易产生职责重叠。变现评估:最适合做"电商客服分流训练营"——业务场景清晰、Demo可复用、Tracing 截图天然是营销素材。

二、Google ADK:四件套栈与 Python-first 的工程美学

Google 把 Agent 看作一个完整的栈而非单点框架。这套栈由四块拼图组成:ADK 负责构建智能体、MCP 负责工具与上下文、A2A 负责智能体间通信、Vertex Agent Engine 负责托管运行。ADK 是 code-first 的 Python 工具包(google/adk-python),同时提供浏览器可视化编排器,兼顾硬核工程师与低代码用户。

from google.adk.agents import LlmAgent
from google.adk.runners import Runner
from google.adk.sessions import InMemorySessionService
from google.adk.tools import FunctionTool

def get_weather(city: str) -> dict:
    return {"city": city, "weather": "晴"}

agent = LlmAgent(
    name="weather_agent",
    model="gemini-2.5-flash",
    instruction="你是天气助手",
    tools=[FunctionTool(get_weather)],
)
session_service = InMemorySessionService()      # 会话与状态原生管理
runner = Runner(agent=agent, app_name="app", session_service=session_service)

优点:会话(Session)与状态(State)是一等公民,长对话、跨智能体状态传递无需自己造轮子;A2A 协议让跨进程、跨厂商的智能体协作成为可能;adk eval 提供了内置评测,与"做对一次不算会"的评测诉求天然契合。缺点:四件套虽互补却也强耦合 GCP 生态,A2A + Vertex Agent Engine 的完整体验离不开 Google Cloud;Gemini 优先意味着换模型的边际成本被低估。变现评估:适合"GCP + 智能体"复合训练营,客单价高但获客窄;企业版可走 Vertex 私有部署话术。

三、Claude Agent SDK:Hooks 与 Permission 的双轨制

Claude Agent SDK(前身为 Claude Code SDK)的独特性在于它自带一个真实的执行环境——内置了文件系统读写、Bash 执行、计算机操控等"重工具",这让它的定位更接近"可编程的 Claude Code"而非通用框架。它的两大控制抽象是 Hooks 和 Permission,二者各管一摊。

from claude_agent_sdk import query, ClaudeAgentOptions

def pre_tool_use_hook(tool_name, tool_input):
    if tool_name == "Bash" and "rm -rf" in tool_input.get("command", ""):
        return {"decision": "block", "reason": "禁止递归删除"}
    return {"decision": "approve"}      # Hook 不询问模型,直接裁决

options = ClaudeAgentOptions(
    system_prompt="你是代码助手",
    allowed_tools=["Read", "Write", "Bash"],
    permission_mode="default",
    hooks={"PreToolUse": pre_tool_use_hook},
)
async for message in query(prompt="读 README 并总结", options=options):
    ...

这里有一个关键认知差:Permission 系统会让模型/用户授权,而 Hooks 不会询问任何人——它是确定性的回调。这意味着真正的"硬闸门"必须用 Hooks 实现,而 Permission 只是软约束。优点:Subagents 原生支持任务委派;Hooks 让 PreToolUse/PostToolUse 的拦截能力极强,适合做需要确定性安全边界的代码智能体;Computer Use 能力在四栈中独一份。缺点:内置重工具意味着更高的风险面("Bash Bypass"类问题是社区反复讨论的坑);绑定 Claude 模型,换栈成本不低。变现评估:最适合"DevOps / 代码智能体"方向,Hooks 的确定性是卖给企业的核心卖点。

四、AWS Strands Agents:Model-Driven Loop 与模型无关的逆袭

在四款厂商原生SDK中,Strands 是最反直觉的一个:它由 AWS 出品,却把"模型无关"作为第一卖点,采用 Apache-2.0 协议开源。Strands 的核心是 model-driven loop——不是开发者写编排逻辑,而是把工具列表交给模型,由模型在每一轮自己决定调用哪个工具、何时停止。

from strands import Agent, tool

@tool
def get_weather(city: str) -> str:
    return f"{city}: 晴 25°C"

# 默认走 AWS Bedrock,也可换任意 provider
agent = Agent(tools=[get_weather], system_prompt="你是天气助手")
result = agent("北京天气如何")        # 模型驱动整个循环

# 模型无关示例:换成本地 Ollama
from strands.models import OllamaModel
local_agent = Agent(model=OllamaModel(model="llama3"), tools=[get_weather])

优点:代码量极低(@tool 装饰器 + 一行调用),心智负担最小;strands-agents/tools 仓库提供社区工具集;1.0 版本补齐了多智能体编排与 A2A 支持,并内置 OpenTelemetry 可观测。缺点:把控制权交给模型意味着"停止键即谎言"的风险更依赖模型的判断力;工具过载时("三十即断崖")退化更隐蔽;AWS 原生集成虽好,但脱离 AWS 后的部分能力需要自行补齐。变现评估:最适合"模型无关 / 本地化部署"训练营,能讲"不被任何厂商锁定"的故事,在中立技术受众中接受度最高。

五、同一智能体跨四栈:抽象层深度的真实差异

最有说服力的横评不是读文档,而是"用同一个智能体在四栈上各跑一遍"。社区已有开发者(如 turion.ai)做过这项实验,结论高度一致:四款SDK的差异不在能不能跑通,而在抽象层把多少控制权暴露给开发者。

graph TD
    A[同一智能体需求] --> B[OpenAI Agents SDK]
    A --> C[Google ADK]
    A --> D[Claude Agent SDK]
    A --> E[AWS Strands]
    B --> B1["显式 Handoffs<br/>开发者掌控控制流"]
    C --> C1["Session/State 内建<br/>开发者掌控状态"]
    D --> D1["Hooks 拦截<br/>开发者掌控安全边界"]
    E --> E1["Model-Driven Loop<br/>模型掌控控制流"]
    B1 --> F{控制权归属}
    C1 --> F
    D1 --> F
    E1 --> F
    F -->|开发者可见| G["可调试性强<br/>但代码量高"]
    F -->|模型自治| H["代码量低<br/>但行为不可预测性高"]
    style B1 fill:#e8f4f8
    style C1 fill:#e8f4f8
    style D1 fill:#e8f4f8
    style E1 fill:#fde8e8

OpenAI 的 Handoffs 和 ADK 的 Session 把"控制流"和"状态"显式化,调试友好但样板代码多;Claude 的 Hooks 把"安全边界"确定性化;Strands 则把"决策"完全交给模型,代码最短但最不可预测。这个差异直接决定了选型:你信任的是自己写的控制流,还是模型的判断力? 在强合规、高风险场景,前者的可控性溢价远超后者的简洁性。

六、锁定税:模型无关性 vs 原厂绑定的真实成本

"原厂即绑死"这句话需要拆开看。锁定其实分两层:模型锁定和栈锁定。OpenAI 与 Claude SDK 的锁定主要在模型层(Responses API / Anthropic 模型特性);ADK 的锁定更隐蔽——它绑定的是整个 GCP 工程栈(Vertex、Agent Engine、A2A 网关);Strands 是唯一在两层都保持中立的:Apache-2.0 协议 + 模型无关,理论上能同时跑 Bedrock、OpenAI、Ollama、本地模型。

flowchart LR
    subgraph 锁定程度
    direction TB
    O["OpenAI Agents SDK<br/>模型锁定: 高<br/>栈锁定: 中"]
    C["Claude Agent SDK<br/>模型锁定: 高<br/>栈锁定: 低"]
    G["Google ADK<br/>模型锁定: 中<br/>栈锁定: 高(GCP)"]
    S["AWS Strands<br/>模型锁定: 低<br/>栈锁定: 低"]
    end
    O -.绑定.-> OAI[OpenAI Responses API]
    C -.绑定.-> ANT[Claude 模型]
    G -.绑定.-> GCP[GCP + Vertex + A2A]
    S -.可选.-> ANY[任意 Provider]
    style S fill:#d4edda
    style G fill:#fff3cd
    style O fill:#fde8e8
    style C fill:#fde8e8

但这不等于"Strands 必胜"。原厂绑定的"税"背后,是原厂集成的"红利":OpenAI SDK 的 Tracing、ADK 的 Vertex 托管、Claude SDK 的 Computer Use、Strands 的 Bedrock 计费——这些都是社区框架要自己拼的能力。真正的决策不是"要不要锁定",而是"锁定换来的红利,是否覆盖未来迁移的税"。如果业务深度依赖某厂商的独家能力(如 Claude 的长上下文代码理解、Gemini 的多模态),锁定就是值得的投资;如果核心价值在业务逻辑而非模型特性,Strands 的中立性就是长期保险。

七、上手成本与变现潜力评估

从"安装到第一个能跑的智能体"的时间成本看,四栈呈现明显的梯度:Strands < OpenAI < Claude < ADK。Strands 的 @tool + Agent(prompt) 两行即可跑通;OpenAI 的 Handoffs 三件套需要理解三个概念;Claude SDK 要先理清 Hooks/Permission 双轨;ADK 因为引入 Session/Runner/Agent Engine 三层,学习曲线最陡。

变现潜力则呈现相反趋势:ADK > Claude > OpenAI > Strands。ADK 客单价最高(GCP 企业市场),Claude SDK 的 DevOps 方向溢价好(Hooks 确定性卖点),OpenAI SDK 受众最广(流量红利),Strands 因"中立"反而难讲差异化高客单故事——它更适合作为"信任基建"而非"高溢价产品"。

训练营方向 推荐 SDK 客单价 受众广度 差异化卖点
电商客服分流 OpenAI Agents SDK 中 高 Handoffs + Tracing 可视化
GCP 企业智能体 Google ADK 高 中 四件套栈 + Vertex 托管
DevOps / 代码智能体 Claude Agent SDK 高 中 Hooks 确定性 + Computer Use
模型无关 / 本地部署 AWS Strands 中 中高 不被锁定 + 本地化

八、选型决策树:场景化推荐

不要问"哪个最好",要问"你的信任锚点在哪"。如果你的业务逻辑复杂、控制流需要可调试,选 OpenAI(Handoffs 可见)或 ADK(Session 可控);如果你的安全边界是硬约束,选 Claude(Hooks 确定性);如果你最怕被锁定、要支持多模型或本地部署,选 Strands;如果你只想最快验证想法,Strands 同样是最低门槛起点。

一个务实的组合策略是"外层 Strands + 内层原厂":用 Strands 的 model-driven loop 做快速原型和模型对比,验证通过后,对性能/成本敏感的核心智能体下沉到对应原厂 SDK 享受集成红利。这样既保住了"不被绑死"的保险,又拿到了"原厂即最优"的红利——锁定税与红利之间,本就不是非此即彼的单选题。


参考来源

  1. Claude Agents SDK vs. OpenAI Agents SDK vs. Google ADK(composio.dev) — 三大厂商 SDK 的实战对比,覆盖核心抽象与上手成本
  2. Google ADK vs OpenAI vs Claude Agent SDK: The 2026 Three-Way Comparison(turion.ai) — 用同一个智能体在三栈上各跑一遍的横评实验
  3. Claude Agent SDK vs OpenAI vs Strands vs Google ADK Compared(nomadlab.cc) — 四款厂商 SDK 的架构、锁定程度、内置工具对比
  4. Introducing Strands Agents, an Open Source AI Agents SDK(aws.amazon.com) — AWS 官方对 Strands 模型无关、model-driven loop 的发布说明
  5. Google's Agent Stack in Action: ADK, A2A, MCP(codelabs.developers.google.com) — Google 四件套栈(ADK+MCP+A2A+Vertex)的官方实操教程
  6. Intercept and control agent behavior with hooks(code.claude.com) — Claude Agent SDK Hooks 与 Permission 双轨制的官方文档

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入