基于LangGraph的Agent

Langgraph实战-多Agent-主副Agent协同 如果单个Agent需要专门从事多个领域的工作或管理许多工具,它可能会很吃力。为了解决这个问题,你可以将Agent分解成更小的、独立的Agent,并将它们组合成一个多Agent系统。 在多Agent系统中,Agent之间需要相互通信。它们通过 “交接”(handoffs)进行通信。“交接 ”是一种描述将控制权交给哪个Agent以及向该Agent发送有效载荷的基本要素。 阅读详情

基于LangGraph的Agent

LangGraph 专为希望构建强大、适应性的 AI 智能体的开发者而设计。开发者选择 LangGraph 的原因是:

  • 可靠性和可控性:通过将模型和人工干预相结合,LangGraph 可为长时间运行的工作流注入上下文,使您的智能体保持正常运行。
  • 低层级和可扩展性:使用完全描述性的底层级语言构建自定义智能体,不受限制自定义的偏执约束。设计可扩展的多智能体系统,其中每个智能体都为您的用例量身定制特定角色。
  • 一流的流式传输支持:通过多模态流式传输和中间步骤流式传输,LangGraph 让用户实时清晰地了解智能体的推理和行动过程。

LangGraph 支持两种对于构建对话代理至关重要的内存类型:

  • 短期内存:通过在会话中维护消息历史来跟踪正在进行的对话。
  • 长期内存:在不同会话之间存储用户特定或应用程序级别的数据。

常见问题:
使用 LangGraph 需要使用 LangChain 吗?它们有什么区别?

不。LangGraph 是一个用于复杂代理系统的编排框架,比 LangChain 代理更底层且更可控。 LangChain
提供了与模型及其他组件交互的标准接口,适用于直接的链式操作和检索流程。


LangGraph 与其他代理框架有何不同?

其他代理框架可以处理简单、通用的任务,但对于公司定制的复杂任务则力不从心。LangGraph
提供了一个更具表达力的框架来处理公司独特的任务,而不会将用户限制在单一的黑盒认知架构中。


LangGraph 会影响我的应用性能吗?

LangGraph 不会给您的代码增加任何开销,并且是专门为流式工作流设计的。


LangGraph 是开源的吗?它是免费的吗?

是的。LangGraph 是一个采用 MIT 许可的开源库,可免费使用。


LangGraph 和 LangGraph 平台有何不同?

LangGraph 是一个有状态的编排框架,为代理工作流带来了额外的控制。LangGraph 平台是一项用于部署和扩展 LangGraph
应用的服务,它提供了一个有主见的 API 来构建代理用户体验,并集成了一个开发者工作室。


LangGraph 平台是开源的吗?

不。LangGraph 平台是专有软件。

LangGraph 平台有一个免费的自托管版本,可访问基本功能。云 SaaS
部署选项在测试版期间免费,但最终将成为付费服务。我们将在收费前始终提供充分的通知,并以优惠价格回馈我们的早期用户。自托管部署选项是付费服务。联系我们的销售团队了解更多。

欲了解更多信息,请参阅我们的 LangGraph 平台定价页面。


LangGraph 是否支持不带工具调用的 LLM?

是的!您可以将 LangGraph 与任何 LLM 一起使用。我们使用支持工具调用的 LLM 的主要原因是,这通常是让 LLM
决定做什么的最便捷方式。如果您的 LLM 不支持工具调用,您仍然可以使用它——您只需要编写一些逻辑来将原始 LLM
字符串响应转换为要执行的操作的决策。


LangGraph 是否支持开源 LLM?

是的!LangGraph 对于底层使用的 LLM 完全不挑剔。我们在大多数教程中使用闭源 LLM 的主要原因是它们无缝支持工具调用,而开源
LLM 通常不支持。但是工具调用并非必需(请参阅本节),因此您可以完全使用 LangGraph 与开源 LLM。


我可以在不登录 LangSmith 的情况下使用 LangGraph Studio 吗?

是的!您可以使用 LangGraph Server 的开发版本在本地运行后端。这会连接到作为 LangSmith 一部分托管的 Studio
前端。如果您将环境变量 LANGSMITH_TRACING 设置为 false,则不会向 LangSmith 发送任何跟踪。

什么是 Agent?

人类在复杂的模式识别任务中表现卓越,但通常需要借助工具(如书籍、搜索引擎或计算器)来补充先验知识以得出结论。同理,生成式 AI 模型可通过训练使用工具获取实时信息或建议的实际动作。例如:

  • 模型可利用数据库检索工具获取客户购买历史以生成个性化购物推荐
  • 基于用户查询,模型可通过 API 调用发送邮件或完成金融交易

为实现此能力,模型需具备:

  1. 外部工具集访问权限
  2. 自主规划与执行任务的推理能力

这种结合推理逻辑与外部信息访问的系统,即构成智能体(Agent)。

智能体的认知架构中有三个基本组件:模型(Model)、工具(Tools)以及一个提供指令的提示。

LLM 在一个循环中运行。在每次迭代中,它会选择一个要调用的工具,提供输入,接收结果(一个观察),并利用该观察来指导下一个动作。循环会一直持续,直到满足停止条件——通常是 Agent 已经收集到足够的信息来响应用户时。

Anthropic 将 Agent 系统划分为两类:

  1. 第一类是 workflow。遵循预定义的工作流,编排 LLM 和工具,固定代码路径。

  2. Agent:此类 Agent 被定义为完全自主的系统,这些系统在较长时间内独立运行,可以动态地指导自身流程和工具使用的系统。通过自身的推理、规划能力,自主控制,完成任务。

1. LangGraph 本地服务

LangGraph CLI 是一个多平台命令行工具,用于在本地构建和运行 LangGraph API 服务器。生成的服务器包含您的图的所有运行、线程、助手等的 API 端点,以及运行您的代理所需的其他服务,包括用于检查点和存储的托管数据库。

LangGraph CLI 提供以下核心功能

命令描述
langgraph build构建一个可直接部署的 LangGraph API 服务器的 Docker 镜像。
langgraph dev启动一个轻量级开发服务器,无需 Docker 安装。此服务器非常适合快速开发和测试。此功能在 0.1.55 及更高版本中可用。
langgraph dockerfile生成一个 Dockerfile,可用于为 LangGraph API 服务器构建镜像并部署实例。如果您想进一步定制 Dockerfile 或更自定义的方式部署,此处能很有用。
langgraph up在本地 Docker 容器中启动一个 LangGraph API 服务器实例。这要求 Docker 服务器在本地运行。本地开发需要 LangSmith API 密钥,生产使用需要许可证密钥。

安装和使用步骤

一、创建 Python 虚拟环境

虚拟环境的安装步骤

  1. 安装好 Python 解释器:
    Python >= 3.11 is required.

  2. 安装虚拟环境库,在 cmd 中输入:

pip install virtualenv
  1. 创建虚拟环境,在 cmd 中切换到需要创建虚拟环境的目录下,执行:
。。。>D:\python-3.9\Scripts\virtualenv fastapi_env

virtualenv env_name
  1. 激活虚拟环境,在 cmd 中进入到第三步创建的 env_name/Scripts 目录下,执行:
activate

执行成功后,在 cmd 中,当前输入行前面会有 (env_name) 的前缀
在当前状态下,使用 pip 就是在虚拟环境中安装第三方库了

  1. 退出虚拟环境,cmd 中输入:
deactivate
二、安装 LangGraph CLI
#Python >= 3.11 is required.
pip install --upgrade "langgraph-cli[inmem]"
三、创建 LangGraph 应用

从 new-langgraph-project-python 模板或 new-langgraph-project-js 模板创建一个新应用。此模板演示了一个基于 Python 的代码生成器,可以根据自己的逻辑进行扩展。

注意: 如果您使用 langgraph new 命令时未指定模板,将显示一个交互式菜单,允许您从可用模板列表中进行选择。

langgraph new path/to/your/app --template new-langgraph-project-python
四、安装项目依赖

在您的 LangGraph 应用的根目录下,以编辑模式安装依赖项,以便服务器使用您的本地更改。

在 LangGraph 中,pyproject.toml 代替传统的 setup.py 和 requirements.txt,可能包含以下扩展配置:

  • 依赖分组: 如 [project.optional-dependencies] 定义 dev(开发工具)和 test(测试框架)依赖。
  • 动态版本控制: 通过 requires-python = ">=3.9" 指定 Python 版本兼容性。
  • CI/CD 集成: 通过 [tool.*] 配置与 GitHub Actions 或 GitLab CI 的交互。
    在这里插入图片描述
cd path/to/your/app
# pyproject.toml 对应依赖安装
pip install -e . 
五、修改 graph.py 的代码
# 本地私有化部署的大模型
llm = ChatOpenAI(
    model='qwen3-8b',
    temperature=0.8,
    api_key='xx',
    base_url="http://localhost:6006/v1",
    extra_body={'chat_template_kwargs': {'enable_thinking': False}},
)

def get_weather(city: str) -> str:
    """Get weather for a given city."""
    return f"It's always sunny in {city}!"

graph = create_react_agent(
    llm,
    tools=[get_weather],
    prompt="You are a helpful assistant"
)
六、启动 LangGraph 服务器

langgraph dev 命令以内存模式启动 LangGraph 服务器。此模式适用于开发和测试目的。对于生产用途,请部署 LangGraph 服务器并使其能够访问持久存储后端。

命令选项:

选项默认描述
-c, --config 文件langgraph.json声明依赖项、图和环境变量的配置文件的路径
–host TEXT127.0.0.1服务器绑定的主机
–port 整数2024服务器绑定的端口
–no-reload禁用自动重载
–n-jobs-per-worker 整数每个工作进程的作业数。默认为 10
–debug-port 整数调试器监听的端口
–wait-for-clientFALSE等待调试器客户端连接到调试端口后再启动服务器
–no-browser服务器启动时跳过自动打开浏览器
–studio-url TEXT要连接的 LangGraph Studio 实例的 URL。默认为 https://smith.langchain.com
–allow-blockingFALSE不为代码中的同步 I/O 阻塞操作引发错误(在 0.2.6 中添加)
–tunnelFALSE通过公共隧道(Cloudflare)暴露本地服务器,以便远程前端访问。这避免了 Safari 等浏览器或网络阻塞 localhost 连接的问题
–help显示命令文档

七、测试和访问 Agent 的 API
1. LangGraph Studio

LangGraph Studio 是一个专用 UI,您可以将其连接到 LangGraph API 服务器,以在本地可视化、交互和调试您的应用。通过访问 langgraph dev 命令输出中提供的 URL,在 LangGraph Studio 中测试您的 Agent 和图。

2. Python SDK 测试
pip install langgraph-sdk

异步测试:

from langgraph_sdk import get_client
import asyncio

client = get_client(url="http://localhost:2024")

async def main():
    async for chunk in client.runs.stream(
        None,  # Threadless run
        "agent",  # Name of assistant. Defined in langgraph.json.
        input={
            "messages": [
                {
                    "role": "human",
                    "content": "What is LangGraph?",
                }
            ],
        },
    ):
        print(f"Receiving new event of type: {chunk.event}...")
        print(chunk.data)
        print("\n\n")

asyncio.run(main())

同步测试:

from langgraph_sdk import get_sync_client

client = get_sync_client(url="http://localhost:2024")

for chunk in client.runs.stream(
    None,  # Threadless run
    "agent",  # Name of assistant. Defined in langgraph.json.
    input={
        "messages": [
            {
                "role": "human",
                "content": "What is LangGraph?",
            }
        ],
    },
    stream_mode="messages-tuple",
):
    print(f"Receiving new event of type: {chunk.event}...")
    print(chunk.data)
    print("\n\n")

	# if isinstance(chunk.data, list) and 'type' in chunk.data[0] and chunk.data[0]['type'] == 'AIMessageChunk':
        # print(chunk.data[0]['content'], end='')

#if isinstance(chunk.data, list) and 'type' in chunk.data[0] and chunk.data[0]['type'] == 'AIMessageChunk':
    #print(chunk.data[0]['content'], end='\n')        
3. JavaScript SDK测试

安装 LangGraph JS SDK

npm install @langchain/langgraph-sdk

向 LangGraph 服务区发送消息:

const { Client } = await import("@langchain/langgraph-sdk");

// only set the apiUrl if you changed the default port when calling langgraph dev
const client = new Client({ apiUrl: "http://localhost:2024" });

const streamResponse = client.runs.stream(
    null, // Threadless run
    "agent", // Assistant ID
    {
        input: {
            messages: [
                { role: "user", content: "What is LangGraph?" }
            ]
        },
        streamMode: "messages-tuple",
    }
);

for await (const chunk of streamResponse) {
    console.log(chunk);
    console.log(JSON.stringify(chunk.data));
    console.log("\n\n");
}
4. REST API测试:
curl -s --request POST \
    --url "http://localhost:2024/runs/stream" \
    --header 'Content-Type: application/json' \
    --data "{
    \"assistant_id\": \"agent\",
    \"input\": {
        \"messages\": [
            {
                \"role\": \"human\",
                \"content\": \"What is LangGraph?\"
            }
        ]
    }
}"

2. Tool工具的定义

在这里插入图片描述

在构建Agent时,您需要为其提供一个它可以使用的工具列表。除了实际调用的函数之外,工具还包括几个组件:

属性类型描述
名称str在提供给LLM或代理的一组工具中必须是唯一的。
描述str描述工具的作用。被LLM或代理用作上下文。
args_schemapydantic.BaseModel可选但推荐,如果使用回调处理程序则为必需。它可用于为预期参数提供更多信息(例如,少量示例)或验证。
return_directboolean仅与代理相关。当为True时,在调用给定工具后,代理将停止并将结果直接返回给用户。

注意: 如果工具具有精心选择的名称、描述和args_schema,模型将表现得更好。

LangChain 支持从以下对象创建工具:

  1. 函数;
  2. LangChain Runnables;
  3. 通过从 BaseTool 子类化 – 这是最灵活的方法,它提供了最大的控制程度,但代价是需要付出更多的努力和编写更多的代码。

一、从函数创建工具

这个 @tool 装饰器是定义自定义工具的最简单方法。默认情况下,装饰器使用函数名称作为工具名称,但可以通过将字符串作为第一个参数传递来覆盖。此外,装饰器将使用函数的文档字符串作为工具的描述 - 因此必须提供文档字符串。请注意,@tool 支持解析注释、嵌套模式和其他特性:


二、从可运行对象(Runnable)创建工具

接受字符串或 dict 输入的 LangChain Runnables 可以使用 as_tool 方法转换为工具,该方法允许为参数指定名称、描述和其他模式信息。

三、子类化 BaseTool

可以通过从 BaseTool 子类化来定义自定义工具。这提供了对工具定义的最大控制,但需要编写更多代码。


3. Agent的上下文和记忆

一、上下文

上下文包括消息列表之外的任何数据,这些数据可以影响代理行为或工具执行。这可以是:

  • 运行时传入的信息,如 user_id 或 API 凭据。
  • 多步推理过程中更新的内部状态。
  • 来自先前交互的持久记忆或事实。

LangGraph 提供了三种提供上下文的主要方式:

类型描述可变?生命周期
Configurable在运行开始时传入的数据❌每次运行
AgentState执行期间可更改的动态数据✅每次运行或对话
长期记忆(存储)可在对话之间共享的数据✅跨对话

上下文用途

您可以使用上下文来:

  • 调整模型看到的系统提示
  • 为工具提供必要的输入
  • 在正在进行的对话中跟踪事实

Configurable

配置适用于不可变数据,如用户元数据或 API 密钥。当您有在运行期间不会更改的值时使用。

使用保留用于此目的的键 “configurable” 指定配置。

agent.invoke(
    {"messages": [{"role": "user", "content": "hi!"}]},
    config={"configurable": {"user_id": "user_123"}}
)

案例:通过 Configurable 传入参数,来动态设置系统提示词

状态 AgentState(可变上下文)

状态在运行期间充当 Agent 的记忆,可以短期存储也可以长期存储。它保存在执行期间演变的动态数据,例如从工具或 LLM 输出派生的值。

二、记忆存储

这是一个强大的功能,允许您在多次调用中持久化代理的状态。否则,状态仅限于单次运行。
在这里插入图片描述

短期存储:线程级存储

短期存储使 Agent 能够跟踪多轮对话。要使用它,您必须:

  1. 在创建代理时提供 checkpointer。checkpointer 可以实现代理状态的持久性。
  2. 在运行代理时在配置中提供 thread_id。thread_id 是对话会话的唯一标识符。
# 内存:开发环境
from langgraph.checkpoint.memory import InMemorySaver

checkpointer = InMemorySaver()

# 在生产环境中,使用由数据库支持的检查点
from langgraph.checkpoint.postgres import PostgresSaver

DB_URI = "postgresql://postgres:postgres@localhost:5432/postgres"

with PostgresSaver.from_conn_string(DB_URI) as checkpointer:
    # 使用 checkpointer 的代码块
    pass

# 必须安装:pip install -U "psycopg[binary,pool]" langgraph langgraph-checkpoint-postgres

# 生产环境:Redis
from langgraph.checkpoint.redis import RedisSaver

# pip install -U langgraph langgraph-checkpoint-redis

DB_URI = "redis://localhost:6379"

with RedisSaver.from_conn_string(DB_URI) as checkpointer:
    # 使用 checkpointer 的代码块
    pass
长期存储:跨线程存储

使用长期内存来跨对话存储用户特定或应用程序特定的数据。这对于聊天机器人等应用程序非常有用,您可能希望记住用户偏好或其他信息。

要使用长期记忆,您需要:

  1. 配置一个存储以在调用之间持久化数据。
  2. 使用 get_store 函数从工具或提示中访问存储。
# 开发环境中:内存
from langgraph.store.memory import InMemoryStore

store = InMemoryStore()

# 在生产环境中,使用由数据库支持的存储
from langgraph.store.postgres import PostgreSQLStore
from langgraph.checkpoint.postgres import PostgreSQLSaver

DB_URI = "postgresql://postgres:postgres@localhost:5432/postgres"

with (
    PostgreSQLStore.from_conn_string(DB_URI) as store,
    PostgreSQLSaver.from_conn_string(DB_URI) as checkpointer,
):
    store.setup()
    checkpointer.setup()

# Redis 存储
from langgraph.store.redis import RedisStore
from langgraph.checkpoint.redis import RedisSaver

DB_URI = "redis://localhost:6379"
with (
    RedisStore.from_conn_string(DB_URI) as store,
    RedisSaver.from_conn_string(DB_URI) as checkpointer,
):
    store.setup()
    checkpointer.setup()

需要的安装命令:

# PostgreSQL
pip install -U "psycopg[binary,pool]" langgraph langgraph-checkpoint-postgres langgraph-store-postgres

# Redis
pip install -U langgraph langgraph-checkpoint-redis langgraph-store-redis

注意:

  • 首次使用 Postgres 存储时,您需要调用 store.setup()
  • 首次使用 Redis 存储时,您需要调用 store.setup(), checkpointer.setup()

【代码仓库】https://github.com/monkeyhlj/LLM_development_learning
【参考】https://docs.langchain.com/
【参考】https://www.bilibili.com/video/BV1Uhz4BWEEw

