AI Agent 开发(25):框架横向对比

QuibblerAgentQuibblerAgent 2026-10-25 约 17 分钟 3 次阅读

到第 24 篇为止,这个系列的主角始终是 LangGraph:State 设计、控制流、人机协同、持久化、流式,八篇核心加 RAG 与 MCP 一路深潜。深潜有代价——视角变窄,手里拿着锤子,看什么都像钉子。本篇是系列第 25 篇、第五模块“进阶架构”的中篇,把镜头拉回行业高度:2026 年 10 月,主流 Agent 框架各自站在哪里,以及那个更扎心的问题——什么时候不该用 LangGraph。

本文按“对比维度 → 四家主力逐一过招 → 新锐三家 → 选型决策树 → MCP 对框架锁定的削弱 → 总结与练习”组织。丑话说在前面:这是一篇有立场的对比文,和稀泥的结论不值得你花 20 分钟阅读。

1、对比维度先行

对比文最常见的死法是变成粉丝骂战:各自甩出 hello world 行数与 star 数,然后不欢而散。解药是先钉死维度,再让框架上桌。先看格局——2026 年 10 月七位选手的版本与生态位,正好呼应第 1 篇的地图:

框架 当前版本 生态位
LangGraph 1.2.16 生产级状态工作流,控制粒度最细
CrewAI 1.15.28 角色协作式多 Agent,原型最快
OpenAI Agents SDK 0.24.0 极简循环,OpenAI 生态最短路径
微软 Agent Framework 1.0 AutoGen 与 Semantic Kernel 合流
Pydantic AI 2.59.0 类型优先,模型无关
Google ADK 2.0 Gemini 生态配套,多云宣称
Mastra 高频发版 TypeScript 全栈全家桶

版本号本身已是第一条信息:LangGraph 与 Pydantic AI 进入稳定大版本时代,微软 Agent Framework 刚过 1.0 GA,OpenAI Agents SDK 发布一年半仍停在 0.x——七家不在同一条成熟度刻度上,这比任何功能清单都诚实。

评判维度定为七个,每个对应选型时必问的一句话:

维度 核心问题 为什么重要
抽象层级 库、框架还是平台 决定要学多少概念
控制权 循环谁写、状态谁管 出事时能不能调试
状态管理 持久化与恢复是否内建 生产系统的生死线
工具生态 MCP 是否一等公民 工具资产能否复用
可观测 有无内建 tracing 排错成本
部署 自托管还是绑定平台 供应商依赖程度
许可证 MIT/Apache 还是其他 商用合规

七个维度里,控制权的分量最重。框架替你做的事越多,上手越快;但你交出去的每一分控制权,都会在生产事故的深夜连本带利地讨回来。后文各家的差异,大部分都能折算到这一维上。

顺手拿抽象层级套一遍七家:LangGraph、Pydantic AI、OpenAI Agents SDK 是库级,嵌进你自己的应用进程,架构主动权还在你手里;CrewAI 与微软 Agent Framework 是框架级,自带一整套运行约定与工程脚手架;Google ADK 与 Mastra 则往平台延伸,SDK 之上还有托管与部署配套。层级越低越灵活,越高开箱越快——这条分界与控制权维度完全同构。

2、LangGraph 控制权天花板

LangGraph 的方法论是图即代码:流程建模为显式的图,节点是步骤,条件边管分支回环,Checkpointer 让执行随时可暂停、可恢复。第 12 篇那个“杀掉进程、会话原地满血复活”的实验,就是这套哲学的极限展示。近况也稳:1.2.0 给节点执行加了超时、错误恢复与优雅停机,写作时最新 1.2.16(2026 年 10 月中)——大版本稳定后更新全在打磨生产细节,这是“生产优先”该有的样子,细节见 LangGraph 官方文档。

代价同样真实。这个系列用了整整八篇才讲完它的核心面(第 6 到 13 篇),学习曲线不是传言。所以判断要旗帜鲜明:不该用 LangGraph 的场景,恰恰是大多数简单场景——流程是直线(一次检索一次生成)、循环只有一跳(一问一调一返回)、不需要中断与回放,这些用第 2 篇的 create_agent 甚至裸 while 循环就够了,上图纯属过度工程。LangGraph 的入场券是复杂度:状态要可见、流程要分支回环、执行要可中断可回放。付得起,它是控制权的天花板;付不起,它是纯负担。

3、CrewAI 原型速度的代价

CrewAI 的隐喻是剧组:Agent 是演员(role、goal、backstory 三件套),Task 是剧本,Crew 把两者装在一起。十行代码跑通“研究员写稿、编辑审稿”的多角色协作,这个上手速度至今没有对手。生态同样是硬通货:GitHub 4.7 万余 star,最新 1.15.28(2026 年 10 月中),定位已从“角色扮演多 Agent”改口为“企业级 Agent 构建与运行时”,可视化编排器还能把拖拽出的流程导出为 Python。文档见 CrewAI 官方文档。

代价浓缩成两个字:让渡。CrewAI 的执行循环、Agent 间通信、任务编排全由框架代管——你配置角色,它决定怎么跑。demo 阶段这是福利,生产阶段这是负债:第二个 Agent 为什么拿到了奇怪的记忆?答案在框架源码里,不在你的代码里。模型层由 LiteLLM 统一代理,llm="openai/gpt-5" 一个字符串就能切厂商,省心,但依赖链也长了一截。

我的用法建议:CrewAI 适合两件事——48 小时验证一个多 Agent 想法是否成立、给非技术同事演示协作概念。验证通过要上生产时,先问自己敢不敢把流程黑盒交给别人;不少团队的实际路径是 CrewAI 出原型、LangGraph 重写上线,这笔重写成本从第一天就该进预算。

4、OpenAI Agents SDK 极简与绑定

OpenAI Agents SDK 的哲学是把 Agent 缩到不能再小:核心只有 Agent、Handoff、Guardrail 三个原语,Session 管会话,Runner 跑循环,Python 与 TypeScript 双语言。20 分钟能学完全部概念,极简到什么程度看代码:

from agents import Agent, Runner

agent = Agent(
    name="技术助手",
    instructions="你是严谨的中文技术助手。",
)

result = Runner.run_sync(agent, "MCP 和 Function Calling 是一回事吗?")
print(result.final_output)

工具就是带类型注解与 docstring 的普通函数,挂进 tools 参数即可,与第 5 篇的 @tool 同构。Handoff 让 Agent 交接像函数调用一样直白,Guardrail 把输入输出校验做成内建模式——这两样在别家往往要自己拼。文档见 OpenAI Agents SDK 官方文档。

两个必须说破的事实。其一,2026 年 10 月版本停在 0.24.0——发布一年半没到 1.0,版本号本身就是工程信号:API 还会动,升级成本要计入预算。其二,“不绑定 OpenAI”只对了一半:模型层确实无关,任意兼容端点都能接;但 Tracing、沙箱、托管运行这些增值能力全指向 OpenAI 平台——SDK 免费,生态引力收钱。纯 OpenAI 栈的个人项目它是终点,多厂商生产系统请三思。

5、微软 Agent Framework 合流

微软的动作是把两代资产合流:AutoGen 贡献对话式多 Agent 的研究成果,Semantic Kernel 贡献企业级流程编排,2025 年 10 月合并为 Agent Framework;2026 年 2 月 19 日 RC,4 月初 .NET 与 Python 双端 1.0 GA。GA 公告里最重的一个词是长期支持承诺——七家里唯一敢白纸黑字写 LTS 的,对企业采购来说,这一条顶十条功能对比。时间线详见微软官方公告。

