跳到内容

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

LangGraph 提供了低级原语和高级预构建组件,用于构建基于智能体的应用程序。本节重点介绍预构建的、开箱即用的组件,这些组件旨在帮助您快速可靠地构建智能体系统,而无需从头开始实现编排、内存或人工反馈处理。

什么是智能体?

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

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

image

智能体循环:LLM 选择工具并使用它们的输出来满足用户请求。

主要特性

LangGraph 包含构建健壮的、生产就绪的智能体系统所需的几项关键能力

  • **内存集成**:原生支持*短期*(基于会话的)和*长期*(跨会话持久的)内存,使聊天机器人和助手能够实现有状态行为。
  • **人工干预控制**:执行可以*无限期*暂停,等待人工反馈——这与仅限于实时交互的基于 WebSocket 的解决方案不同。这使得在工作流的任何时候都能进行异步批准、纠正或干预。
  • **流式传输支持**:智能体状态、模型令牌、工具输出或组合流的实时流式传输。
  • **部署工具**:包括无需基础设施的部署工具。**LangGraph 平台**支持测试、调试和部署。

高级构建块

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

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

包生态系统

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

描述 安装
langgraph-prebuilt(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 创建上述智能体(及底层图)