(三)初始化langgraph-py-agent项目 本文介绍了使用Poetry构建langgraph-py-agent项目的完整过程。主要内容包括:1)通过Poetry初始化项目、配置国内源和安装依赖;2)使用FastAPI搭建基础Web服务并简化启动命令;3)集成LangGraph环境,配置大模型API密钥并测试接口;4)对比分析Gunicorn和Uvicorn两种服务器的特性差异,给出异步框架的部署建议。该项目实现了LangGraph案例的后端服务,采用现代Python开发工具链,适合构建基于大模型的AI应用。 阅读详情

相关推荐

深入浅出LangGraph AI Agent智能体开发教程(一)—全面认识LangGraph

本期分享从LangGraph与LangChain的对比出发,介绍了LangGraph的三层核心架构、完整生态工具,带大家全面认识最火热最全面的智能体开发框架LangGraph。

weixin_42782643的博客 1371

Langgraph 之 Agent

LangGraph新版功能,以及更新后ReactAgent的简单使用

分享各种测试中的用到的内容,一起学习 885

c转c++——蓝桥杯

在这里,`int &i` 表示 `i` 是一个整型的引用变量,而不是一个拷贝,这意味着在循环中对 `i` 的修改会影响到数组 `arr` 中对应位置的值。arr则是需要遍历的数组。一、为啥要转C++:之前只学过C语言,然后为了蓝桥杯苦哈哈敲了C好久,偶然听了别人的意见去看了一下C++后发现简直太香了——C++不像C要把底层逻辑自己敲出来,而是可以直接调用STL函数库(比如排序,C语言可能要敲个几十行代码C++直接用调用sort函数就可以了),而且C++完全兼容C语言,里面的语法全部可以用C替换。

smwymzqbyl的博客 2045

Langgraph 的 Planning Agent 深度解析

Langgraph 是一个集成化的框架,旨在简化智能代理的开发过程。它通过提供语言理解、知识管理和规划能力,使开发者能够创建能够与用户进行自然语言交流的智能代理。Langgraph 采用模块化设计,使得每个功能组件都可以独立配置和扩展。Planning agent 是一种智能代理,能够根据特定目标生成可执行的行动计划。与传统的基于规则的代理相比,planning agent 具备更高的灵活性和适应性,能够处理复杂的决策和动态环境。

TaloyerG的博客 3180

ArcMap对遥感图像进行语义分割标注

使用arcmap对遥感图像进行语义分割标注

qq_41708916的博客 4045

OpenVINS实战指南:从环境搭建到RGB-D相机实时建图

本文提供了一份详细的OpenVINS实战指南,涵盖从Ubuntu与ROS环境搭建、依赖安装与编译调试,到连接RGB-D相机进行实时建图的完整流程。重点解决了RealSense D435i等设备的驱动配置、话题对齐及常见问题,并分享了传感器标定与性能优化技巧,帮助开发者快速实现稳定高效的视觉惯性里程计系统。

weixin_29201313的博客 483

LangGraph 构建Agent

LangGraph是LangChain团队推出的状态化工作流框架,专为构建复杂多步骤的AI代理和工作流设计。其核心是将AI应用逻辑抽象为图结构,支持循环、分支和状态持久化,适用于需要长期记忆和多轮决策的场景。与LangChain相比,LangGraph更专注于流程管理,两者常结合使用。

weixin_42828342的博客 1324

1991-2020年气候背景数据集

2011 年,国家气象信息中心对 1951-2010 年 2400 余个地面站气温、气压、降水、湿度、日照等 19 大要素项的定时观测资料和日极值资料中由数字化过程中引起的系统性问题(例如数字化遗漏、整段拷贝等问题)进行质量检测、质量控制和错误数据的更正,形成较高质量的地面基础资料集。1991-2020年中国地面气候值数据集提供了中国2438个站点的气温、降水、气压、风向风速、相对湿度、水汽压、云、天气现象、能见度、蒸发、积雪、地温、冻土、日照共14个要素的气候背景信息。数据时间:30年平均。

