LangGraph原理逻辑-多智能体架构(一)
LangGraph的底层原理一、速了解LangGraph二、 LangGraph到底是干什么的?三、快速体验LangChain与LangGraph3.1. 代码对比 基础3.2. 代码对比 添加工具总结一、速了解LangGraphLangGraph是一个功能非常强大的大语言模型本地应用构建框架。不只是包含了各种基于大语言模型构建本地应用的工具更重要的是他积累了非常多使用大语言模型构建本地应用构建经验并且将这些经验总结成了非常多的案例让大家可以直接使用。但是LangGraph并不是一个独立的框架他是LangChain框架的一个生态组。LangChain的基础的并且最好是看过我之前分享的LangChain视频。所以如果脱离LangChain来介绍LangGraph那纯粹是耍流氓。件。因此后面的内容是预设大家有LangChain的基础的并且最好是看过我之前分享的LangChain视频。目标理解LangGraph与LangChain理解Agent智能体.理解智能体编排如何部署LangChain应用核心概念Agent智能体在 LangChain/LangGraph 语境中Agent 是一个能够感知环境、进行决策并执行动作如调用工具、查询数据的软件实体。它通常由一个大语言模型LLM驱动能够理解用户意图、规划步骤并自主完成任务。智能体编排指对多个 Agent 或单个 Agent 内部不同步骤思考、行动、观察进行协调与调度的过程。LangGraph 的核心能力就是通过图Graph结构来定义和运行这种编排逻辑确保任务按照预定流程高效、可靠地执行。二、 LangGraph到底是干什么的?LangChain,官网地址: 链接 。一个用于开发由大语言模型LLM提供支持的应用程序的框架。简单来说就是一个用LLM快速构建本地的框架。使用的版本是V0.3。后续内容也以这个版本为准。在LangChain中,除了LangChain外,还有LangGraph、LangSmith等一系列的生态组件。三、快速体验LangChain与LangGraphLangGraph和LangChain都是用于构建和管理大型语言模型应用的工具它们都提供了一种简单易用的方式来构建和管理复杂的应用程序。只不过LangChain更关注于应用程序的流程而LangGraph更关注于如何处理特定的任务。关于LangGraph的细节在后溪章节中会详细介绍。这里我们先用最简单直[白的方式来对比一下LangChain和LangGraph在和大语言模型做交互时的基础思想有什么区别。要使用LangGraph首先需要安装LangGraph的依赖库pip install langgraph # 后面的案例中会用到langchain所以同时也安装下langchain的依赖 pip install langchain pip install langchain_community3.1. 代码对比 基础LangChainimport# 制定OpenAI的API_KEY。ifnotos.environ.get(OPENAI_API_KEY):os.environ[OPENAI_API_KEY]load_key(OPENAI_API_KEY)fromlangchain.chat_modelsimportinit_chat_model#创建访问OpenAI的Model.# model init_chat_model(gpt-4o-mini,model_provideropenai)#openai在国内是无法直接访问的需要科学上网。这里指定base_Url是因为使用的是openai的国内代理2233.ai。model init_chat model( gpt-4o-mini,model _provideropenai,base _Urlhttps://api.gptsapi.net/v1)model.invoke(你是谁?能帮我解决什么问题?)LangGraphfromlanggraph.prebuiltimportcreate_react_agent agentcreate_react_agent(modelmodel,tools[],promptYou are a helpful assistantagent.invoke({messages:[{role:user,content:你是谁?能帮我解决什么问题?}]})3.2. 代码对比 添加工具LangChain# 定义工具 注意要添加注释tooldefget_current_date():获取今天日期.returndatetime.datetime.today().strftime(%Y-%m-%d)#大模型绑定工具llm_with_toolsllm.bind_tools([get_current_date])#工具容器all_tools{get_current_date:get_current_date}#把所有消息存到一起query今天是几月几号messages[query]#询问大模型。大模型会判断需要调用工具并返回一个工具调用请求ai_msg llm_with_tools.invoke(messages)ai_msgprint(ai_msg)messages.append(ai_msg)#打印需要调用的工具Xm_witiprint(ai_msg.tool_calls)ifai_msg.tool_calls:fortool_callinai_msg.tool_calls:selected_toolall_tools[tool_call[name].lower()]tool_msgselected_tool.invoke(tool_call)messages.append(tool_msg)llm_with_tools.invoke(messages).contentLangGraphfromlanggraph.prebuiltimportcreate_react_agent agentcreate_react_agent(modelllm,tools[get_current_date],promptYou are a helpful assistant,agent.invoke({messages:[{role:user,content:今天是几月几号}]})总结通过以上两个简单的代码对比我们可以直观地感受到 LangGraph 与 LangChain 在设计哲学上的差异LangChain更像一个流程编排器。它提供了丰富的组件如模型、工具、记忆、链等并允许你通过链Chain的方式将它们串联起来构建复杂的应用工作流。开发者需要显式地定义每一步的输入、输出和连接关系控制权较高适合构建结构清晰、步骤固定的应用。LangGraph则是一个智能体Agent运行时与编排框架。它的核心是“图”Graph用于定义智能体的状态和决策节点如思考、执行工具、观察结果。create_react_agent这样的预构建智能体封装了 ReAct推理行动等经典模式开发者只需提供模型和工具LangGraph 会自动管理智能体的推理循环、状态转移和工具调用。这大大简化了构建自主决策型 Agent 的复杂度。简单来说LangChain 帮你组装流水线LangGraph 帮你驱动一个会自己思考的智能体。在后续章节中我们将深入 LangGraph 的图结构、状态管理和更复杂的多智能体编排场景。

相关新闻

TFRS工业级推荐系统实战:从双塔模型到业务可解释性

TFRS工业级推荐系统实战:从双塔模型到业务可解释性

1. 项目概述:这不是“调个库就完事”的推荐系统,而是用TFRS把业务逻辑焊进模型里的实战 如果你在搜索“TFRS 推荐系统”时,看到的全是几行代码跑通MovieLens数据集的教程,然后戛然而止——那你不是没找到答案,而是还没…

2026/10/16 15:41:10 阅读更多 →
间隙衰败引起的问题(F-Tile PMA/FEV Direct PHY IP 或Ultrascale FPGAs Transeivers Wizard(1.7))

间隙衰败引起的问题(F-Tile PMA/FEV Direct PHY IP 或Ultrascale FPGAs Transeivers Wizard(1.7))

间隙衰败引起的问题(BIT 或FEC ERR) 数据传输过程中出现bit err(quartusII)Auto Mode(自动模式)Manual Mode(手动模式)Native Mode(原生模式) 数据传输过程中出现FEC误报&#xff08…

2026/10/16 17:18:44 阅读更多 →
DuckDuckGo 搜索爬取器

DuckDuckGo 搜索爬取器

](https://www.bright.cn/products/serp-api/duckduckgo-search) 本仓库提供两种从 DuckDuckGo 搜索结果页(SERPs)提取数据的方案: 免费 DuckDuckGo 爬虫:用于小规模抓取 DuckDuckGo 搜索结果的工具企业级 DuckDuckGo SERP API&…

2026/10/15 13:45:40 阅读更多 →

最新新闻

ONVIF实战入门:30行Python代码调通摄像头

ONVIF实战入门:30行Python代码调通摄像头

1. 这不是ONVIF协议文档翻译,而是一份能让你当天就调通摄像头的实操手记ONVIF——1——从零到可以编程。这个标题里藏着三个关键信号:ONVIF是核心对象,1代表极简起点(不是“第一课”,而是“第一步就落地”)…

2026/10/16 21:59:18 阅读更多 →
传输网管入门:从TMN到E300,掌握SDH网管核心知识与实操

传输网管入门:从TMN到E300,掌握SDH网管核心知识与实操

简介:这是一份面向传输网管初学者的入门参考,内容基于中兴通讯传输网管开发部内部培训PPT整理,系统讲解电信管理网(TMN)基础、SDH网管概述、信产部关于EMS的技术规范,以及E300网管系统实例。资源为单个PPT演…

2026/10/16 21:59:18 阅读更多 →
C# NModbus 操作实战:从串口 RTU 到 TCP 主站与寄存器解析

C# NModbus 操作实战:从串口 RTU 到 TCP 主站与寄存器解析

简介:面向工业自动化上位机开发人员,这份资源围绕C#环境下NModbus库的应用展开,帮助解决PLC、仪表等设备基于Modbus协议的数据读写与从站模拟问题。资料对Modbus RTU、Modbus ASCII与Modbus TCP三种变体进行了说明,重点解释了RTU与…

2026/10/16 21:59:18 阅读更多 →
大模型学习路线全解析:从零基础到实战地

大模型学习路线全解析:从零基础到实战地

2026年再聊大模型学习,很多人心里其实是慌的。外面信息爆炸,今天看到一个“三天搞定大模型”的速成贴,明天又刷到“没有数理基础别碰大模型”的劝退文,越看越不知道从哪下手。我这些年带过不少零基础转大模型方向的开发者&#xf…

2026/10/16 21:59:18 阅读更多 →
大模型推理部署框架选型指南:vLLM、SGLang、TensorRT-LLM与Ollama对比

大模型推理部署框架选型指南:vLLM、SGLang、TensorRT-LLM与Ollama对比

这几年聊到大模型推理部署,绕不开的就是 vLLM、SGLang、TensorRT-LLM、Ollama、XInference 这几个名字。我最早看各种框架对比时也犯过迷糊,以为这只是不同团队做了同类工具,直到自己把一个 7B 模型从裸脚本切成 vLLM 服务,又陆续…

2026/10/16 21:59:18 阅读更多 →
Python爬虫实战:从网页剖析到数据落库的完整路径

Python爬虫实战:从网页剖析到数据落库的完整路径

简介:Python网络数据抓取代码是一份面向Python初学者的爬虫与数据采集实践包,适合数据分析师、数据科学家、机器学习与自然语言处理方向入门者自学,也可用于网站内容采集、电商信息监控、舆情监测、市场调研等典型任务。资源围绕网络请求、页…

2026/10/16 21:58:15 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →