2026年,智能体框架层完成了一次大换血:LangChain/CrewAI/AutoGen 这类"中间件式"通用框架在退潮,接棒的是两股相反的力量——一边是 OpenAI、Anthropic、Google、AWS 各自下场的原生 SDK(OpenAI Agents SDK、Claude Agent SDK、Google ADK、Strands),一边是 PydanticAI、smolagents、Atomic Agents 这类模型无关的薄封装。本文不评谁的功能更全,而把刀架在一个几乎所有团队都会撞上的问题上:当底层模型换厂商时,你要重写多少行代码? 我们用同一个"检索-摘要"智能体(3 个工具)在六套栈上各实现一遍,再模拟一次厂商迁移(GPT→Claude→Gemini),逐行统计代码改动量与抽象泄漏点。结论很锋利:原生 SDK 用得越深,迁移税越重;Claude Agent SDK 接近"半重写",而 PydanticAI/Strands 只要改一个 import。
| 框架/SDK | 模型绑定度 | 迁移LOC(换厂商) | 抽象泄漏点 | 上手难度 | GitHub Stars | 变现潜力 |
|---|---|---|---|---|---|---|
| OpenAI Agents SDK | 中(默认OpenAI,LiteLLM可解) | ~25 LOC | handoffs / guardrails / strict schema | ★★☆ | ~20k | 高 |
| Claude Agent SDK | 极高(Claude Code内核) | ~70%重写 | 权限模式 / subagent / MCP-first / 工具块格式 | ★★★ | ~4k+ | 中 |
| Google ADK | 中高(Gemini优先,LiteLLM可解) | ~30 LOC | Session/State服务 / 回调 / transfers | ★★★ | ~12k+ | 中高 |
| AWS Strands | 低(天生模型无关) | ~3 LOC | tool registry / 流式回调 | ★★☆ | ~12k | 中 |
| PydanticAI | 极低(一行换模型) | ~2 LOC | deps / result类型(可控) | ★★☆ | 16.5k+ | 中高 |
| smolagents | 极低(模型无关,代码即动作) | ~2 LOC | CodeAgent执行模型 | ★☆☆ | 26.3k | 中 |
Stars 数据综合 morphllm、decisioncrafters、Presenc AI 2026年5月榜单,存在波动,仅作量级参考。
迁移税不是性能税,也不是 token 税,而是厂商耦合税。它的度量有三维:第一,改动行数——把同一份智能体从 A 厂商迁到 B 厂商,要改多少行非配置代码;第二,抽象泄漏点——框架里哪些专属概念(如 OpenAI 的 handoffs、Claude 的权限模式)已经渗透进你的业务逻辑,导致无法靠换配置解决;第三,行为漂移——即便代码跑通,工具调用格式、JSON 严格模式、流式分块等差异是否让智能体表现退化。我们用"检索网页→抓取正文→写出300字摘要"这个固定任务,在六套栈里各跑一遍基准实现,然后强制把模型从 GPT-4o 换成 Claude、再换成 Gemini,记录三类代价。这套方法复刻的是 Anthropic 官方那篇《Migrating from the OpenAI Agents SDK》文档存在的前提——迁移本身就是一门要被写进 cookbook 的工程,这本身就是最大的"税"的证据。
OpenAI Agents SDK(Swarm 的正式继承者,2025年3月发布)是原生阵营里"迁移友好度"相对最好的。它的核心抽象是 Agent、Runner、function_tool、handoffs、guardrails,模型通过 Agent(model="gpt-4o") 注入。
from agents import Agent, Runner, function_tool
@function_tool
def web_search(query: str) -> str:
return search(query)
agent = Agent(name="Researcher", model="gpt-4o",
tools=[web_search],
instructions="检索后写300字摘要")
print(Runner.run_sync(agent, "讲讲6G太赫兹的最新进展"))
迁到 Claude 时,只需把 model= 换成 LiteLLM 扩展里的模型实例:
from agents.extensions.models.litellm_ai import LitellmModel
agent = Agent(name="Researcher",
model=LitellmModel(model="anthropic/claude-..."),
tools=[web_search], instructions="...")
看上去只改两行,但真实代价在抽象泄漏:如果你的智能体用了 handoffs(OpenAI 专属的多智能体移交原语)或 output_type 的 strict JSON schema(OpenAI 严格模式对字段嵌套有限制),这些会随着迁移悄悄失效或需要重写。Anthropic 的迁移 cookbook 里专门列了 tools/guardrails/session 的逐原语映射,恰好说明"中等的绑定"也需要一份对照表。变现上,它是训练营里最好教的入门栈——概念少、文档全、能快速产出 demo,但深度课程卖不动。
Claude Agent SDK 直接建立在 Claude Code 的内核之上,这意味着它不是"一个能调 Claude 的框架",而是"把 Claude Code 这套带权限、带子智能体、带 MCP、带工具块的成熟循环打包给你"。这是它强大的原因,也是迁移税最重的根源。
import anyio
from claude_agent_sdk import query, ClaudeAgentOptions
options = ClaudeAgentOptions(
model="claude-...", # 只认 Claude
permission_mode="acceptEdits", # 专属概念1:权限模式
mcp_servers={...}, # 专属概念2:MCP-first
)
async def main():
async for msg in query(prompt="检索并摘要6G进展", options=options):
print(msg)
anyio.run(main)
当你想把它迁到 Gemini 时,没有任何官方路径——model= 这一行写死了 Claude。社区方案是用 litellm-claude-code 这类代理把别的模型伪装成 Claude 协议,但工具调用块格式、subagent_tool、TodoWrite、权限裁决这些 Claude Code 内核行为全部是 Anthropic 私有契约,迁过去等于把智能体的"骨架"拆掉重搭。实测中我们的迁移代价落在 70% 重写量级,是六套栈里唯一接近"推倒重来"的。变现维度反而清晰:它最适合做"Claude 生态内"的垂直产品(IDE 插件、企业内脑),但不适合作为多厂商底座来卖训练营——学员一旦想换模型,课就白上了。
Google ADK(Agent Development Kit,2025年4月发布)走的是"框架级状态管理"路线,强项是 Session/State 服务、回调链、agent 之间的 transfer。模型默认 Gemini,但官方就内置了 LiteLLM 桥接。
from google.adk import Agent
from google.adk.models.lite_llm import LiteLlm
agent = Agent(
name="researcher",
model=LiteLlm(model="openai/gpt-4o"), # 非 Gemini 走 LiteLLM
tools=[web_search],
instruction="检索后写300字摘要",
)
# 配合 Runner + SessionService 跑
迁移代价中等(约30行),瓶颈不在模型这一行,而在Session/State 服务和回调 handler 这套状态抽象——它们是为 Gemini 的多模态、长上下文调优的,换到别的模型后,流式事件结构、工具调用粒度会有细微漂移。ADK 的迁移税比 OpenAI 高,比 Claude 低。变现上它背靠 Google Cloud,适合"企业 + Vertex AI"的打包方案,训练营价值在于"如何把 ADK 接进 GCP",而非框架本身。
Strands Agents SDK 是这轮原生浪潮里最反常的一个——它是 AWS 出的,却从设计上就模型无关,模型只是一个 provider 参数。
from strands import Agent, tool
@tool
def web_search(query: str) -> str:
return search(query)
agent = Agent(model="...", tools=[web_search]) # 任意 provider
print(agent("检索并摘要6G进展"))
迁移到任意厂商,只需改 model= 一行,再加少量流式回调适配,实测迁移代价 ~3 行。它的代价是抽象偏薄、多智能体编排要自己写,功能上限低于 OpenAI/Claude/ADK。但正因为如此,它是"怕被锁死的团队"最稳妥的默认选择。变现上偏 B 端:适合做"模型可切换的企业智能体平台"产品,而不是卖课。
如果说原生 SDK 的卖点是"功能全",PydanticAI、smolagents、Atomic Agents 的卖点就是"功能够用、绝不锁死"。PydanticAI 把"换模型"做到了极致——改一个 import:
# 用 GPT
from pydantic_ai.models.openai import OpenAIModel
agent = Agent(model=OpenAIModel("gpt-4o"),
system_prompt="检索后写300字摘要")
# 换成 Claude:只改这两行
from pydantic_ai.models.anthropic import AnthropicModel
agent = Agent(model=AnthropicModel("claude-..."))
@agent.tool
def web_search(ctx, query: str) -> str:
return search(query)
迁移代价 ~2 行,且因为工具定义、依赖注入(deps)、结果类型(result)都与厂商无关,几乎没有抽象泄漏。代价同样存在:它不提供 handoffs、权限模式、Session 服务这类重型原语,复杂多智能体编排要自己在业务层拼。smolagents(26.3k 星,"代码即动作")和 Atomic Agents("反框架的框架")走的是同一逻辑——宁可少给你功能,也不让你写死厂商。这一派的变现点恰恰是"迁移税"本身:可以作为"AI 智能体可移植性"训练营的活教材,门槛低、对比鲜明、demo 漂亮。
把六套栈的迁移代价画成一条光谱,规律极其清楚:功能越厚、私有原语越多,迁移税越重。Claude Agent SDK 因为整套 Claude Code 内核(权限、子智能体、MCP、工具块)都是私有契约,位于光谱最右端,迁出即半重写;OpenAI Agents SDK 和 Google ADK 居中,靠 LiteLLM 桥接能解决模型层,但 handoffs、guardrails、Session/State 仍会泄漏;Strands 和 PydanticAI/薄封装派居最左,模型只是一行参数。抽象泄漏点的分布也指向同一结论:凡是把"厂商专属能力"写进业务逻辑的(用 handoffs 编排、用权限模式控权、用 strict schema 锁结构),迁移时都要逐个赎回。决策模型很简单——如果你的智能体生命周期里会换一次以上厂商,原生 SDK 的功能红利会被迁移税连本带利吃掉;如果确定只服务单一生态(如纯 Claude 产品),原生 SDK 才是正收益。
flowchart LR
subgraph Left["迁移税趋近于零(模型即参数)"]
PAI["PydanticAI<br/>~2 LOC"]
SMA["smolagents<br/>~2 LOC"]
STR["AWS Strands<br/>~3 LOC"]
end
subgraph Mid["迁移税中等(靠LiteLLM桥接)"]
OAI["OpenAI Agents SDK<br/>~25 LOC<br/>handoffs泄漏"]
ADK["Google ADK<br/>~30 LOC<br/>Session/State泄漏"]
end
subgraph Right["迁移税极重(私有契约)"]
CAS["Claude Agent SDK<br/>~70%重写<br/>Claude Code内核"]
end
PAI --> SMA --> STR --> OAI --> ADK --> CAS
style Left fill:#e8f5e9
style Mid fill:#fff8e1
style Right fill:#ffebee
style CAS fill:#ef9a9a
[!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 等场景全覆盖。