地球资源数据云的官方博客 1597

使用DeepSeek来构建LangGraph Agent

随着的发布,我们不得不把目光聚焦在这个能赶超多个顶流大模型的模型身上,它主要是其在后训练阶段大规模使用了强化学习技术,在仅有极少标注数据的情况下,极大提升了模型推理能力。在数学、代码、自然语言推理等任务上,性能比肩OpenAI o1正式版。为了更好的了解它的性能,我们这篇文章来尝试用它来构建Agent。

weixin_40143861的博客 2439

使用mne包来对脑电数据进行预处理(一)

MNE(MNE-Python)是一个用于处理脑电(EEG)、磁图(MEG)和其他神经科学数据的Python库。它提供了丰富的功能,包括数据加载、预处理、分析和可视化,旨在帮助研究人员和神经科学家更轻松地进行脑电数据的处理和分析。在本文中,我们使用mne来对不同的格式的脑电数据集进行数据读取。

m0_71596228的博客 4303

AIGC实战——变分自编码器(Variational Autoencoder, VAE)

变分自编码器通过在模型中引入随机性,并限制潜空间中的点的分布来解决自编码器存在的问题。只需进行一些微小的调整,就可以将自编码器转换为变分自编码器,从而使其成为真正的生成模型。在本节中,我们介绍了变分自编码器的基本原理,并使用 `Keras` 实现了一个变分自编码器用于生成 Fashion-MNIST 图像。

盼小辉丶的博客 1万+

LangGraph构建Agent工作流应用

所以,Agent工作流的核心思想是先制定一个多步骤计划,然后逐项执行。 完成一项特定任务后,您可以重新审视计划并根据需要进行修改。

m0_59235945的博客 1393

【OpenClaw从入门到精通】第23篇:OpenClaw办公自动化实战—报表生成+文档批量处理+跨系统同步(2026实操进阶版)

本文聚焦OpenClaw在办公自动化场景的进阶应用,针对职场中高频且重复的报表生成、文档批量处理、跨系统数据同步三大痛点,提供从环境搭建、原理讲解到完整代码实现的全流程实操指南。方案基于Python生态工具链(pandas、Playwright、PyPDF2等)与OpenClaw的低代码编排能力,兼顾新手入门与进阶提升——新手可直接复用代码快速落地,进阶读者可学习流程编排逻辑进行二次开发。所有案例均基于真实办公场景设计,部分虚拟场景已明确标注,代码经本地环境验证可复现。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 965

LangGraph之Tool Calling Agent 中ToolNode的使用

在LangGraph的代理架构体系中,Router Agent是基础形式,在此之上构建的Tool Calling Agent(工具调用代理)极大地拓展了大模型的应用能力。它允许大模型根据用户输入自主选择并调用合适工具,有效解决与外部系统交互时自然语言与特定输入模式不匹配的问题,显著增强了模型处理复杂任务的能力。

qq_43588095的博客 2003

从零开始学 AUTOSAR:深入浅出 SAE J1939 诊断通信管理器(J1939Dcm)深度完整版

SAE J1939 是美国汽车工程师学会制定的重型车辆 CAN 总线通信标准,覆盖卡车、客车、工程机械、农机、船舶等,是商用车领域的 “通用语言”。基于CAN 2.0B 扩展帧(29 位 ID)(车规主流)PGN(参数组号)+ SPN(可疑参数号)核心标准:J1939-21:数据链路层(CAN 帧格式、地址声明)J1939-71:应用层(普通信号、报文)诊断层(核心!J1939Dcm 依据)J1939-81:网络管理(地址管理、节点检测)

getusushu的博客 114

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

一个简单的langgraph agent系统

本文基于langgraph服务和Agent Chat UI搭建一个简单前后端配合的Agent。

zhangbaolin的专栏 1124

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