GA 后仍在加码:Build 2026 发布 Agent Harness 与 GitHub Copilot SDK 集成,Harness 已于 8 月 GA,Go 语言进入公开预览。它的编排核心 Workflows 是显式、确定性的状态机,与 LangGraph 的图模型神似,再加上 Azure 的合规与托管体系——微软栈企业把 Agent 嵌进现有系统,几乎不用犹豫。反向判断同样干脆:.NET 是一等公民,Python 略显二线;非微软技术栈的团队没有任何理由选它——不会有人为了一个 Agent 框架,把整个技术栈搬进 Azure。

6、新锐三家

三家新锐各占一个生态位。Pydantic AI 出自 FastAPI 团队,2026 年 6 月 23 日 v2.0 稳定,最新 2.59.0(10 月 20 日),发布节奏七家里最凶。立场写在名字里:类型优先——依赖注入、结构化输出、工具参数全用类型系统表达,v2 把 instructions、tools、hooks 统一成 capability 原语,且模型完全无关。它与 LangGraph 生态位重叠,选择本质是口味之争:要显式的类型,还是显式的图。团队是 FastAPI 背景、讨厌魔法——选它不会错,Pydantic AI 官网一行直达。

Google ADK(Agent Development Kit)2026 年完成多语言布局:Python 2.0、Java 1.0 GA(3 月底)、Go 2.0,并与 Gemini Enterprise Agent Platform 深度集成。多云与模型无关是官方口径,也部分属实——但一等公民永远是 Gemini 与 Vertex AI。已定 Google Cloud 的团队用它顺路;没定的团队选它,等于放着别家的原生集成不用,单买它一层抽象税。入口见 Google ADK 官网。

Mastra 是 TypeScript 阵营的答案:Apache 2.0 协议,agents、workflows、memory、workspaces 全家桶,2026 年中 star 破 2.4 万,发版极其密集,细节见 Mastra 官网。它承包的是“TS 全栈团队的一站式框架”——前端团队不用跨语言,就能把 Agent 织进 Next.js 应用。Python 团队则不必跨语言追它,生态位上,有它就够了。

7、选型决策树

把前六节压成一张决策树,从场景出发往下问,第一个命中的分支就是答案:

你的 Agent 是什么场景?
├─ 个人项目 / 技术验证
│   ├─ 模型只用 OpenAI ──────────▶ OpenAI Agents SDK
│   └─ 想要多角色协作演示 ────────▶ CrewAI
├─ 要上生产的复杂系统
│   ├─ Python 栈 ────────────────▶ LangGraph
│   ├─ TypeScript 全栈 ──────────▶ Mastra
│   └─ 团队有类型洁癖 ────────────▶ Pydantic AI
├─ 企业 .NET / Azure / Copilot ──▶ 微软 Agent Framework
└─ 已定 Google Cloud ────────────▶ Google ADK

注意 LangGraph 出现在“生产的复杂系统”分支里,而不是树根上——它是复杂系统的默认答案,不是所有项目的起点。第 1 篇说过“原型期选什么都行,上线前认真考虑 LangGraph”,现在你可以拿着七个维度的证据去验证这句话了。

提醒:选型讨论别超过一周。省下的时间拿去搭评测集——框架差异是小事,能持续证明 Agent 靠不靠谱的评测基建才是大事。

8、MCP 削弱框架锁定

最后一个战略问题:选错框架的代价有多大?第 19 到 21 篇讲透的 MCP 在这里给出了一半答案。工具层标准化之后,你写的每个 MCP Server——查库的、读文件的、调 GitHub 的——对七个框架一视同仁,LangGraph、CrewAI、Agents SDK、微软 Agent Framework 全部原生支持接入,工具资产已经不属于任何框架。

把切换成本拆开看会更清楚:模型层本就无关,各家都有统一接口;工具层被 MCP 抹平;观测层 OpenTelemetry 渐成标配。真正锁死你的只剩编排层与状态层——业务流程写在哪套 API 里,迁移就疼在哪里。结论反直觉但重要:2026 年做框架选型,心理负担应该比一年前低一个量级;只要守住“工具 MCP 化、评测独立化”两条底线,框架就退化为一个可更换的零件。

