Skip to main content
LangChain v1 是一个专注、可用于生产的构建智能体的基础框架。 我们围绕三个核心改进简化了框架:

createAgent

在 LangChain 中构建智能体的新标准方式,取代了 LangGraph 中的 createReactAgent,提供了更简洁、更强大的 API。

标准内容块

新的 contentBlocks 属性,为所有提供商提供对现代 LLM 功能的统一访问。

简化的包

langchain 包已简化,专注于智能体的核心构建模块,遗留功能已移至 @langchain/classic
要升级,请执行:
有关完整更改列表,请参阅 迁移指南

createAgent

createAgent 是 LangChain 1.0 中构建智能体的标准方式。它提供了比从 LangGraph 导出的预构建 createReactAgent 更简单的接口,同时通过使用中间件提供了更大的自定义潜力。
在底层,createAgent 构建于基本的智能体循环之上——调用模型,让其选择要执行的工具,然后在不再调用工具时结束:
核心智能体循环示意图
更多信息,请参阅 智能体

中间件

中间件是 createAgent 的定义性特性。它使 createAgent 高度可定制,提升了你可以构建的功能上限。 优秀的智能体需要 上下文工程:在正确的时间将正确的信息传递给模型。中间件通过一个可组合的抽象,帮助你控制动态提示、对话摘要、选择性工具访问、状态管理和防护栏。

预构建中间件

LangChain 为常见模式提供了一些 预构建中间件,包括:
  • summarizationMiddleware:在对话历史过长时进行压缩
  • humanInTheLoopMiddleware:在敏感工具调用前需要人工批准
  • piiRedactionMiddleware:在发送给模型前对敏感信息进行脱敏

自定义中间件

你也可以构建自定义中间件以满足特定需求。 通过使用 createMiddleware 函数实现以下任意钩子来构建自定义中间件:
中间件流程图
自定义中间件示例:
更多信息,请参阅 完整的中间件指南

基于 LangGraph 构建

由于 createAgent 基于 LangGraph 构建,你自动获得对长期运行和可靠智能体的内置支持,包括:

持久化

通过内置检查点,对话自动跨会话持久化

流式处理

实时流式传输令牌、工具调用和推理轨迹

人在回路

在敏感操作前暂停智能体执行以等待人工批准

时间旅行

将会话回滚到任意点,探索替代路径和提示
你无需学习 LangGraph 即可使用这些功能——它们开箱即用。

结构化输出

createAgent 改进了结构化输出生成:
  • 主循环集成:结构化输出现在在主循环中生成,无需额外的 LLM 调用
  • 结构化输出策略:模型可以在调用工具和使用提供商端结构化输出生成之间选择
  • 成本降低:消除了额外 LLM 调用带来的额外费用
错误处理:通过 ToolStrategyhandleErrors 参数控制错误处理:
  • 解析错误:模型生成的数据与所需结构不匹配
  • 多个工具调用:模型为结构化输出模式生成了 2 个或更多工具调用

标准内容块

大多数包已发布 1.0 版本。目前只有以下包支持新的内容块:
  • langchain
  • @langchain/core
  • @langchain/anthropic
  • @langchain/openai
计划未来更广泛地支持内容块。

优势

  • 提供商无关:无论使用哪个提供商,都可以使用相同的 API 访问推理轨迹、引用、内置工具(网络搜索、代码解释器等)和其他功能
  • 类型安全:所有内容块类型都有完整的类型提示
  • 向后兼容:标准内容可以 延迟加载,因此没有相关的破坏性更改
更多信息,请参阅我们的 内容块指南

简化的包

LangChain v1 简化了 langchain 包的命名空间,专注于智能体的核心构建模块。该包仅暴露最有用和最相关的功能: 其中大部分为了方便从 @langchain/core 重新导出,为你提供了一个专注于构建智能体的 API 表面。

@langchain/classic

遗留功能已移至 @langchain/classic,以保持核心包的轻量和专注。

@langchain/classic 包含的内容

如果你使用任何这些功能,请安装 @langchain/classic
然后更新你的导入:

报告问题

请在 GitHub 上使用 'v1' 标签 报告在 1.0 版本中发现的任何问题。

其他资源

LangChain 1.0

阅读公告

中间件指南

深入中间件

智能体文档

完整的智能体文档

消息内容

新的内容块 API

迁移指南

如何迁移到 LangChain v1

GitHub

报告问题或贡献代码

另请参阅