更新于 2025年9月24日
4 分钟
messages、context)。pip install -U langgraph langchain openai# 可选:追踪、向量存储、工具等pnpm add @langchain/langgraph langchain openai# 或npm install @langchain/langgraph langchain openaiexport OPENAI_API_KEY=sk-... # 或你选择的服务提供商密钥from typing import TypedDict, Listfrom langgraph.graph import StateGraph, ENDfrom langchain_openai import ChatOpenAI# 1) 定义 Stateaction_token = "<act>" # 用于区分工具调用和最终答案的简单信号class State(TypedDict):messages: List.- 来自 LangChain Academy 的免费 LangGraph 入门课程。- 面向初学者的完整视频课程,涵盖复杂的对话式工作流。## 总结:从原型到可靠代理LangGraph 让你以图形原生方式控制大语言模型应用:明确的路由、可恢复状态和可观测行为。从单代理循环小项目开始,逐步进阶到多代理监督、策略门控和人工审核。保持节点简单、状态清晰、路由确定。行动步骤:- 设计最小状态和两个节点(`agent`、`tool`)。- 添加一个带清晰 `END` 路径的路由器。- 在扩展前引入检查点和测试。- 随着成长,加入工具和专家代理。有了这些基础和强大的调试循环,你将发布行为稳定的生产代理系统。### 常见问题解答Q1: LangGraph 用来做什么?LangGraph 用于构建具有明确控制流程、持久状态和检查点的可靠单代理和多代理工作流。非常适合循环、工具调用、人工环节和复杂的编排场景。Q2: 如何安装和配置 LangGraph?通过 `pip install langgraph langchain`(Python)或 `npm i @langchain/langgraph langchain`(JS/TS)安装。配置你的 LLM 服务提供商(例如设置 `OPENAI_API_KEY`),开始时定义 `State`、节点和条件边。Q3: LangGraph 和 LangChain 有什么区别?LangGraph 是一个独立包,侧重于基于图的流程编排和具备状态恢复能力的工作流。它补充 LangChain 的模型、工具及集成,增强确定性和可靠性。Q4: LangGraph 能否构建多代理系统?完全可以。LangGraph 支持监督者-工作者模式、辩论或委员会代理及策略门控。通过条件边路由代理,维护共享或分割状态。Q5: 如何防止 LangGraph 中的无限循环?定义清晰的终止条件,并确保路由器提供 `END` 路径。在状态中加入循环计数器或超时机制,优化消息管理,编写单元测试验证路由逻辑。