LangGraph范式-sql agent

SQLAgent智能体通过一系列步骤处理用户查询:首先从数据库中获取可用表并确定相关表,接着获取这些表的架构信息。基于用户问题和架构,智能体生成SQL查询,并使用语言模型检查查询中的常见错误。

ms44的专栏 1447

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

LangGraph 与 LangChain 关系及 Agent 使用

本文结合代码示例介绍了LangChain及其衍生生态LangGraph的核心概念与应用。

weixin_51371642的博客 1533

使用langgraph构建agent

LangGraph 是 LangChain 的一个分支或扩展,专注于构建和运行基于图的、有状态的、多参与者的工作流。它通过将复杂的任务分解为多个节点(步骤),并通过边(依赖关系)连接这些节点,来实现更灵活和强大的任务编排。目前大模型agent特别火,agent框架也特别多,比如langchain、openai agent、autoGen等等,从这些不同的框架中,可以学习它们的构建思路,来完善自己的agent。参考。

sinat_28694519的博客 1120

第 3 篇:让 Agent 学会分工,LangGraph 构建多 Agent系统

本篇介绍了如何用 LangGraph 构建多 Agent 协作系统。通过 Dispatcher 进行意图分类和动态路由,将任务分发给多个专业 Agent,支持串行和并行,解决单Agent职责混乱问题。

qq_52732369的博客 450

langchain入门系列之八 langgraph多agent示例

langgraph多agent系统示例

笑笑布丁的博客 2477

别再死磕 Chain 了!想做复杂的 Agent,你必须得上 LangGraph

好了,说了这么多,我想强调一点:LangGraph 不是要取代 LangChain,它是 LangChain 生态的一次能力升级。做简单任务,用 LangChain LCEL,依然是最快、最优雅的选择。当你的 Agent 需要“大脑会思考、决策能转弯、遇事能复盘”时,别犹豫,直接上 LangGraph。掌握了 LangGraph,感觉就像是从二维的平面思考,升级到了三维的立体构建。它给我们的想象力插上了翅膀,能去构建那些我们以前觉得不可能的复杂智能体。

m0_64363449的博客 864

langgraph构建一个传统的agent链路

上一篇博客中,我们采取的AgentExcutor,可以发现人为参与的部分其实很少,用它来实现很简单的功能或许可行,但是它有一个致命的缺陷,这也是langchain团队开发langgraph的一个重要原因——没有断点。利用tool修饰的函数,它的输入和输出是随意的,是根据你的构思需求来的,比如我就想直接输入用户的query,然后输出就是答案,两个都是字符串的形式,完全ok。上面的代码是做一些准备工作,我所提供的所有源码,都可以使用国内和国外的所有api,本例依然采用的是qwen的模型。本篇博客需要和上一篇。

weixin_44586881的博客 1191

LangGraph实现工具调用Agent

复制name: strdesc: str1.复制tools = [Tool(desc="用于执行基础数学运算,如加法、减法、乘法和除法。输入格式为:`2 + 2`,返回结果为 `4`。",),Tool(desc="用于提供医学建议。输入格式为:`请给我讲一个关于 {topic} 的医学建议`,返回结果为医学建议。",),

jike007gt的博客 753

第二章节使用LangGraph构建Agent智能体

Agent,这是LangGraph后续构建Graph图的基础。但其实Agent并不是LangGraph框架当中独有的。甚至Agent 并不是一种技术,而是我们设想的一种理想的大模型工作模式。那么到底什么是Agent?或者说AI行业心目中理想 的Agent应该是什么样子呢?LangGraph实际上给我们提供了一种理解。而这个理解,或许比具体实现更重要。这一章节,我们重点在演练LangGraph中Agent的功能。

weixin_46994548的博客 1176
上一篇: AI Agent开发课程笔记记录 - 提升篇 About RAG
下一篇: LangChain - V1.0
monkeyhlj
博客等级 码龄9年 1万+粉丝 184原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值