AI Agent 框架怎么选?不要先看热度,先看你到底要控制什么

AI Agent 框架选型不要先看热度,而要看控制权、状态、流程、RAG、云生态和生产可控性。本文从 LangGraph、ADK、Microsoft Agent Framework、OpenAI Agents SDK、LlamaIndex、Haystack、Pydantic AI、Mastra、CrewAI 等框架出发,给出务实的落地路径。

作者 技术调研

AI Agent 框架选型路径图

这两年 AI Agent 框架冒出来很多。

Google 有 ADK,OpenAI 有 Agents SDK,Microsoft 从 AutoGen、Semantic Kernel 走到 Agent Framework,LangChain 推 LangGraph,CrewAI、LlamaIndex、Pydantic AI、Haystack、Mastra、Agno、Strands 也都在各自生态里快速迭代。

如果只看官网介绍,每个框架都很强:都支持工具调用,都能做多 Agent,都有 workflow、memory、observability、eval、MCP。问题是,真正做项目时,你不可能都用。

我看完这些框架后,最明确的判断是:

AI Agent 框架选型的核心,不是哪个最火,而是你希望把多少控制权交给模型,多少控制权留在工程系统里。

很多团队一上来就问“哪个 Agent 框架最好”。这个问题本身就不太对。

更好的问题是:

你要做的是一个工具型助手,还是一个长期运行的业务流程?
你是否需要状态恢复?
是否需要人工审批?
是否需要跨系统调用?
是否需要企业知识库?
是否要在云厂商生态里部署和治理?
失败后能不能重放和定位?

这些问题回答清楚,框架选择会简单很多。

先说一个基本判断:很多场景其实不需要复杂 Agent 框架

如果你的需求只是“用户问一句,模型调用一两个工具,然后返回答案”,不需要急着引入复杂框架。

用模型 API、function calling、结构化输出,再加上你自己的权限、日志、审计和状态管理,通常就够了。

Agent 框架真正开始有价值,是在你遇到这些问题之后:

任务要跑很多步;
中途可能失败,需要恢复;
不同步骤要走不同分支;
某些动作必须人工确认;
需要多工具、多数据源、多角色协作;
线上结果必须可观测、可评估、可回放。

换句话说,框架不是为了让 demo 更炫,而是为了让不确定的 LLM 行为进入可控的工程系统。

“图工作流”为什么会成为核心能力

现在很多 Agent 框架都在强调 graph、workflow、state graph。

这里的“图”不是知识图谱,而是执行流程图。

一个 Agent 不再只是:

模型思考一下,调用工具,再思考一下,再调用工具,最后回答。

而是被拆成一组明确的节点和边:

用户输入进入哪个节点;
什么时候做检索;
什么时候调用工具;
什么时候并行查多个系统;
什么时候让模型判断;
什么时候重试;
什么时候暂停等待人工审批;
什么时候结束。

节点是执行步骤,边是流转规则,状态是贯穿全过程的数据。

这就是 LangGraph、Google ADK、Microsoft Agent Framework 这类框架强调“图”的原因。

Agent 负责局部智能判断,图负责全局流程约束。

这个分工非常重要。完全放任模型自由行动,demo 里看起来很智能,生产里很容易不可控。完全写死流程,又失去了 LLM 的灵活性。图工作流的价值,是把两者结合起来:关键路径由工程师设计,局部判断交给模型。

AI Agent 控制权边界示意图

第一类:复杂流程和生产可控性,优先看 LangGraph、ADK、Microsoft Agent Framework

如果你要做的是可靠的多步业务流程,比如 AI 运维、自动化工单处理、销售线索研究、复杂审批、跨系统调查,这类场景不能只靠一个自由循环的 Agent。

你需要显式状态、分支、重试、checkpoint、human-in-the-loop、trace 和评测。

这时最值得优先看的,是三类框架。

LangGraph 的优势是跨云中立、生态成熟、图式工作流表达能力强。它适合需要明确控制流程、保留状态、做复杂分支和循环的 Agent 系统。缺点也明显:学习曲线比轻量 SDK 高,LangChain 生态历史包袱不少,用不好容易抽象过度。

Google ADK 适合已经在 Gemini、Vertex AI、Google Cloud 上建设 Agent 的团队。它现在已经不只是一个 Python SDK,而是覆盖 Python、TypeScript、Go、Java、Kotlin 的 Agent 开发框架,强调多 Agent、图工作流、评测、可观测性、会话、记忆、MCP/A2A 和云部署。缺点是生态还在快速成熟,非 Google Cloud 团队要评估绑定成本。

Microsoft Agent Framework 是 Microsoft 新一代路线,整合了 AutoGen 和 Semantic Kernel 的方向,支持 Python 和 .NET,强调 session state、type safety、middleware、telemetry、graph workflow、checkpoint 和人工介入。对于 Azure、.NET、企业治理环境,它会是很自然的选择。但它也比较新,老的 AutoGen/Semantic Kernel 用户需要判断迁移节奏。

如果没有强云绑定,我通常会把 LangGraph 放进第一候选。如果你已经明显站在 Google Cloud 或 Azure 生态里,就没有必要假装中立,直接评估 ADK 或 Microsoft Agent Framework 更务实。

第二类:OpenAI 生态内快速落地,优先看 OpenAI Agents SDK

OpenAI Agents SDK 的定位很清楚:轻量、官方、少数核心原语。

它提供 agent loop、handoff、guardrails、tracing、MCP 等能力,和 OpenAI Responses/API、工具调用、沙箱能力衔接得很顺。

如果你的模型主要用 OpenAI,业务主要是工具型助手,流程还没有复杂到需要显式图编排,那它比一上来用重框架更合适。

它的短板也很清楚:跨模型、跨云、中立性不如 LangGraph 或 Pydantic AI;复杂工作流仍然需要你自己设计。它适合快速把 Agent 跑起来,而不是替你解决所有生产编排问题。

我的建议是:OpenAI 生态内的小到中型 Agent,先用 OpenAI Agents SDK。等你真的遇到复杂状态、长任务恢复、多分支审批,再考虑引入 LangGraph 这类编排层。

第三类:RAG 和知识库 Agent,优先看 LlamaIndex、Haystack

很多所谓 Agent 项目,本质上不是“多 Agent 协作”,而是“如何让模型可靠使用企业知识”。

这时通用 Agent 框架不一定是第一选择。你更需要好的文档摄取、切分、索引、检索、rerank、引用、权限过滤和评测。

LlamaIndex 更偏开发者生态和快速构建。它在文档、索引、连接器、RAG、Agentic RAG 上积累很深,也支持 workflows 和 agents。做企业知识库、研究助手、文档问答、报告生成,LlamaIndex 很顺手。

Haystack 更偏企业级 AI pipeline。它的模块化 pipeline、检索、RAG、文档处理、序列化和部署能力更适合生产型知识应用,尤其是私有化、本地化和企业搜索场景。

这里有一个常见组合:LlamaIndex 或 Haystack 负责数据和检索,LangGraph、ADK 或 Microsoft Agent Framework 负责流程编排。

不要把检索逻辑全塞进 prompt,也不要让 Agent 自己临场决定怎么查知识库。RAG 是数据工程,不只是 prompt 工程。

第四类:Python 后端业务系统,Pydantic AI 很值得看

Pydantic AI 是一个容易被低估的框架。

它不像 CrewAI 那样强调多角色,也不像 LangGraph 那样强调图。它更像是“FastAPI 风格的 Agent 框架”:类型安全、依赖注入、结构化输出、工具 schema、测试和评测体验。

如果你的团队本来就是 Python 后端,想把 Agent 当成业务服务的一部分,而不是独立的魔法系统,Pydantic AI 很合适。

它的优势不是让 demo 看起来复杂,而是让 Agent 代码更像正常工程代码。输入输出有类型,依赖可以注入,结果可以校验,评测可以沉淀。

缺点是它不是最强的多 Agent 图编排框架。如果后续流程复杂,可以把 Pydantic AI 的 Agent 放到 LangGraph 节点里使用。

第五类:TypeScript 和 Web 产品团队,看 Mastra 和 Vercel AI SDK

如果你的团队主要是 TypeScript、Node、Next.js,Python 生态再强也未必是最合适的。

Vercel AI SDK 适合聊天 UI、streaming、工具调用、schema 校验和轻量多步调用。它更像 AI 应用 SDK,而不是完整 Agent runtime。做产品里的 AI 助手,它非常顺。

Mastra 更像 TypeScript-first 的 Agent 框架,包含 agents、workflows、RAG、memory、MCP、evals、observability、Studio/Server。对于想在 Web 产品里系统化建设 Agent 能力的团队,Mastra 比 Vercel AI SDK 更完整。

我的判断是:简单 AI 产品交互用 Vercel AI SDK;如果开始需要 memory、workflow、eval 和运行时管理,再看 Mastra。

第六类:多角色协作原型,CrewAI 上手最快,但不要神化“角色”

