Skip to content

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/
  • 本站内容为中文学习整理,不做官方身份声明。

本站为非官方中文学习站点,不代表 LangChain 官方。部分内容参考官方文档并重新整理为中文学习笔记。