LangChain 与 LangGraph 实战指南
LangChain 和 LangGraph 是两个强大的人工智能开发框架。 一、为什么需要 LangGraph? LangChain 虽然提供了丰富的工具链和 Agent 能力,但在实际企业级应用中面临一些挑战: 复杂状态管理困难: 传统 Chain 难以维护跨多个步骤的状态 循环流程不支持: 无法自然表达人类交互中的"重试 - 修正"过程 调试复杂度高: 执行流不透明,问题定位困难 长期任务控制弱: 缺乏对执行流的精确干预能力 LangGraph 通过图结构解决了这些问题,让你能够构建可预测、可控的智能体系统。 二、核心概念:图 vs 链 2.1 语言模型的三种执行模式 # 1. Prompt → LLM (最基础) response = llm(prompt) # 2. Chain (串行流程) # question -> retriever -> prompt -> LLM -> answer # 3. Graph (图结构) # 节点之间可以有任意连接关系(包括循环) 2.2 关键术语 Node: 计算单元,如 retrieval_node、llm_node、tool_node Edge: 节点之间的连接,定义执行流方向 State: 图的共享状态,所有节点读写同一份状态 Cycle: 循环边,允许流程回到之前的节点 三、实战示例:状态管理的艺术 3.1 定义状态 (Schema) 这是 LangGraph 的核心!你的应用所有数据都存在于这个状态中: