尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

LangGraph 多智能体框架教程:一次讲透有状态智能体怎么搭、怎么跑

LangGraph 多智能体框架教程:一次讲透有状态智能体怎么搭、怎么跑 LangGraph 多智能体框架教程一次讲透有状态智能体怎么搭、怎么跑【免费下载链接】langgraphBuild resilient agents.项目地址: https://gitcode.com/GitHub_Trending/la/langgraphLangGraph 是一个低层编排框架用来构建有状态、可长期运行的多智能体应用把智能体拆成节点用图结构定义数据流向执行过程可以随时暂停、恢复和人工介入。适合已经在用大模型、但发现脚本式 Agent 一断就丢状态、没法在关键步骤加人审的工程师。它解决什么问题用代码脚本串起来的 Agent 普遍有三个硬伤跑得久就丢现场、出错只能从头再来、想加一步人工确认就得自己写控制流。LangGraph 的思路是把状态和执行都交给框架托管。遇到的问题LangGraph 的回答任务跑到一半进程挂了上下文全丢每轮执行都写检查点重启后从上次的状态精确续跑想让审批人/用户插一脚控制流要到处打补丁interrupt原语在任意节点暂停人工修改状态后再恢复对话记忆、跨会话记忆各写各的短期记忆走 State 里的消息通道长期记忆走 Store职责分开多智能体协作的执行顺序不可控用图显式声明节点和边谁依赖谁一目了然三步跑起来1. 一条命令装好环境pip install -U langgraph2. 写一个最小的有状态图StateGraph 就是状态图先定义共享状态State 是一个带类型的数据结构节点之间通过它传递数据再挂节点、连边。下面是一个带工具调用循环的最小智能体约 20 行from typing import Annotated, TypedDict from langgraph.graph import StateGraph, START, END from langgraph.graph.message import add_messages from langgraph.prebuilt import create_react_agent class State(TypedDict): messages: Annotated[list, add_messages] # 新消息自动追加不覆盖 def chatbot(state: State): return {messages: [{role: assistant, content: 你好我是最小示例}]} graph StateGraph(State) graph.add_node(chatbot, chatbot) graph.add_edge(START, chatbot) graph.add_edge(chatbot, END) app graph.compile()不想手搭的话libs/prebuilt 里的create_react_agent(model, tools)一行就能生成一个带工具循环的标准 ReAct 智能体见 libs/prebuilt/README.md。3. 验证成功把app换成create_react_agent返回的图然后发起一次调用python -c from demo import app; print(app.invoke({messages: [{role: user, content: hi}]}))返回结果里messages字段有回复说明图和状态都在正常工作。下一步给它配上检查点内存版MemorySaver生产用 SQLite 或 Postgres 版重启进程后再invoke同一个thread_id状态还在即算打通了持久化。五分钟看懂项目仓库是 monorepo每个库一个目录全部在 libs/ 下。看源码只需认准四处模块路径干什么的什么时候碰它libs/langgraph/核心框架状态图定义、Pregel 执行引擎、各类 Channel数据通道理解执行模型、排查行为时看 libs/langgraph/langgraph/graph/state.py 和 libs/langgraph/langgraph/pregel/main.pylibs/prebuilt/开箱组件create_react_agent、ToolNode、参数校验快速起步不想手搭工具循环时libs/checkpoint/检查点基础接口和内存实现配套 libs/checkpoint-postgres/ 与 libs/checkpoint-sqlite/给智能体加持久化、做断点续跑时libs/cli/官方 CLIlanggraph dev本地起服务、langgraph up打包运行调试和部署阶段图定义写在langgraph.json里libs/cli/js-examples/static/studio.png 是 JS 示例工程里截的调试界面Python 侧对应的可视化调试由 LangSmith 承担后面进阶能力一节展开。适用场景与边界它擅长跑几十分钟甚至几小时的长任务中途失败能从检查点恢复流程里必须有人看一眼再继续的环节审批、改稿、纠错需要跨会话记住用户偏好的长期记忆多智能体分工协作执行路径要可控可回放。什么时候不用它一次性的小脚本、演示 Demo十几行直接调 LLM 就够了引入图和检查点纯属负担你只是想要一个现成的复杂智能体不想自己拆状态、连边那应该用更上层的 Deep AgentsLangGraph 之上封装的包简单问答型聊天机器人一个 ReAct 循环甚至普通函数调用就能覆盖上完整框架收益有限。另外注意 LangGraph 本身不含任何大模型模型接入靠 LangChain 的集成或者任何你自己封装的节点函数。JS/TS 技术栈有独立的 LangGraph.js 库本仓库的 libs/sdk-js/ 只是配套客户端。进阶能力与生态三个值得知道的点持久化执行Durable Execution每个超级步执行完都落一次检查点崩溃重启后从断点继续长任务不必担心丢现场。SQLite 版适合单机和开发Postgres 版适合生产两者都遵循同一套 libs/checkpoint-conformance/ 一致性测试规范。人工介入Human-in-the-loopinterrupt让智能体在指定节点挂起人工查看甚至改写状态后恢复执行不用为审批流单独写一套控制逻辑。生态配合LangChain 提供模型和工具集成LangSmith 提供执行追踪、轨迹回放和生产监控也就是前文那张界面图对应的能力部署侧有专门的托管平台处理有状态长任务。本地开发用 libs/cli/ 的langgraph dev图注册在langgraph.json中命令用法见 libs/cli/README.md。下一步行动清单把三步跑起来里的示例改成你自己的状态和节点跑通第一个带工具循环的图给图加一个 SQLite 检查点杀掉进程重跑同一个thread_id亲手验证状态续命翻 examples/ 目录examples/multi_agent/multi-agent-collaboration.ipynb 看多智能体协作examples/rag/ 看 RAG 变体examples/human_in_the_loop/wait-user-input.ipynb 看人工等待输入的实际写法。打通这三步之后你手里就是一个能持久运行、可人工介入的智能体骨架剩下的就是往图里填业务节点。【免费下载链接】langgraphBuild resilient agents.项目地址: https://gitcode.com/GitHub_Trending/la/langgraph创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表