今天阳光很暖

langgraph

收录 LangGraph Agent、状态管理、Workflow、工具调用与持久化实践。

LangGraph 系列 15:使用 interrupt 与 Command 实现可恢复人工介入 LangGraph 系列 15:使用 interrupt 与 Command 实现可恢复人工介入
本篇改用动态 interrupt():Bing 搜索和 12306 查询直接执行,只有本地邮件工具真正准备写入发件箱时才暂停。用户检查收件人、主题和正文后,可以批准、拒绝或修改参数,再通过 Command(resume=...) 恢复原 T
2026-06-11
LangGraph 系列 14:使用静态断点实现工具执行审批 LangGraph 系列 14:使用静态断点实现工具执行审批
之前我们把 Bing 和 12306 MCP 接入了智能体,让模型能够根据问题产生 Tool Call,ToolNode 随后执行远程工具。 但“模型认为应该调用”不等于“应用已经授权执行”。当工具会发送消息、修改数据、产生费用,或者访问敏
2026-06-08
LangGraph 系列 13:使用 Bing 与 12306 MCP 构建 Workflow LangGraph 系列 13:使用 Bing 与 12306 MCP 构建 Workflow
本文把两个公网 MCP Server 接入同一张 LangGraph: Bing MCP 负责搜索网页和抓取搜索结果。 12306 MCP 负责日期、车站编码、余票、中转和经停站查询。 模型继续使用本地 Qwen3。公网服务负责提供实时
2026-06-04
LangGraph 系列 12:异步并发工具调用与 ToolNode LangGraph 系列 12:异步并发工具调用与 ToolNode
在搭建完整 Workflow 之前,需要先解决一个更基础的问题:模型一次返回多个 Tool Call 时,工具应该怎样执行? 如果两个工具互不依赖,顺序等待会浪费时间。更合理的方式是同时启动两个异步任务,等待它们全部完成后,再把两个结果作为
2026-06-01
LangGraph 系列 11:使用评估器优化器循环改进模型输出 LangGraph 系列 11:使用评估器优化器循环改进模型输出
本篇继续使用预先定义的图结构,解决一类需要反复改进输出的问题:模型先生成内容,评估器按照明确标准检查;如果没有通过,就把具体反馈交回生成器继续修改。 这种模式叫作 Evaluator-optimizer Workflow,也就是评估器优化器
2026-05-28
LangGraph 系列 10(下):Workflow 的 Edge、路由与 Studio 完整案例 LangGraph 系列 10(下):Workflow 的 Edge、路由与 Studio 完整案例
在系列 10(上)中,我们已经介绍了 Workflow 的 State、Reducer 和 Node:State 保存共享数据,Reducer 决定字段如何合并,Node 负责读取状态并提交局部更新。 本篇继续解决“节点按什么顺序执行”这个
2026-05-26
LangGraph 系列 10(上):Workflow 的 State、Reducer 与 Node LangGraph 系列 10(上):Workflow 的 State、Reducer 与 Node
从本文开始进入 LangGraph 系列的 Workflow 阶段。面对执行步骤明确、分支规则固定的业务,通常不需要让大模型决定每一步,而是由程序员把执行路径直接编排成 Workflow。 本篇是系列 10 的上篇,不调用大模型,而是使用普
2026-05-24
LangGraph 系列 9:智能体的短期记忆与长期记忆 LangGraph 系列 9:智能体的短期记忆与长期记忆
AgentState负责描述一次 Agent 运行中有哪些状态,以及节点和 Tool 应该如何读取、更新这些状态。 但是,只有 State 还不等于拥有记忆。如果没有配置持久化组件,一次 invoke() 结束后,下一次调用不会自动恢复上一
2026-04-23
LangGraph 系列 8:AgentState 状态详解与自定义状态 LangGraph 系列 8:AgentState 状态详解与自定义状态
Context 适合保存用户 ID、用户名和权限等调用开始时已经确定的数据,在一次运行中通常按只读方式使用。 但是 Agent 运行起来以后,还会不断产生新的内容。例如用户消息、模型生成的工具调用、工具执行结果,以及工具从外部系统得到的数据
2026-04-19
LangGraph 系列 7:智能体运行时上下文与静态配置 LangGraph 系列 7:智能体运行时上下文与静态配置
前文已经完成本地 Tool、流式工具调用和 Agent API 的介绍。调用 Agent 时,我们一直把用户问题放在 messages 中,但实际应用除了问题本身,通常还需要知道是谁发起了请求。 例如,一个用户询问“告诉我当前用户的年龄”,
2026-04-15
LangGraph 系列 6:Qwen3 流式工具调用与联网工具实战 LangGraph 系列 6:Qwen3 流式工具调用与联网工具实战
上一篇已经介绍了 Tool 的几种定义方式,并使用 bind_tools() 手动完成了一次工具调用循环。非流式调用比较容易理解:模型一次返回完整的 AIMessage,应用从 tool_calls 中读取工具名称和参数,再执行对应函数。
2026-04-11
LangGraph 系列 5:本地 Tool 的定义与调用 LangGraph 系列 5:本地 Tool 的定义与调用
前面创建天气 Agent 时,模型能够判断什么时候查询天气,并把城市名称交给 get_weather()。这个过程看起来像是模型执行了 Python 函数,实际并不是这样。 大模型只负责理解问题、选择工具并生成参数。真正查找工具、调用 Py
2026-04-08
1 / 2