
字节笔记本
2026年10月24日 · 约 9 分钟读完
Agent 框架选型指南:一张决策清单

本文是《从 0 写 Agent》系列第 51 章。这个系列基于开源项目 agents-go(OpenAI Agents SDK 的 Go 移植版),用 Go 从零实现一个生产级 Agent 运行时;本章讲「Agent 框架选型指南」。
Agent 框架不只 agents-go 和 LangChain,还有 CrewAI、AutoGen、agent-native、Pi 等。怎么选?
这一章给一个选型框架,帮你根据自己的场景做决策。
主流 Agent 框架速览
| 框架 | 语言 | 特点 | 适合 |
|---|---|---|---|
| agents-go | Go | OpenAI SDK 移植,最小显式 | Go 后端、生产部署 |
| LangChain/LangGraph | Python | 生态最大,状态图编排 | 快速接入、Python 团队 |
| CrewAI | Python | 角色扮演多 Agent | 模拟"团队协作"场景 |
| AutoGen(Microsoft) | Python | 多 Agent 对话 | 研究、复杂多 Agent |
| agent-native(Builder.io) | TypeScript | defineAction 多端复用 | Web/全栈 |
| openai-agents-python | Python | 官方 SDK(agents-go 的原版) | OpenAI 生态 |
| Claude Code | 闭源 | Anthropic 的编码 Agent | 编程(非框架) |
| Pi | 多语言 | 模型自由、极简内核 | 模型混用 |

选型的五个维度
维度一:语言
最重要的维度。 你的团队主力语言决定大方向:
- Go → agents-go(或自己写)
- Python → LangChain / CrewAI / AutoGen / openai-agents-python
- TypeScript → agent-native
- 多语言混用 → Pi(模型自由)
别逆语言选框架。 Go 团队硬上 LangChain(要跨语言调用),Python 团队硬上 agents-go(要学 Go),都痛苦。
维度二:场景
| 场景 | 推荐 |
|---|---|
| 编码助手 | Claude Code / Codex(成品)或 agents-go(自建) |
| 客服 | agents-go / LangChain |
| 数据分析 | LangChain(数据生态好)/ agents-go + MCP |
| 多 Agent 协作研究 | AutoGen / CrewAI |
| Web 应用内嵌 Agent | agent-native |
维度三:生产 vs 研究
- 生产部署 → agents-go(单二进制、类型安全)/ agent-native(Web 原生)
- 研究/实验 → AutoGen(灵活)/ CrewAI(快速试多 Agent)
- 快速原型 → LangChain(集成多,搭得快)
研究用的框架,不一定适合生产。 AutoGen 灵活但部署重;agents-go 刻板但好部署。
维度四:生态需求
- 要接大量第三方服务 → LangChain(几百个集成)
- 用 MCP 标准 → agents-go / openai-agents-python / 任何支持 MCP 的
- 自给自足 → agents-go(自己写工具)
MCP 是趋势,越来越多框架支持 MCP,工具能跨框架复用。选支持 MCP 的框架,未来不锁死。
维度五:控制粒度
- 要看到每一行 → agents-go(代码可读、循环显式)
- 要快速不用懂内部 → LangChain(
agent.invoke()搞定) - 要可视化配置 → agents-server(Web UI 配 Agent)
决策树
你的团队用什么语言?
├─ Go → agents-go
├─ Python → 你的需求?
│ ├─ 要最大生态 → LangChain
│ ├─ 要多 Agent 角色扮演 → CrewAI
│ ├─ 要多 Agent 研究 → AutoGen
│ └─ 要 OpenAI 官方 → openai-agents-python
├─ TypeScript → agent-native
└─ 混用/想自由 → Pi
附加判断:
├─ 生产部署重要? → 偏 agents-go / agent-native
├─ 要理解内部? → agents-go
├─ 要快速原型? → LangChain
└─ 要 MCP 生态? → 确认框架支持 MCP一个反直觉的建议:先自己写
读完这 50 章,你已经理解了 Agent 运行时。我的建议是,先试着自己写一个(参考第 1 章的 30 行循环),再选框架。
为什么?
- 你理解了内部,才知道框架的抽象在做什么,用 LangChain 时你知道
agent.invoke()底下是循环 - 你能判断框架的限制,知道哪里框架帮不了你,要自己补
- 你不被框架绑架,理解了原理,换框架成本低
框架是工具,不是信仰。 理解原理的人,能用任何框架;不理解原理的人,被框架困住。
不要做的事
别盲目追新
Agent 框架每月都在出新的。别看到"新框架"就换。 选一个,深入用,理解它。频繁换框架比用错框架更浪费。
别过度用框架
简单问题别用 Agent 框架(第 41 章讲过)。一个 API 调用能解决的,别套 Agent 循环。框架是减负的,不是增负的。
别忽视部署
很多人选框架只看"开发爽不爽",忽视"部署难不难"。Python 框架开发爽但部署重(依赖、环境)。Go 框架开发"糙"但部署爽(单二进制)。生产项目,部署成本要算进去。
结语:框架会变,原理不变
Agent 框架每年都在变,今天的 LangChain 明天可能被替代,今天的 agents-go 可能演化。但 Agent 的原理不变,循环调模型、工具执行、状态管理、多 Agent 协作。
这本系列教你的不是"怎么用 agents-go",而是"Agent 运行时的原理是什么"。 理解了原理:
- 用 agents-go,你知道每行干什么
- 换 LangChain,你知道它的抽象对应什么
- 框架出新版,你知道变化在哪
- 自己写一个,你知道从哪开始
这就是"从 0 写 Agent"给你的最大能力,理解原理,不被框架绑架。
全系列完结
51 章 + 4 附录,从最简循环到框架选型,你走完了"从 0 写 Agent"的完整旅程。
现在,你不仅能用任何 Agent 框架,更能理解它们、评判它们、甚至在需要时自己写一个。
这才是"从 0 写 Agent"的终极价值。
《从 0 写 Agent:用 Go 理解 AI Agent 运行时》全系列完。感谢读到这里。
如果你觉得这个系列有用,推荐:
- 动手用 agents-go 写一个真实 Agent(第 45-49 章的案例)
- 读 agents-go 源码对照本系列(附录 A 的源码地图)
- 读《企业级 Agent 平台工程》补"生产化"那块(附录 B)
- 关注 OpenAI Agents SDK 和 MCP 生态的最新进展
本文是《从 0 写 Agent》系列第 51 章,案例代码基于开源项目 agents-go(OpenAI Agents SDK 的 Go 移植版)。全系列目录见总览。