9、总结

一句话带走七家:LangGraph 用学习曲线换控制权,是复杂生产系统的天花板;CrewAI 原型最快,代价是流程黑盒;OpenAI Agents SDK 极简优雅,但仍在 0.x 且生态引力向 OpenAI;微软 Agent Framework 靠 LTS 承诺通吃企业 .NET;Pydantic AI 给类型洁癖者;Google ADK 服务 Gemini 生态;Mastra 承包 TS 全栈。比结论更长寿的是三条原则:维度比功能重要,控制权比行数重要,MCP 让工具资产保值。

练习:用 CrewAI 重写第 2 篇的 hello-agent,亲身体会“让渡”二字。uv add crewai 之后:

from crewai import Agent, Crew, Task
from crewai.tools import tool
from datetime import datetime

@tool("查询当前时间")
def get_current_time() -> str:
    """返回当前的本地时间"""
    return datetime.now().strftime("%Y-%m-%d %H:%M")

assistant = Agent(
    role="技术助手",
    goal="准确回答用户的问题",
    backstory="严谨的工程师,回答前先查证",
    tools=[get_current_time],
    allow_delegation=False,
)

task = Task(
    description="现在几点了?",
    expected_output="一句话报时",
    agent=assistant,
)

print(Crew(agents=[assistant], tasks=[task]).kickoff().raw)

对照第 2 篇找三处不同:工具注册从 LangChain 的 @tool 换成 CrewAI 自家的装饰器,思路一致、约定不同;Agent 不再是“模型加工具”的显式组装,而是 role、goal、backstory 的戏剧化人设,模型默认由 LiteLLM 代理;再给 Crew 加 verbose=True 跑一遍,盯着它的执行日志——你会想念 LangSmith 每步可视化的确定感,那一刻你会真正理解“控制权”三个字值多少钱。

对于正在选型的团队,建议先用一周按第 7 节的决策树落子,同时把工具全部 MCP 化——无论最终选谁,这笔投资永不过时。下一篇离开框架之争,看前沿 Agent 形态:Deep Research、Computer Use 与代码 Agent 是怎么长出来的。

相关推荐

Hermes Agent 详解:自进化学习型 AI 代理
Agent

Hermes Agent 详解:自进化学习型 AI 代理

Hermes Agent 详解:自进化学习型 AI 代理Hermes Agent 是由 Nous Research 于 2026 年 2 月开源的自主 AI 代理框架,其核心定位是"与你共同成长的智能体"。与传统的 IDE 编程助手或单一 API 聊天机器人不同,Hermes 运行在你的服务器上,能够记住所学内容,运行时间越长能力越强。它采用 MIT 开源许可,支持 Linux、macOS 和 W

393
Hermes Agent:与你一起成长的开源 AI 代理
Agent

Hermes Agent:与你一起成长的开源 AI 代理

Hermes Agent:与你一起成长的开源 AI 代理大多数 AI 助手是"健忘的租客"——换个窗口就失忆、换个平台就重学、干过的活不留下任何沉淀。Nous Research 出品的 Hermes Agent 反其道而行,口号是"The Agent That Grows With You"(与你一起成长的代理):它是一个开源(MIT)、自托管的 AI 代理,具备持久记忆(学习你的项目、自动生成技

322
speech-to-speech 详解:HuggingFace 的开源语音 Agent 流水线
AI

speech-to-speech 详解:HuggingFace 的开源语音 Agent 流水线

speech-to-speech 详解:HuggingFace 的开源语音 Agent 流水线语音 Agent 的"全开源"路线一直有个尴尬:框架开源了,模型却离不开云端 API。huggingface/speech-to-speech 把这条路走通了:VAD → STT → LLM → TTS 四段低延迟流水线,每个组件都可换成开源模型本地跑——Apple Silicon 一台 Mac 就能撑起

264