CrewAI 的心智模型很直观:给不同 Agent 分配角色、任务和协作方式。

研究员、分析师、写作者、审稿人,这类场景用 CrewAI 做原型非常快。它的 Crews 和 Flows 对业务人员也容易理解。

但我要泼一点冷水:角色设定不是可靠性的来源。

你让一个 Agent 叫“资深架构师”,不代表它真的具备架构判断;你让另一个 Agent 叫“审稿人”,也不代表它一定能发现问题。

生产系统里,真正提高可靠性的仍然是评测、trace、权限、状态、重试、审批和明确的流程控制。

所以 CrewAI 适合快速验证多角色协作思路,但如果要进入生产,不要只依赖角色扮演式 prompt。

第七类:云厂商生态,Google 看 ADK,Azure 看 Microsoft,AWS 看 Strands

云厂商正在把 Agent 框架变成平台入口。

Google 的 ADK 连接 Gemini、Vertex AI、Agent Engine、Cloud Run、GKE 等生态。Microsoft 的 Agent Framework 连接 Azure AI Foundry、OpenAI、.NET 和企业遥测治理。AWS 的 Strands Agents 则面向 Bedrock、AgentCore、Lambda、Fargate、EKS 等部署路径。

如果你已经深度绑定某个云,选型不必过度追求“理论中立”。

Agent 的生产化离不开身份权限、网络、日志、审计、部署、密钥、成本和监控。这些东西天然和云平台相关。框架能不能顺着你的云原生治理体系走,往往比它的 demo API 是否优雅更重要。

AI Agent 框架选型路由图

不建议按 GitHub star 或“多 Agent 能力”选型

Agent 框架现在变化太快,star 只能说明热度,不能说明生产可靠性。

我也不建议因为一个框架能做多 Agent,就默认它更高级。

很多业务流程本质上是确定性工作流,加少量 LLM 判断。比如:

先查用户信息;
再查订单;
再判断是否满足退款规则;
高风险时转人工;
最后写入工单。

这类流程不需要五个 Agent 互相聊天。你需要的是一个清晰的 workflow、一组可靠工具、明确权限和完整审计。

多 Agent 真正有价值的地方,是任务天然需要不同视角、并行调查、互相校验,或者不同能力边界。否则,多 Agent 很容易把简单问题复杂化。

我的默认落地路径

如果今天让我从零开始做一个生产级 Agent 系统,我不会一上来选最重的框架。

第一步,我会先把 agent contract 定义清楚:输入是什么,输出是什么,能调用哪些工具,权限边界在哪里,失败时怎么返回。

第二步,选一个轻量框架跑通 PoC。OpenAI 生态用 OpenAI Agents SDK;Python 后端用 Pydantic AI;TypeScript 产品用 Vercel AI SDK 或 Mastra;角色协作原型用 CrewAI。

第三步,建立最小评测集。不要只测 happy path,要测越权请求、脏数据、工具失败、长上下文、模型不确定时的行为。

第四步,当流程变复杂后,引入显式编排。跨云中立选 LangGraph,Google Cloud 选 ADK,Azure/.NET 选 Microsoft Agent Framework,AWS 选 Strands。

第五步,如果核心是知识库和文档,单独引入 LlamaIndex 或 Haystack 做数据层,不要把 RAG 做成一堆 prompt 拼接。

这条路径的好处是,早期不会被框架绑死,后期也不会在生产可控性上裸奔。

最后的判断

AI Agent 框架的竞争,表面上是 API 设计和生态竞争,底层其实是工程控制权的竞争。

简单 Agent 需要的是低摩擦。复杂 Agent 需要的是可恢复、可观测、可审批、可评估。知识型 Agent 需要的是数据工程。企业级 Agent 需要的是治理和部署体系。

所以选型时不要问“哪个框架最强”。

要问:

我需要控制哪些状态?
哪些步骤必须确定?
哪些判断可以交给模型?
失败后能不能恢复?
输出能不能评估?
危险动作有没有审批?
未来团队能不能维护?

把这些问题问清楚,Agent 框架就不再是一个热闹的清单,而会变成很具体的工程选择。

我的一句话建议是:

轻量助手先选轻框架,复杂流程选图编排,知识库场景选 RAG 框架,云厂商绑定场景顺着云生态走。不要为了“Agent 感”牺牲工程可控性。

延伸路径

继续看解决方案和产品对比

如果你正在做监控、可观测性或故障定位相关选型,建议从解决方案和产品对比继续往下看。

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云