LangChain推出Deep Agents重塑AI系统构建新范式
在开发智能体(Agent)应用时,你是否也陷入过这样的困境?初期使用 LangChain 的链条(chains)构建简单流程,一切顺利。然而,当任务复杂度提升——涉及工具调用、循环逻辑、处理可变长度输出时——链条架构便显得捉襟见肘。转而投入 LangGraph 的怀抱,却又发现大量开发时间被消耗在定义状态模式、条件边和编译图上,而非解决核心业务问题。
这并非 LangGraph 的缺陷,它本身是一个极其强大的运行时(runtime)。问题的关键在于,许多开发者误将其当作应用框架(application framework)来使用。LangChain 团队敏锐地洞察到了这一普遍痛点,并推出了他们的解决方案:deepagents。
Deep Agents 实战演示
Deep Agents 深度解析:它究竟是什么?
首先需要明确,“deep agents”这个名称听起来可能有些宽泛。实际上,deepagents 是一个构建在 LangChain 和 LangGraph 之上的独立 Python 库(通过 pip install deepagents 安装)。LangChain 官方文档将其定位为一个“智能体框架”(agent harness):它提供了与其他框架相同的核心工具调用循环,但其核心价值在于内置了一套开箱即用的能力,开发者无需重复造轮子。
它的核心入口函数是 create_deep_agent()。一个最简化的示例如下:
from deepagents import create_deep_agent
def get_weather(city: str) -> str:
"""Get weather for a given city."""
return f"It's always sunny in {city}!"
agent = create_deep_agent(
tools=[get_weather],
system_prompt="You are a helpful assistant",
)
agent.invoke(
{"messages": [{"role": "user", "content": "What is the weather in Mumbai?"}]}
)
看,一个函数调用就完成了智能体的创建。底层的 LangGraph 图构建、状态管理、流式处理和上下文窗口管理等复杂逻辑均由库自动处理,开发者完全无需介入。然而,其真正的亮点在于默认内置的五大核心能力。
五大核心能力:为何 Deep Agents 与众不同
1. 内置规划能力:write_todos 工具
每个 deep agent 都自动拥有一个 write_todos 工具。当面对复杂任务时,智能体会主动调用此工具,将工作拆解为离散的步骤,并持续跟踪每个步骤的状态(pending、in_progress、completed),在任务推进过程中动态调整计划。
这一功能至关重要,因为它不仅仅是一个提示词技巧——待办事项列表会被持久化在智能体的状态中。智能体可以随时回顾、更新它,并在整个会话生命周期内引用。开发者不再需要手动提示模型“逐步思考”,这种结构化的规划能力已深度集成于框架之中。
2. 虚拟文件系统:智能的上下文管理
这可能是最令人惊喜的功能。Deep agents 默认配备了一组完整的文件系统操作工具:ls、read_file、write_file、edit_file、glob 和 grep。
你可能会问:为什么智能体需要一个文件系统?答案在于:高效的上下文管理。
大语言模型(LLM)的上下文窗口是有限的。在进行长时间的调研、运行代码或处理大型工具输出时,会话历史很容易爆炸式增长,导致关键信息被挤出窗口。Deep agents 的解决方案是将大块内容“卸载”(offload)到虚拟文件系统中,而不是全部塞进有限的上下文里。
当某个工具的输出结果超过 20,000 个令牌(tokens)时,库会自动将其保存到配置好的后端存储,并在上下文中用文件路径引用和10行关键预览来替代冗长的原文。之后,智能体可以在需要时通过 read_file 或 grep 工具精确读取所需内容。这是一种智能的上下文压缩策略——既不是简单的分块(chunking),也不是粗暴的截断(truncation),而是有目的的卸载与按需检索。
文件系统的后端是可配置的:可以是内存(默认)、本地磁盘、用于跨线程持久化的 LangGraph Store,或者是像 Modal、Daytona 这样的沙盒环境。这种可插拔的设计提供了极大的灵活性。
3. 子智能体生成(Subagent Spawning):任务委派的艺术
框架内置了一个 task 工具,允许主智能体为特定的、隔离的子任务生成专门的子智能体。
为什么这一点比听起来更重要?在长时间的复杂任务中,如果让单个智能体处理所有事情,其上下文会被中间步骤、搜索结果和各种半成品信息污染。子智能体提供了一个优雅的解决方案:主智能体将特定的子任务委托给一个拥有全新、干净上下文的新智能体实例。子智能体自主运行、完成工作,最终仅将一个精炼的总结返回给主智能体。这样,主智能体的上下文就能始终保持清晰和专注。
你可以配置拥有自定义工具和专属系统提示词(system prompts)的子智能体:
from deepagents import create_deep_agent, Subagent
code_reviewer = Subagent(
name="code-reviewer",
system_prompt="You are an expert code reviewer. Analyze code for bugs, style, and performance.",
tools=[read_file_tool],
)
agent = create_deep_agent(
tools=[internet_search],
subagents=[code_reviewer],
system_prompt="You are a research and engineering assistant.",
)
此外,一个默认的通用型子智能体(配备文件系统工具)始终可用,无需任何额外配置。
4. 自动上下文压缩与摘要:突破窗口限制
这正是该库在处理超长会话任务时体现核心价值的地方。
当智能体的上下文长度达到模型窗口限制的85%,且没有更多内容可以卸载到文件系统时,框架会自动触发摘要生成。一个 LLM 会生成结构化的会话摘要——包括核心意图、已完成的关键成果、下一步计划——并用这个摘要替换工作内存中的完整历史记录。原始消息则被安全地保存到文件系统中作为权威记录,智能体在必要时仍可找回具体细节。
最终结果是,deep agents 可以在极其复杂的任务上近乎无限期地运行,而不会触及上下文限制——这在使用原生 LangGraph 时,通常需要开发者投入大量精力进行手动工程化实现。
5. 跨会话的长期记忆:构建有记忆的智能体
默认情况下,智能体状态仅存在于单个线程(thread)的生命周期内。但如果使用结合了 LangGraph Store 的 CompositeBackend 进行配置,智能体就能在多个会话与线程之间持久化记忆。
存放在 /memories/ 路径(或自定义位置)下的文件,在智能体重启后依然存在,并且可以从任何会话线程访问。这使得构建一个能记住用户偏好、项目代码库约定,或持续数天甚至数周的研究进展的智能体成为可能。
from deepagents import create_deep_agent
from deepagents.backends import CompositeBackend, StateBackend, StoreBackend
from langgraph.store.memory import InMemoryStore
store = InMemoryStore()
backend = CompositeBackend(
routes={"/memories/": StoreBackend(store=store)},
default=StateBackend(),
)
agent = create_deep_agent(
tools=[...],
backend=backend,
memory=["path/to/AGENTS.md"], # persistent context file
)
生态定位:Deep Agents 在 LangChain 体系中的角色
这部分容易产生混淆,值得明确阐述。
LangChain 是提供基础构件的底层框架:模型(models)、工具(tools)、提示词(prompts)、链条(chains)。它是整个生态的基石。
LangGraph 是一个用于构建持久化、有状态的、基于图的智能体的运行时引擎。它处理持久化、流式传输、中断恢复和复杂的条件流控制。它是驱动智能体运行的“发动机”。
Deep Agents 是构建在两者之上的高层应用框架。它并非 LangGraph 的替代品——其底层完全依赖 LangGraph 运行。它提供的是更高层级的、开箱即用的 API 和有主见的默认配置,让开发者无需每次都从零开始实现规划器、文件系统层、上下文压缩和子智能体等基础设施。
一个形象的比喻:LangGraph 给你的是发动机和变速箱。Deep Agents 给你的是一辆组装好、加满油、可以直接上路的整车。
对于简单的、单次交互的智能体,使用 LangChain 的 create_agent 可能就足够了。但对于复杂的、长时间的、多步骤的、并且有大量上下文管理需求的任务,deepagents 所提供的抽象层才真正物超所值。
实战:快速构建一个研究型智能体
让我们通过一个实用案例来快速上手——构建一个能够搜索网页并产出结构化报告的研究型智能体:
import os
from typing import Literal
from ta vily import Ta vilyClient
from deepagents import create_deep_agent
ta vily_client = Ta vilyClient(api_key=os.environ["TA VILY_API_KEY"])
def internet_search(
query: str,
max_results: int = 5,
topic: Literal["general", "news", "finance"] = "general",
include_raw_content: bool = False,
):
"""Run a web search and return results."""
return ta vily_client.search(
query,
max_results=max_results,
include_raw_content=include_raw_content,
topic=topic,
)
research_instructions = """
You are an expert researcher. Your job is to conduct thorough research and then write a polished report.
Use internet_search to gather information.
Write your findings to files as you go to a void losing context.
Use write_todos to plan your research steps before starting.
"""
agent = create_deep_agent(
model="anthropic:claude-sonnet-4-6", # default model
tools=[internet_search],
system_prompt=research_instructions,
)
result = agent.invoke({
"messages": [{
"role": "user",
"content": "Research the current state of agentic AI frameworks in 2025 and write a structured report."
}]
})
print(result["messages"][-1].content)
运行后,框架将自动处理以下流程:
- 智能体首先调用
write_todos工具来规划详细的研究步骤。 - 执行网络搜索,并将庞大的搜索结果自动卸载到虚拟文件系统。
- 如果任务特别复杂,它会生成子智能体来处理特定部分。
- 在撰写报告时,按需回读相关文件并进行信息综合。
- 整个过程中,框架自动管理上下文,确保模型永远不会触及令牌窗口极限。
所有这些复杂的基础设施逻辑,你无需编写一行代码——框架已为你内置。
Deep Agents CLI:强大的命令行工具
另一个值得了解的特性是:deepagents 还提供了一个基于同一 SDK 构建的命令行智能体。
pip install deepagents
deepagents # launches the interactive CLI agent
这是一个可以直接在终端中运行的编程助手智能体——你可以将其理解为 Claude Code 或 Aider 的同类,但其底层基于强大的 Deep Agents SDK 构建。它支持交互模式、非交互管道模式(用于脚本化的 -n 标志)、自定义技能(skills),以及持久化记忆。你可以教会它你的项目特定约定,它会在不同会话间记住这些信息。
这意味着,支撑你生产级研究型智能体的同一套 SDK,同时也提供了一个开箱即用、功能强大的开发者工具。
适用场景与选择指南
何时应该使用 deepagents:
- 任务需要结构化规划,并由多个依赖步骤完成。
- 工具调用会产生大量输出,需要在长会话中进行智能管理。
- 你需要子智能体进行任务委派,但不想自己搭建复杂的基础设施。
- 应用需要跨会话或跨线程的持久化记忆能力。
- 你正在构建编程助手、自主研究系统或复杂的多步骤工作流。
何时应继续使用 LangChain 的 create_agent 或原生 LangGraph:
- 你的智能体逻辑非常简单:仅涉及一两次工具调用、回复简短。
- 你需要对图(Graph)的拓扑结构和控制流有极细粒度的、完全自定义的控制。
- 你已经深度投入并定制了复杂的 LangGraph 工作流,不希望被框架的“有主见”的默认设置所约束。
该库在其官方文档中也坦诚建议:简单的任务,就使用更简单的工具。
深层意义:为何这不只是又一个框架
其发布的时机值得深思。
智能体 AI 目前正处在一个关键拐点。基础模式——如工具调用、ReAct 循环、简单的 RAG——已被广泛掌握。行业现在集中攻坚的难点,是如何让智能体在长期任务(long-horizon tasks)上更可靠:那些需要复杂规划、处理超大上下文、具备持久化能力和任务委派能力的任务。
每个开发生产级智能体的团队,都不得不从零开始工程化解决这些相同的问题。上下文管理策略、子智能体模式、记忆架构——这些方案在不同组织中被以略微不同的形式重复构建。
deepagents 代表了 LangChain 的一个战略判断:这些解决方案已经足够通用,可以将其标准化。所谓智能体框架——通过有主见的默认设置、内建的基础设施、可插拔的后端——正是试图将行业焦点从“如何搭建技术管道?”转向“我们究竟希望智能体实现什么业务价值?”的一次重要尝试。
它能否成功,取决于这些默认设置在真实、复杂的生产环境中是否经得起考验。但从设计哲学和方向来看,这无疑是正确的思路。
快速开始指南
pip install deepagents ta vily-python
设置你的 API 密钥:
export ANTHROPIC_API_KEY="your-key"
export TA VILY_API_KEY="your-key"
export LANGSMITH_TRACING=true # optional, for debugging
export LANGSMITH_API_KEY="your-key"
完整的官方文档——包括后端(backends)配置、子智能体(subagents)详解、沙盒(sandboxes)集成、人在回路(human-in-the-loop)以及 CLI 高级用法——可以在 docs.langchain.com/oss/python/deepagents 找到。
如果你目前正在从事任何严肃的智能体项目,花一个下午深入了解 deepagents 在你的技术栈中可能扮演的角色,都是非常值得的时间投资——即使你不会立刻采用它。
相关攻略
数据质量是决定AI模型成败的核心要素,它直接关系到模型输出的精准度与可靠性。那么,如何系统性地评估数据,并确保其真正“适用”于AI训练呢?这需要一套严谨的评估框架与保障策略。 一、数据质量评估的核心维度与方法 评估数据质量不能仅凭主观判断,必须从多个关键维度进行客观“体检”,每个维度都有对应的量化方
AI浪潮正重塑传统菜市场。互联网巨头转向智能定价、无人仓储与配送系统,以更低成本、更高效率改造生鲜零售。AI的固定投入与趋零边际成本有望大幅压缩履约费用。尽管菜市场人情味短期难替代,但随着年轻消费习惯改变与AI终端普及,传统模式面临深刻挑战。
初次接触CapybaraAI的用户,常常会下意识地寻找搜索框,却发现界面中并没有传统意义上的“快捷搜索”按钮。这并非设计疏漏,而是源于其根本定位的差异。 您的观察完全正确。CapybaraAI本身并未集成类似浏览器的“一键搜索”功能。它并非一个输入关键词、返回网页列表的搜索引擎。其核心定位是一个强大
在软件开发的代码质量保障体系中,单元测试是不可或缺的核心环节。它不仅是验证代码逻辑正确性的首要防线,更是提升软件可维护性、保障长期开发效率的关键实践。然而,编写与维护高质量的单元测试用例,往往需要开发者投入大量时间与精力。那么,是否存在一种方法,能让单元测试工作变得更高效、更智能? 答案是肯定的。借
如果你的 Hermes Agent 已经部署完成,但在处理基于个人文档的提问时频繁出现“答非所问”或“无法回答”的情况,问题根源很可能在于知识库的导入环节——AI 尚未真正“理解”你的专属数据。无需担忧,这类似于为新员工配备了电脑却未提供工作手册,只需补充相应资料即可。以下五种高效方法,总有一种能帮
热门专题
热门推荐
为庆祝品牌投身赛车运动整整125年,斯柯达正式推出了晶锐Fabia Motorsport Edition特别版。这款车基于Fabia 130打造,设计灵感直接来源于征战赛场的Fabia RS Rally2拉力赛车,整体风格充满了对赛事历史的致敬意味。不过,得先说明白,它的升级重点主要落在了外观和底盘
Grayscale 通过其以太坊质押 ETF 质押了 102,400 个 ETH,价值 2 37 亿美元 先来看一组数据:资产管理巨头 Grayscale 最近通过其以太坊质押 ETF,一口气质押了超过10万个 ETH,价值约2 37亿美元。这个动作本身不小,但更有意思的是市场的后续反应——或者说,
劳斯莱斯库里南自问世以来,始终是超豪华全尺寸SUV领域的标杆。对于追求极致安全又不愿牺牲低调气质的高净值人士而言,如何实现“隐形”的顶级防护,一直是核心诉求。如今,加拿大专业防弹车制造商Inkas,以一款近乎“零痕迹”改装的库里南,给出了完美解决方案——一座移动的“隐形堡垒”。 区别于常见的外露装甲
新加坡维塔士工作室正考虑将《侠盗猎车手V》与《荒野大镖客:救赎2》移植至任天堂Switch平台。该团队拥有丰富的移植经验,曾成功负责多款游戏的跨平台适配。这两款作品全球销量巨大,若能登陆Switch,其便携特性可能成为新的市场增长点。
当高尔夫GTI迎来五十周年里程碑,传奇的纽博格林北环赛道成为其致敬历史与展望未来的最佳舞台。这里不仅铭刻了燃油性能图腾的巅峰时刻,也正式开启了电动GTI的新纪元。近日,大众汽车正式宣布,高尔夫GTI 50周年版在纽北创下全新纪录,荣膺最快前驱量产车称号;与此同时,品牌首款纯电动GTI车型——ID





