deepagents 是一个 “代理框架”。它与其他代理框架相同的核心调用循环,但具有内置工具和功能。 deepagents 是一个独立的库,建立在 LangChain 的代理核心构建块之上,并使用 LangGraph 的工具来在生产环境中运行代理。 deepagents 库包含:- Deep Agents SDK:用于构建能够处理任何任务的代理的软件包
- Deep Agents CLI:基于
deepagents软件包构建的终端编码代理
创建 Deep Agent
何时使用 Deep Agents
当您希望构建能够- 处理复杂的、多步骤的任务,需要规划和分解
- 管理大量上下文,通过文件系统工具
- 委派工作 给专门的子代理,以实现上下文隔离
- 持久化记忆 在对话和线程之间
createAgent 或构建自定义 LangGraph 工作流。 当您希望在命令行上使用交互式 deep agent 进行编码或其他任务时,请使用 Deep Agents CLI:- 自定义 具有技能和记忆的代理。
- 教导 代理在您使用它们时了解您的偏好、常见模式和自定义项目知识。
- 执行代码 在您的机器上或在沙盒中。
核心功能
规划和任务分解
Deep agents 包含一个内置的
write_todos 工具,使代理能够将复杂任务分解为离散的步骤,跟踪进度,并在出现新信息时调整计划。上下文管理
文件系统工具(
ls、read_file、write_file、edit_file)允许代理将大型上下文卸载到内存或文件系统存储中,从而防止上下文窗口溢出并能够处理变长工具结果。子代理生成
内置的
task 工具使代理能够生成专门的子代理以实现上下文隔离。这保持了主代理的上下文清晰,同时深入研究特定的子任务。长期记忆
使用 LangGraph 的 Memory Store 扩展具有线程间持久记忆的代理。代理可以保存和检索以前对话中的信息。