Agent 框架 2026:为什么大家都在从"链"迁移到"图"

Agent 框架 2026:为什么大家都在从"链"迁移到"图"

2024 年做 Agent,标准操作是用 LangChain 的 AgentExecutor:定义工具、写 prompt、跑一个 ReAct 循环。模型思考→调工具→拿结果→再思考→输出。链式执行,一步接一步。

2025 年底开始,越来越多的生产项目在迁移到 LangGraph、AutoGen 这类"图结构"的框架。LangChain 自己也把 AgentExecutor 标记为 deprecated,让用户切到 LangGraph。

这个转变不是追新——链式架构有几个实际痛点,到了复杂场景绕不过去。

链的问题出在哪

一个链式 Agent 的执行流程是线性的:输入 → 步骤1 → 步骤2 → … → 输出。即使中间有工具调用和循环,本质上是一条直线往前走。

问题一:没法回退。 模型在步骤 3 发现步骤 1 的判断错了,想回去重来。链式结构做不到,只能从头跑一遍。在多步推理任务里,这个代价很高。

问题二:没法并行。 如果步骤 2 和步骤 3 之间没有依赖关系,理论上可以同时跑。但链式结构只能串行,白白浪费时间。一个需要查三个数据源的 Agent,链式执行要查完一个再查下一个。

问题三:没法暂停。 有些场景需要人工审批。比如 Agent 要发一封邮件,发之前需要用户确认。链式结构里,中断执行再恢复很麻烦——你得把整个上下文序列化存起来,等用户操作完再反序列化继续。

问题四:错误恢复成本高。 链在第 8 步挂了,你想从第 7 步重试。但链没有"检查点"的概念,只能从第 1 步重来。如果每一步都涉及 API 调用和费用,这个浪费很实在。

图结构解决了什么

LangGraph 的做法是把 Agent 的控制流定义为一个有向图(StateGraph)。每个节点是一个操作(调模型、调工具、做判断),边是节点之间的转移条件。

from langgraph.graph import StateGraph

graph = StateGraph(AgentState)
graph.add_node("classify", classify_request)
graph.add_node("simple_answer", call_small_model)
graph.add_node("deep_reason", call_large_model)
graph.add_node("human_review", wait_for_human)

graph.add_edge("classify", "simple_answer", condition=is_simple)
graph.add_edge("classify", "deep_reason", condition=is_complex)
graph.add_edge("deep_reason", "human_review", condition=needs_approval)
graph.add_edge("human_review", "deep_reason")  # 回退重新推理

几个关键能力:

环(Cycle)。图里可以有环,节点能回到之前的节点。Agent 发现推理错误,可以回退到分类节点重新走一遍,不用从头开始。

分支和并行。一个节点的输出可以同时走向多个节点。查三个数据源的任务,三个查询节点并行执行,结果汇合后再往下走。

持久化检查点。图的每个状态可以存到 PostgreSQL 或 Redis 里。中断了从最近的检查点恢复,不用重跑。这对长时间运行的任务和人工审批场景特别有用。

人机协作(HITL)。在图的任意位置插入一个"等待人类"的节点。执行到这里自动暂停,等用户操作完再继续。这在链式结构里是个难题,在图结构里很自然。

2026 年的框架格局

目前主流的 Agent 框架大致分成几个阵营:

LangGraph(LangChain 团队)。18.5k Star,日下载量 307k。图结构的代表,Python 生态最成熟。优点是灵活、可控、有完整的持久化和可观测能力。缺点是学习曲线比 LangChain 陡——你需要理解状态机和图的概念,不像以前几行代码就能跑。

CrewAI。37.9k Star,日下载量 45k。主打"角色扮演"式的多 Agent 协作:你定义几个角色(研究员、写手、审核员),给每个角色分配任务和工具,它们之间自动协调。适合内容生成、研究报告这类场景。上手快,但深度定制不如 LangGraph。

AutoGen(微软)。49.2k Star。企业背景,支持异步事件驱动的多 Agent 对话。文档比较厚,API 变动过几次,但微软在持续投入。适合已经在微软生态里的团队。

OpenAI Agents SDK。OpenAI 官方出品,和 Responses API 深度绑定。内置了工具调用、路由、Handoff(Agent 间转交)等功能。如果你全栈 OpenAI,这是最简单的选择。但锁死了提供商——想用 Claude 或开源模型做 Agent,这个 SDK 帮不了你。

Agno。32.9k Star,主打性能——号称 Agent 实例化速度是 LangGraph 的一万倍。适合需要大量轻量 Agent 并发的场景。社区还在早期。

选哪个:取决于你的约束

如果让我推荐一个通用选择,2026 年 2 月这个时间点,LangGraph 是最稳妥的。社区活跃、生产案例多、和 LangSmith 配合的可观测性也不错。

但"通用推荐"的价值有限,更实际的判断方式是看你的约束条件:

你的 Agent 需要人工审批节点? → LangGraph。它的 HITL 支持最成熟。

你的场景是多角色协作生成内容? → CrewAI。角色和任务的抽象很适合这类场景。

你全栈 OpenAI,不想引入额外依赖? → OpenAI Agents SDK。最轻,和 Responses API 无缝配合。

你需要在一个进程里跑上千个 Agent? → Agno。轻量实例化是它的核心卖点。

你在微软生态里,需要和 Azure 服务集成? → AutoGen。企业级支持,长期有保障。

一个迁移建议

如果你现在还在用 LangChain 的 AgentExecutor,不用恐慌。它虽然 deprecated,但维护到 2026 年 12 月。在此之前能正常用。

迁移的时候有个取巧的办法:LangGraph 提供了 create_react_agent() 函数,行为和原来的 AgentExecutor 几乎一样,但底层已经是图结构了。先用这个函数做平替,不改业务逻辑,只换底层引擎。跑稳之后再逐步利用图结构的高级能力(分支、检查点、HITL)。

比一步到位重写安全得多。


参考链接

  • LangGraph 文档:https://langchain-ai.github.io/langgraph/
  • Agent 框架对比:https://maxpool.dev/frameworks/
  • CrewAI:https://github.com/crewAIInc/crewAI
  • OpenAI Agents SDK:https://github.com/openai/openai-agents-python
← 返回博客列表