Skip to main content
LangChain 维护着多个开源包,以帮助您构建代理。它们在代理开发栈中各有不同的用途。理解代理框架代理运行时代理工具集之间的区别,有助于您为需求选择合适的工具。
框架运行时工具集
增值点
  • 抽象
  • 集成
  • 持久执行
  • 流式处理
  • 人在环中
  • 持久化
  • 预定义工具
  • 提示词
  • 子代理
使用场景
  • 快速入门
  • 标准化团队构建方式
  • 底层控制
  • 长时间运行、有状态的工作流和代理
  • 更自主的代理
  • 处理复杂、非确定性任务的代理
选项
  • LangChain
  • Vercel 的 AI SDK
  • CrewAI
  • OpenAI Agents SDK
  • Google ADK
  • LlamaIndex
  • LangGraph
  • Temporal
  • Inngest
  • Deep Agents SDK
  • Claude Agent SDK
  • Manus

代理框架(如 LangChain)

代理框架提供抽象,使得使用大语言模型构建应用时更容易上手。 LangChain 是一个代理框架,提供了诸如结构化内容块、代理循环和中间件等抽象。 LangChain 的抽象设计旨在易于上手,同时为高级用例提供所需的灵活性。 虽然 LangChain 构建在 LangGraph 之上,但您无需了解 LangGraph 即可使用 LangChain。 其他代理框架的例子包括 Vercel 的 AI SDKCrewAIOpenAI Agents SDKGoogle ADKLlamaIndex 等等。

何时使用 LangChain

在以下情况下使用 LangChain:
  • 您想快速构建代理和自主应用程序。
  • 您需要模型、工具和代理循环的标准抽象。
  • 您想要一个易于使用且仍提供灵活性的框架。
  • 您正在构建无需复杂编排需求的直接代理应用程序。

代理运行时(如 LangGraph)

代理运行时提供在生产环境中运行代理的工具支持。 支持的工具可能包括:
  • 持久执行:代理在故障中得以持久化,可以长时间运行,并从断点处恢复。
  • 流式处理:支持流式工作流和响应。
  • 人在环中:通过检查和修改代理状态来纳入人类监督。
  • 持久化:线程级和跨线程的持久化,用于状态管理。
  • 底层控制:无需高级抽象即可直接控制代理编排。
LangGraph 是一个用于构建、管理和部署长时间运行、有状态代理的底层编排框架和运行时。 代理框架通常处于更高层级,并运行在代理运行时之上。 例如,LangChain 1.0 构建在 LangGraph 之上。 其他代理运行时的例子包括 TemporalInngest 以及其他持久执行引擎。

何时使用 LangGraph

在以下情况下使用 LangGraph:
  • 您需要对代理编排进行细粒度的底层控制。
  • 您需要为长时间运行、有状态的代理提供持久执行。
  • 您正在构建结合确定性步骤和代理步骤的复杂工作流。
  • 您需要用于代理部署的生产就绪基础设施。

代理工具集(如 Deep Agents SDK)

代理工具集是具有主见、功能齐全的框架,内置工具和能力,用于构建复杂、长时间运行的代理。 支持的工具可能包括:
  • 规划能力:使用待办事项列表跟踪多个任务。
  • 任务委派:委派工作并通过子代理保持上下文清晰。
  • 文件系统:对不同可插拔存储后端上的文件进行读写访问。
  • 令牌管理:对话历史摘要和大型工具结果淘汰。
Deep Agents SDK 构建在 LangGraph 之上,并添加了规划能力、用于上下文管理的文件系统、生成子代理的能力等。 Deep Agents 专为需要规划和分解的复杂多步骤任务而设计。 示例任务包括处理状态中的搜索结果、脚本和其他工件。 其他代理工具集的例子包括 Claude Agent SDKManus 以及其他编码 CLI。

何时使用 Deep Agents SDK

在以下情况下使用 Deep Agents SDK
  • 您正在构建长时间运行的代理。
  • 您正在构建需要处理复杂多步骤任务的代理。
  • 您想使用预定义工具,例如文件系统操作、bash 执行和自动化上下文工程。
  • 您想使用预定义提示词和子代理。

功能比较

虽然您可以使用 LangChain、LangGraph 和 Deep Agents 完成类似的任务,但您集成它们的层级不同:

了解更多