Skip to main content

Q102: LangChain LangGraph DeepAgent

https://docs.langchain.com/oss/python/concepts/products

这个文章核心内容是

好的,以下是该文章核心内容的中文总结。

这篇文章的核心是将 Agent 开发栈分为三个不同的层次Agent 框架(Agent Frameworks)Agent 运行时(Agent Runtimes)Agent 工具包(Agent Harnesses)。文章用 LangChain 生态的工具作为主要例子,帮助你根据项目复杂度和需求选择正确的工具。

🧱 三个核心层次对比

层次是什么核心功能与价值适用场景典型工具
🤖 Agent 框架简化 LLM 应用开发的高级抽象- 易用的抽象接口
- 广泛的模型和工具集成
- 标准化的 Agent 循环
- 快速上手
- 构建相对简单的 Agent
- 保持团队开发一致性
LangChain
Vercel AI SDK
CrewAI
⚙️ Agent 运行时运行复杂、有状态 Agent 的生产级基础设施- 持久化执行(故障后可恢复)
- 人机协作(HITL)
- 状态流式传输与持久化
- 细粒度控制
- 长时间运行、有状态的工作流
- 混合逻辑与 AI 的复杂任务
- 需要底层精细控制
LangGraph
Temporal
Inngest
🧰 Agent 工具包高度预设、开箱即用的框架,面向复杂 Agent- 内置规划能力(待办清单)
- 子 Agent 任务委派
- 集成文件系统访问
- 高级 Token 管理
- 需要长时间自主运行的 Agent
- 处理复杂多步任务
- 希望直接使用预置工具和提示词
Deep Agents SDK
Claude Agent SDK

🔗 层次之间的关系

  • LangChain 构建于 LangGraph 之上:LangChain 框架实际上是以 LangGraph 运行时为基础的。这意味着你可以只使用 LangChain 的抽象接口,而无需直接操作 LangGraph。这也方便你未来从简单项目平滑过渡到复杂项目。
  • 目标相似,控制粒度不同:不同层次可以实现类似的功能,区别在于控制粒度集成深度。Deep Agents 这类工具包提供最丰富的开箱即用功能,而 LangGraph 这类运行时则给你最精细的控制权。

💡 如何选择合适的层次

根据项目的复杂度来决定:

  • 从框架开始:如果你是新手,或者项目比较简单,推荐从 LangChain 开始,因为它最简单易用。
  • 需要可靠性时选用运行时:当你的 Agent 需要持久化执行(比如故障恢复)或管理复杂的长时间运行状态时,应当考虑直接使用 LangGraph 来获得底层控制能力。
  • 追求高级自主能力时选用工具包:如果你需要构建长时间高度自治的 Agent,并且希望直接拥有内置的规划、子任务管理等能力,那么 Deep Agents SDK 是更合适的选择。

如果想深入了解其中某个层次或工具的更多细节,欢迎继续提问。