createAgent
在 LangChain 中构建智能体的新标准方式,它取代了 LangGraph 中的
createReactAgent,提供了一个更简洁、更强大的 API。标准化内容块
一个新的
contentBlocks 属性,为跨所有提供商的现代大语言模型功能提供统一的访问接口。精简的包
langchain 包已被精简,专注于智能体的核心构建模块,旧版功能已迁移至 @langchain/classic。createAgent
createAgent 是 LangChain 1.0 中构建智能体的标准方式。与 LangGraph 导出的预构建 createReactAgent 相比,它提供了更简洁的接口,同时通过使用中间件提供了更大的定制潜力。
createAgent 构建在基础的代理循环之上——调用模型,让模型选择要执行的工具,然后在模型不再调用工具时完成:

中间件
中间件是createAgent 的决定性特性。它使得 createAgent 高度可定制,提高了您所能构建应用的上限。
优秀的智能体需要上下文工程:在正确的时间将正确的信息传递给模型。中间件通过可组合的抽象帮助您控制动态提示、对话摘要、选择性工具访问、状态管理和防护栏。
预构建中间件
LangChain 为常见模式提供了一些预构建中间件,包括:summarizationMiddleware:当对话历史过长时进行压缩humanInTheLoopMiddleware:对敏感的工具调用要求人工批准piiRedactionMiddleware:在发送给模型之前编辑敏感信息
自定义中间件
您也可以构建自定义中间件以满足您的特定需求。 通过使用createMiddleware 函数实现以下任意钩子来构建自定义中间件:

基于 LangGraph 构建
因为createAgent 是基于 LangGraph 构建的,您自动获得了对长期运行和可靠智能体的内置支持,通过:
持久化
对话通过内置检查点自动在会话间持久化
流式传输
实时流式传输 token、工具调用和推理轨迹
人在环中
在敏感操作前暂停智能体执行以进行人工批准
时间旅行
将对话倒回到任意点,探索不同的路径和提示
结构化输出
createAgent 改进了结构化输出的生成:
- 主循环集成:结构化输出现在在主循环中生成,不再需要额外的 LLM 调用
- 结构化输出策略:模型可以在调用工具或使用提供商端的结构化输出生成之间进行选择
- 成本降低:消除了因额外 LLM 调用产生的额外开销
ToolStrategy 的 handleErrors 参数控制错误处理:
- 解析错误:模型生成的数据不符合所需结构
- 多次工具调用:模型为结构化输出模式生成了 2 个以上的工具调用
标准化内容块
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:
报告问题
请在 GitHub 上使用'v1' 标签 报告发现的任何 1.0 版本问题。
额外资源
LangChain 1.0
阅读公告
中间件指南
深入了解中间件
智能体文档
完整的智能体文档
消息内容
新的内容块 API
迁移指南
如何迁移到 LangChain v1
GitHub
报告问题或贡献
另请参阅
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

