两个月前,LangChain团队提出了"深度智能体"(Deep Agents)的概念,用来描述那些能够执行复杂、开放式任务并在更长的时间范围内运行的AI智能体。
他们认为这类智能体需要四个关键要素:规划工具、文件系统访问、子智能体,以及详细的提示词。

随后,他们推出了deepagents这个Python包,内置了所有这些基础组件。开发者只需要提供自定义工具和提示词,就能轻松构建一个深度智能体。这个项目一经推出就受到了广泛关注和采用。
如今,LangChain团队发布了0.2版本,进一步加码投入这个项目。这次更新带来了什么新功能?
在什么场景下应该选择deepagents而不是langchain或langgraph?
让我们一起来看看。
可插拔后端:让文件系统更灵活
0.2版本最重要的新功能是可插拔后端(Pluggable Backends)。在此之前,deepagents使用的"文件系统"实际上是一个"虚拟文件系统",它会利用LangGraph的状态来存储文件。
现在,全新的Backend抽象层允许你将任何存储系统作为"文件系统"来使用。内置的实现包括:
• LangGraph State - 原有的状态存储方式
• LangGraph Store - 支持跨线程持久化
• 本地文件系统 - 直接使用真实的文件系统
更酷的是,deepagents还引入了"组合后端"(composite backend)的概念。
你可以设置一个基础后端(比如本地文件系统),然后在特定的子目录上映射其他后端。这个功能的一个典型应用场景是长期记忆存储。
举个例子:
你可以用本地文件系统作为基础后端,但将所有的文件操作映射到/memories/目录,让它使用S3支持的"虚拟文件系统"。这样,智能体可以把重要信息存储在那里,即使你的电脑关闭了,这些记忆也能永久保存。
你甚至可以基于任何数据库或数据存储创建自己的后端,打造专属的"虚拟文件系统"。如果需要,还可以继承现有的后端,添加文件写入权限控制、格式检查等安全护栏功能。
0.2版本的其他改进
除了可插拔后端,0.2版本还加入了几个实用的优化:
• 大工具结果自动清理 - 当工具返回的结果超过一定token限制时,自动将其转储到文件系统中,避免内存占用过大
• 对话历史自动摘要 - 当token使用量过大时,自动压缩旧的对话历史,保持上下文管理的效率
• 悬空工具调用修复 - 当工具调用在执行前被中断或取消时,自动修复消息历史记录,避免状态不一致
什么时候用deepagents,什么时候用LangChain或LangGraph?
现在LangChain生态系统已经有了三个开源库,但每个库都服务于不同的目的。
为了更清晰地区分它们,团队提出了这样的定位:
- deepagents是"智能体框架"(agent harness)
- langchain是"智能体工具包"(agent framework)
- 而langgraph则是"智能体运行时"(agent runtime)。
这三个库是相互构建的:deepagents建立在langchain的智能体抽象之上,而langchain又建立在langgraph的智能体运行时之上。

具体来说:
LangGraph适合那些想要构建工作流和智能体组合应用的场景。如果你需要灵活的控制流程和状态管理,LangGraph是很好的选择。
LangChain适合想要使用核心智能体循环,但不想要任何内置功能,希望从头开始构建所有提示词和工具的开发者。它给了你最大的控制权和灵活性。
DeepAgents最适合构建更自主、长期运行的智能体,特别是当你想要利用内置的规划工具、文件系统等高级功能时。它帮你处理了很多底层复杂性,让你专注于智能体的核心逻辑。
随着AI智能体应用越来越复杂,这种分层架构的设计理念正在帮助开发者根据具体需求选择最合适的工具。

0.2版本的发布,特别是可插拔后端的引入,让deepagents在长期记忆和状态持久化方面变得更加强大和灵活。
对于正在探索AI智能体开发的开发者来说,这无疑是一个值得关注的更新。