StateGraph 核心模型
StateGraph 是 LangGraph 最核心的抽象。你需要先定义状态结构,然后把多个节点接到图上。
状态是什么
状态可以理解为工作流中的“上下文对象”。每个节点读取当前状态,并返回局部更新。
python
from typing import TypedDict, List
class AgentState(TypedDict):
question: str
documents: List[str]
answer: str节点是什么
节点就是一个函数:
python
def retrieve_node(state: AgentState):
docs = ["文档1", "文档2"]
return {"documents": docs}图怎么跑
text
START -> retrieve -> generate -> END每个节点不是直接修改全局变量,而是返回对 state 的更新。LangGraph 会把这些更新合并到状态里。
后端类比
你可以把 StateGraph 类比成一个可编排的责任链 / 状态机。不同点是:它天然适合和 LLM、工具调用、消息状态、checkpoint 结合。
非官方声明
本站为个人维护的非官方中文学习文档,不代表 LangChain 官方。页面内容是基于公开文档、源码实践和中文开发者视角重新整理的学习资料。涉及 API 细节时,请以官方文档和实际安装版本为准。
参考来源
- LangChain / LangGraph 官方文档:
https://docs.langchain.com/ - LangChain API Reference:
https://reference.langchain.com/ - 本站内容为中文学习整理,不做官方身份声明。