Langgraph示例

第四章:第一个完整示例(逐行讲解)

我们来写一个最简单的"问答 Agent":接收问题 → 处理 → 返回答案。

4.1 完整代码

新建文件 first_agent.py:

python

python 复制代码
from typing import TypedDict
from langgraph.graph import StateGraph, START, END

# ---------- 1. 定义状态(公共黑板) ----------
class State(TypedDict):
    question: str
    answer: str

# ---------- 2. 定义节点(工人) ----------
def process_question(state: State):
    question = state["question"]
    answer = f"收到你的问题:{question}。这是来自节点的回答。"
    return {"answer": answer}

# ---------- 3. 创建图 ----------
builder = StateGraph(State)

# ---------- 4. 添加节点 ----------
builder.add_node("processor", process_question)

# ---------- 5. 连边 ----------
builder.add_edge(START, "processor")
builder.add_edge("processor", END)

# ---------- 6. 编译 ----------
graph = builder.compile()

# ---------- 7. 运行 ----------
result = graph.invoke({"question": "LangGraph 是什么?"})
print(result)

4.2 逐行解释

第 1-2 行:导入需要的工具。TypedDict 定义状态类型,StateGraph、START、END 是 LangGraph 的核心组件。

第 5-7 行:定义 State。这里规定黑板上有两个字段:question 和 answer,都是字符串。

第 10-13 行:定义节点函数 process_question。它接收 state,从里面取出 question,生成一个 answer,然后返回 {"answer": answer}。这个返回值会自动合并到 State 中。

第 16 行:创建图构建器,指定用 State 作为状态类型。

第 19 行:把 process_question 函数作为一个节点加入图,名字叫 "processor"。

第 22-23 行:连边。START → processor 表示从起点进入这个节点;processor → END 表示节点执行完就结束。

第 26 行:compile() 把图编译成可执行对象。必须编译才能运行。

第 29 行:invoke() 传入初始状态运行图,返回值就是最终状态。

4.3 运行结果

python 复制代码
bash

python first_agent.py
输出:

python

{'question': 'LangGraph 是什么?', 'answer': '收到你的问题:LangGraph 是什么?。这是来自节点的回答。'}
相关推荐
ZhengEnCi2 小时前
AI 真的会替代程序员吗:从 55.8% 提速到 19% 变慢的八组关键数据拆解
aigc·ai编程
濮水大叔4 小时前
AI Vibe Coding 实战:SMS 套件提示词与开发方案
ai编程·全栈·vibecoding
特别关注外国供应商5 小时前
Qualys TotalAI:AI 安全治理的四大支柱
ai·大模型安全·ai数据安全·qualys·ai安全治理·ai saas 治理·ai代码安全
kyriewen6 小时前
我让 4 个 AI 互相 review 代码,最温柔的那个下手最狠
前端·程序员·ai编程
天外飞雨道沧桑7 小时前
我在浏览器里练了一个 792 参数的大模型,它学会了补全 JavaScript
开发语言·javascript·ai·ecmascript·ai编程
柳杉7 小时前
用 Codex 完成智慧高速 3D 可视化大屏,从 18 张行业设计稿到可交互的运行监测中心
前端·ai编程·数据可视化
漫步的猪8 小时前
# 告别混乱与付费墙!Linkit:完全免费、本地优先的开源 AI 智能书签与收藏夹管理神器
人工智能·ai·开源·react·免费·书签·收藏夹
效率工作实验室8 小时前
搭建AI智能体应用,主流智能体开发平台应关注哪些核心能力
ai·agent·智能体开发平台·核心能力·ai智能体应用
孟健8 小时前
Kimi K3.1 Pro 编程实测:3个月27万行代码,每年1.7万预算下如何9分钟修好顽固Bug
前端·开源·ai编程
sbjdhjd8 小时前
AI产业周度动态:从“更强模型”走向“可执行、可治理、可计价”的系统竞争 (2026年10月19日—10月25日)
人工智能·笔记·ai·开源·gemini·信息差·claude code