LangChain、LangGraph、Deep Agents、Managed Deep Agents:四个框架到底该选哪个?

这几年 AI Agent 越来越火,相关开发框架也开始扎堆出现。

如果你关注过 LangChain 生态,大概率见过这几个名字:

  • LangChain

  • LangGraph

  • Deep Agents

  • Managed Deep Agents

名字看起来像一家人,实际上也确实是一家人。但它们的定位并不相同。

有点像一家公司的四个岗位:有人负责提供工具,有人负责安排流程,有人负责带队完成复杂任务,还有人干脆把整套基础设施都给你准备好了。

问题来了:开发一个 Agent ,到底应该选哪个?

先别急着全部学一遍。我们一个一个来看。

一、先搞清楚:它们到底有什么区别?

先用一句话概括:

框架 核心定位 通俗理解
LangChain Agent Framework 提供工具和积木
LangGraph Agent Runtime 负责流程和状态管理
Deep Agents Agent Harness 自带规划能力的智能团队
Managed Deep Agents 托管运行平台 连服务器和运行环境也帮你管

这里有一个容易误解的地方:四者不是完全平级的竞争关系。

LangChain、LangGraph、Deep Agents、Managed Deep Agents 关系图

LangGraph 更接近底层运行引擎,LangChain 提供开发抽象和集成能力,Deep Agents 则在此基础上封装出更完整的自主 Agent 能力。

Managed Deep Agents 又往前走了一步,解决的是 Agent 部署和生产运行的问题。

二、LangChain:给你一套积木,怎么搭自己决定

LangChain 可以说是这个生态里最容易入门的选择。

它提供了模型、 Prompt 、Tool、Retriever、Agent 等常用组件,让开发者不用每次都从零开始。

例如,你想开发一个能够查询天气、搜索 知识库 、调用第三方 API 的 Agent。

基本流程就是:

  1. 用户提出问题。

  2. LLM 分析用户意图。

  3. 决定是否调用工具。

  4. 获取工具执行结果。

  5. 根据结果生成回答。

LangChain 已经帮你处理好了 Agent 与工具之间的基本循环。

它的优点是简单、灵活、集成丰富。

但它不会替你设计所有复杂业务流程。需要什么功能,自己组合;需要什么规则,自己添加。

适合什么场景?

  • RAG 知识库问答

  • 简单 Tool Calling

  • 数据查询 Agent

  • API 自动化

  • 普通客服和助手

如果只是想做一个能调用工具的 AI 助手,没必要一上来就请出一支 Agent 军团。

三、LangGraph:不想让 AI 自由发挥?那就给它画张流程图

LangChain 让 Agent 自己决定下一步做什么,但有些业务可不能这么随意。

比如订单审批:

  • 先检查订单信息。

  • 再验证支付状态。

  • 然后检查库存。

  • 满足条件才能发货。

  • 遇到异常还要人工审批。

这时候,如果把所有决定都交给 LLM ,就像让一个刚入职的实习生负责整个公司的财务审批。

勇气可嘉,风险也不小。

LangGraph 就是解决这类问题的。

它采用 Graph 的方式组织工作流,核心概念包括:

  • State:记录当前任务状态。

  • Node:执行具体任务。

  • Edge:定义执行顺序。

  • Conditional Edge:根据条件决定下一步。

  • Checkpoint:保存执行进度。

  • Interrupt:暂停任务,等待人工介入。

最大的特点就是:流程由开发者控制,LLM 只在需要智能判断的地方参与。

例如代码审核:

提交代码 → 静态检查 → 自动测试 → 判断结果 → 通过或返回修改。

哪一步必须执行、失败后如何处理、什么时候需要人工介入,都可以明确规定。

适合什么场景?

  • 复杂业务工作流

  • 多步骤审批

  • 多 Agent 协作

  • 需要暂停和恢复的任务

  • 对执行顺序和可靠性要求较高的系统

一句话:如果业务流程比 AI 的自由发挥更重要,LangGraph 通常更合适。

四、Deep Agents:不只会调用工具,还要会自己安排工作

前面两个框架解决的是基础构建和流程控制问题。

但如果你希望 Agent 完成的任务是:

「帮我研究一下竞品,收集资料,分析优缺点,最后整理成一份报告。」

事情就不一样了。

这种任务没有固定的执行步骤。Agent 需要自己拆解目标、安排任务、搜索资料、分析结果,甚至在过程中调整计划。

这就是 Deep Agents 擅长的方向。

它可以理解为一个自带工作方法的高级 Agent Harness。

主要提供以下能力:

1. Planning:任务规划

把复杂目标拆分成多个小任务,并跟踪任务进度。

2. Subagents:子 Agent

可以把任务分配给不同的子 Agent。

例如研究 Agent 负责搜索资料,分析 Agent 负责对比数据,写作 Agent 负责生成报告。

主 Agent 最后整合结果。

3. Filesystem:文件系统

Agent 可以读写文件,保存研究资料、中间结果和最终报告。

4. Context Management:上下文管理

