DeepAgents VS Agentscope2.0
Deep agents
基于langchain构建,使用langgraph运行时实现持久化、流式处理、human in the loop,简单使用:
agent =create_deep_agent,所谓agent harness- 内置write_tools工具,进行规划和任务分解
- 支持接入沙箱通过execute进行shell执行,由沙箱提供安全隔离的环境
- 通过文件系统工具将大量上下文卸载到内存或文件系统,进行上下文管理
-
内置的task工具让智能体可以生成子智能体进行上下文隔离
- 子智能体是嵌套、短暂、单次交接的,父节点调用一次task,子用全新上下文跑完返回结果即结束
- 子智能体栈中没有subAgentMiddleware,不能继续往下嵌套派生
- 基于langgraph的记忆存储实现长期记忆
适用情况:在langchain+langgraph生态中,需要多样的云沙箱以及不需要持久化团队主要使用分派-获得结果的这种单次交接/上下文隔离的多智能体模式
关键实现
可插拔虚拟文件系统:不把文件系统直接绑定为本地磁盘,抽象为BackendProtocol
在
filesystem.py 顶部 import 展示了后端体系:from deepagents.backends import (
CompositeBackend, //路由后端,根据路径前缀把不同的路径分发给不同后端
FilesystemBackend, //本地磁盘
LocalShellBackend, //带shell执行能力的本地沙箱
StateBackend, //in-memory,用langgraph的state chanel存储
)
上下文管理中的自动 Offloading
当工具返回的ToolMessage内容超过阈值时,Middleware 把原始内容写入虚拟文件系统(
FilesystemBackend),消息里只保留一个引用路径和摘要(_create_content_preview),Agent 如果需要完整内容,可以通过 read_file 工具再读回来。类似于操作系统中的内存换页机制,减少主要上下文窗口的膨胀问题。
Agentscope 2.0
无状态引擎,agent完全无状态,将状态分离到了agentState,可序列化可恢复,注重安全有独立的权限系统,支持分布式多租户部署
-
多智能体编排:Agent Team
- leader创建team,worker是独立的会话在同一服务上并发执行而不是嵌套在leader下面,leader通过读会话流观察进度;成员之间通过redis做消息总线来通信
- 特点是:分布式,持久化,对等协作
- 部署与可观测性:自带Agent Service,自带多租户、分布式状态、会话重访等功能,将多租户HTTP做进框架,更适合自控全栈
适用情况:从单agent到多租户分布式服务等全栈+注重工具调用安全性+需要多个智能体长期协作,想走多模态全链路
关键实现
洋葱圈Middleware + 事件驱动的Event Bus
在Agent的ReAct生命周期的7个节点进行hook,并通过next_handler构成链式调用,上一层middleware通过yield把控制权交给next_handler(),前后可插入逻辑:
on_reply → 整个 reply 流程(最外层)
└─ on_reasoning → 模型推理阶段
└─ on_model_call → 原始 API 调用
└─ on_check_permission → 工具权限检查
└─ on_acting → 工具执行阶段(纯 I/O 层)
└─ on_compress_context → 上下文压缩
on_system_prompt → 系统提示词变换(Pipeline 模式,非洋葱)
事件系统定义了30+个精细EventType,覆盖Agent执行全程的每一个节点:
ReplyStartEvent → ModelCallStartEvent
→ TextBlockDeltaEvent (流式文本)
→ ThinkingBlockDeltaEvent (思维链流)
→ ToolCallStartEvent → ToolCallEndEvent
→ RequireUserConfirmEvent ← Human-in-the-loop 介入点
→ ToolResultStartEvent → ToolResultEndEvent
ReplyEndEvent
- Human-in-the-loop实现方式:在事件流中插入一个暂停事件,外部系统捕获后处理,再通过
UserConfirmResultEvent恢复 Agent 执行

浙公网安备 33010602011771号