LangChain 是 Agent 框架,提供模型、工具、prompt 等组件的抽象和集成,专注于"用什么做";LangGraph 是编排运行时,提供持久执行、流式输出、人机协同等基础设施,专注于"怎么组织这些组件协同工作"。两者不是替代关系,而是互补关系。
LangChain 内置了 AgentExecutor 等高层抽象,适合快速搭建简单的 Agent。但当需要更精细的控制——如循环、条件分支、状态持久化——时,LangChain 的高层抽象会隐藏太多细节,此时 LangGraph 的低层 API 成为更合适的选择。简单来说,LangChain 解决"接入模型和工具"的问题,LangGraph 解决"编排复杂工作流"的问题。
使用 LangGraph 不需要必须使用 LangChain,两者的核心 API 是独立的。但在实际使用中,绝大多数 LangGraph 项目都会搭配 LangChain 的模型集成和工具组件,享受最大的生态红利。LangGraph 1.0 之后,部分原本位于 langgraph.prebuilt 的功能已迁移到 langchain.agents,进一步模糊了两者的边界。
随着 LangChain 产品的不断迭代,三者的分工更加明确:LangChain 持续丰富模型和工具集成,LangGraph 强化编排能力和生产特性(如 Deep Agents 框架和 Functional API),LangSmith 统一提供可观测性和部署平台。开发者应根据需求层次选择合适的产品组合。