长任务容易遇到上下文越来越长的问题。Deep Agents 提供摘要压缩、工具结果卸载、子 Agent 上下文隔离等能力。

5. Skills 和 Memory:技能与记忆

可以让 Agent 按需加载技能说明,并在不同任务之间保留有用的信息。

这些能力组合起来,就能支持更复杂、更长时间的自主任务。

适合什么场景?

  • 自主研究 Agent

  • Coding Agent

  • 自动生成分析报告

  • 多步骤数据分析

  • 需要任务拆解和子 Agent 协作的应用

它有点像一个项目经理:你给它目标,它负责安排工作。

不过,项目经理也可能做出错误决策。Agent 越自主,越需要做好权限控制、执行验证和成本管理。

五、Managed Deep Agents:代码你写,服务器我来管

如果 Deep Agents 已经能帮你完成复杂任务,那么 Managed Deep Agents 解决的就是另一个问题:

Agent 开发完成后,怎么把它放到生产环境运行?

传统方式下,你不仅要写 Agent,还要考虑:

  • 运行服务器

  • 执行环境

  • 持久化存储

  • 任务调度

  • 运行监控

  • 部署和扩容

这些工作加起来,有时候 Agent 还没上线,运维工作已经先上线了。

Managed Deep Agents 就是为了减少这些工作。

它运行在 LangSmith Cloud 上,使用开源 Deep Agents Harness。你负责定义 Agent 的指令、工具和模型,平台负责托管运行环境及相关生产基础设施。

开发流程也比较直接:

  • mda dev:本地开发和调试。

  • mda deploy:部署到 LangSmith。

它还提供持久化记忆、沙箱、定时任务等生产能力。

适合什么场景?

  • 想快速把 Deep Agent 部署上线。

  • 不想自己维护 Agent 运行基础设施。

  • 需要长期运行、定时执行的 Agent。

  • 希望把精力集中在业务逻辑上。

当然,托管不是免费的午餐。平台费用、数据安全、服务区域、供应商依赖等问题,还是需要提前考虑。

如果你希望完全掌控运行环境,也可以使用 Deep Agents SDK 自行部署。

六、四个框架横向对比

对比维度 LangChain LangGraph Deep Agents Managed Deep Agents
核心定位 开发框架 运行引擎 Agent Harness 托管平台
抽象程度 中 低 高 高
流程控制 Agent Loop 自定义 Graph Agent 自主规划 托管 Deep Agents
任务拆解 自行实现 自行实现 内置能力 内置能力
子 Agent 可组合实现 Subgraph 内置委派能力 内置委派能力
上下文管理 自行配置 自行配置 内置能力 内置能力
持久化执行 依赖运行层 核心能力 基于 LangGraph 托管支持
部署方式 自行部署 自行部署 SDK 自行部署 LangSmith Cloud

需要注意,表格中的「内置」不代表所有功能都不需要配置,实际能力还取决于所用版本、后端和具体集成。

七、实际项目中,应该怎么选?

给几个实际例子:

场景一:开发一个企业知识库问答系统

用户提问,系统检索 向量数据库 ,再由 LLM 整理答案。

推荐:LangChain。

这种场景不需要复杂的任务规划,简单的 Agent Loop 就能满足需求。

场景二:开发一个自动化订单审批系统

需要检查订单、验证支付、检查库存,并在异常时暂停等待人工处理。

推荐:LangGraph。

业务步骤明确,流程必须可控,不适合让 Agent 随意发挥。

场景三:开发一个自动竞品研究系统

用户只提供一个产品名称,Agent 自己搜索资料、分析市场、比较竞争对手,最后生成报告。

推荐:Deep Agents。

这种任务目标明确,但执行路径不固定,适合自主规划和子 Agent 协作。

场景四:把竞品研究 Agent 部署成一个长期运行的服务

需要定时执行、持久化记忆,又不想自己维护服务器。

推荐:Managed Deep Agents。

它可以减少生产环境基础设施的搭建工作。

八、最后总结:别为了用框架而用框架

四者并不是非此即彼的关系。

它们可以组合使用:

  • LangChain 提供模型、工具和开发抽象。

  • LangGraph 负责底层状态管理和流程编排。

  • Deep Agents 在上面增加规划、上下文管理和子 Agent 等能力。

  • Managed Deep Agents 则负责托管 Deep Agents 的生产运行。

实际开发时,也不需要把四个框架全部用上。

我的建议是:

你的目标 优先选择
快速开发普通 Agent LangChain
构建复杂、可靠的业务流程 LangGraph
开发自主性较强的复杂 Agent Deep Agents
快速部署和托管 Agent Managed Deep Agents

如果你刚开始学习 Agent 开发,可以先理解 LangChain 的基本机制,再学习 LangGraph 的状态和流程控制,最后体验 Deep Agents。

但如果现在就要开发一个自主研究、自动编程或者复杂任务执行 Agent,也可以直接从 Deep Agents 入手。

记住一个原则:简单任务别搞复杂,复杂任务别硬凑简单框架。