跳转至

使用预构建组件进行智能代理开发

LangGraph 提供了低级原语和高级预构建组件,用于构建基于智能代理的应用程序。本节重点介绍预构建的即用型组件,旨在帮助你快速可靠地构建智能代理系统——无需从头实现编排、记忆或人工反馈处理。

什么是智能代理?

_智能代理_由三个组件组成:大型语言模型 (LLM)、它可以使用的一组**工具**以及提供指令的**提示**。

LLM 在循环中运行。在每次迭代中,它选择要调用的工具,提供输入,接收结果(观察),并使用该观察来通知下一个操作。循环继续,直到满足停止条件 — 通常是当智能代理收集了足够的信息来响应用户时。

image

智能代理循环:LLM 选择工具并使用它们的输出来完成用户请求。

关键特性

LangGraph 包含几个对构建健壮的、可用于生产的智能代理系统至关重要的功能:

  • 记忆集成: 原生支持_短期_(基于会话)和_长期_(跨会话持久化)记忆,在聊天机器人和助手中启用有状态行为。
  • 人工干预控制: 执行可以_无限期_暂停以等待人工反馈——不像基于 websocket 的解决方案仅限于实时交互。这使得在工作流的任何点都可以进行异步批准、更正或干预。
  • 流式传输支持: 实时流式传输智能代理状态、模型标记、工具输出或组合流。
  • 部署工具: 包含无需基础设施的部署工具。LangGraph Platform 支持测试、调试和部署。
  • Studio: 用于检查和调试工作流的可视化 IDE。
  • 支持多种生产部署选项

高级构建块

LangGraph 带有一组预构建组件,实现常见的智能代理行为和工作流。这些抽象建立在 LangGraph 框架之上,提供更快的生产路径,同时保持高级自定义的灵活性。

使用 LangGraph 进行智能代理开发可以让你专注于应用程序的逻辑和行为,而不是构建和维护状态、记忆和人工反馈的支持基础设施。

包生态系统

高级组件组织成几个包,每个包都有特定的重点。

描述 安装
langgraph-prebuilt (part of langgraph) 用于创建智能代理的预构建组件 pip install -U langgraph langchain
langgraph-supervisor 用于构建监督者智能代理的工具 pip install -U langgraph-supervisor
langgraph-swarm 用于构建集群多智能代理系统的工具 pip install -U langgraph-swarm
langchain-mcp-adapters 用于工具和资源集成的MCP 服务器接口 pip install -U langchain-mcp-adapters
langmem 智能代理记忆管理:短期和长期 pip install -U langmem
agentevals 评估智能代理性能的实用程序 pip install -U agentevals

可视化智能代理图

使用以下工具来可视化由 @[create_react_agent][] 生成的图,并查看相应代码的大纲。它允许你探索由以下内容定义的智能代理基础设施:

  • tools: 智能代理可以用来执行任务的工具列表(函数、API 或其他可调用对象)。
  • pre_model_hook: 在调用模型之前调用的函数。它可以用于压缩消息或执行其他预处理任务。
  • post_model_hook: 在调用模型之后调用的函数。它可以用于实现护栏、人工干预流程或其他后处理任务。
  • response_format: 用于约束最终输出类型的数据结构,例如 pydantic BaseModel

功能

graph image

以下代码片段展示了如何使用 @[create_react_agent][] 创建上述智能代理(及其底层图):

包生态系统

高级组件组织成几个包,每个包都有特定的重点。

描述 安装
langgraph 用于创建智能代理的预构建组件 npm install @langchain/langgraph @langchain/core
langgraph-supervisor 用于构建监督者智能代理的工具 npm install @langchain/langgraph-supervisor
langgraph-swarm 用于构建集群多智能代理系统的工具 npm install @langchain/langgraph-swarm
langchain-mcp-adapters 用于工具和资源集成的MCP 服务器接口 npm install @langchain/mcp-adapters
agentevals 评估智能代理性能的实用程序 npm install agentevals

可视化智能代理图

使用以下工具来可视化由 @[createReactAgent][create_react_agent] 生成的图,并查看相应代码的大纲。它允许你探索由以下内容定义的智能代理基础设施:

  • tools: 智能代理可以用来执行任务的工具列表(函数、API 或其他可调用对象)。
  • preModelHook: 在调用模型之前调用的函数。它可以用于压缩消息或执行其他预处理任务。
  • postModelHook: 在调用模型之后调用的函数。它可以用于实现护栏、人工干预流程或其他后处理任务。
  • responseFormat: 用于约束最终输出类型的数据结构(通过 Zod 模式)。

功能

graph image

以下代码片段展示了如何使用 @[createReactAgent][create_react_agent] 创建上述智能代理(及其底层图):