createAgent
在 LangChain 中构建智能体的全新标准方式,用更简洁、更强大的 API 替代 LangGraph 中的
createReactAgent。标准内容块
新增
contentBlocks 属性,为跨所有提供商的现代 LLM 功能提供统一访问。精简的包
langchain 包已精简,专注于智能体的核心构建块,遗留功能已移至 @langchain/classic。createAgent
createAgent 是 LangChain 1.0 中构建智能体的标准方式。它提供了比 LangGraph 导出的预置 createReactAgent 更简单的接口,同时通过中间件提供了更大的自定义潜力。
createAgent 构建于基础的智能体循环之上——调用模型,让其选择要执行的工具,当不再调用工具时结束:

中间件
中间件是createAgent 的标志性特性。它使 createAgent 具有高度可定制性,提升了你构建能力的上限。
优秀的智能体需要 上下文工程:在正确的时间将正确的信息传递给模型。中间件帮助你通过可组合的抽象,控制动态提示、对话摘要、选择性工具访问、状态管理和护栏。
预置中间件
LangChain 提供了一些适用于常见模式的 预置中间件,包括:summarizationMiddleware:当对话历史过长时压缩它humanInTheLoopMiddleware:对敏感的工具调用要求审批piiRedactionMiddleware:在发送给模型之前,对敏感信息进行脱敏
自定义中间件
你也可以构建自定义中间件来满足特定需求。 通过使用createMiddleware 函数实现以下任一钩子来构建自定义中间件:
| 钩子 | 何时运行 | 用例 |
|---|---|---|
beforeAgent | 调用智能体之前 | 加载记忆,验证输入 |
beforeModel | 每次 LLM 调用之前 | 更新提示,修剪消息 |
wrapModelCall | 每次 LLM 调用前后 | 拦截并修改请求/响应 |
wrapToolCall | 每次工具调用前后 | 拦截并修改工具执行 |
afterModel | 每次 LLM 响应之后 | 验证输出,应用护栏 |
afterAgent | 智能体完成后 | 保存结果,清理 |

基于 LangGraph 构建
由于createAgent 构建在 LangGraph 之上,你自动获得了对长时间运行且可靠的智能体的内建支持,具体包括:
持久化
通过内建的检查点机制,对话自动跨会话持久化
流式传输
实时流出令牌、工具调用和推理轨迹
人机协同
在执行敏感操作之前,暂停智能体等待人工批准
时间旅行
将对话回退到任意时间点,并探索替代路径和提示
结构化输出
createAgent 改进了结构化输出的生成:
- 主循环集成:结构化输出现在在主循环中生成,无需额外的 LLM 调用
- 结构化输出策略:模型可以在调用工具和使用提供商侧的结构化输出生成之间进行选择
- 成本降低:消除了额外 LLM 调用带来的额外开销
ToolStrategy 的 handleErrors 参数控制错误处理:
- 解析错误:模型生成的数据与期望结构不匹配
- 多重工具调用:模型为结构化输出模式生成了两个或更多的工具调用
标准内容块
大多数包的 1.0 版本已可用。目前只有以下包支持新的内容块:
langchain@langchain/core@langchain/anthropic@langchain/openai
优势
- 与提供商无关:无论使用哪个提供商,都可以使用相同的 API 访问推理轨迹、引用、内建工具(网页搜索、代码解释器等)和其他功能
- 类型安全:为所有内容块类型提供完整的类型提示
- 向后兼容:标准内容可以 延迟加载,因此没有相关的破坏性变更
精简的包
LangChain v1 精简了langchain 包的命名空间,专注于智能体的核心构建块。该包只暴露最有用和相关的功能:
其中大部分为了方便从 @langchain/core 重新导出,为你构建智能体提供了一个聚焦的 API 面。
@langchain/classic
遗留功能已移至 @langchain/classic,以保持核心包的轻量和专注。
@langchain/classic 中包含什么
- 传统的链和链实现
- 检索器
- 索引 API
@langchain/community的导出- 其他已弃用的功能
@langchain/classic:
报告问题
如果你在使用 1.0 时发现任何问题,请在 GitHub 上使用'v1' 标签 进行报告。
额外资源
LangChain 1.0
阅读公告
中间件指南
深入了解中间件
智能体文档
完整的智能体文档
消息内容
新的内容块 API
迁移指南
如何迁移到 LangChain v1
GitHub
报告问题或贡献代码
另请参阅
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

