每日一个开源项目(第140篇):AgentScope 2.0 - 阿里开源的生产级 Agent 框架

引言

"构建你能看见、能理解、能信任的 Agent。"

这是"每日一个开源项目"系列的第140篇文章 。今天的主角是 AgentScope 2.0------阿里巴巴达摩院开源的生产级 Agent 框架。

Agent 框架这个赛道已经很拥挤。LangChain 以链式调用为核心,AutoGen 以多 Agent 对话为核心,CrewAI 以角色协作为核心。AgentScope 的差异点在设计哲学上:它认为当 LLM 的推理能力足够强时,框架应该让路,而不是用严格的流水线约束模型的行为空间。

AgentScope 2.0 在这个理念上增加了生产环境所需的基础设施:事件系统、权限控制、多租户隔离、沙箱执行、中间件机制。不只是"能跑起来的 Demo",而是"能上线的系统"。

你将学到什么

  • AgentScope 2.0 的设计哲学:为什么选择"让模型主导"而非"固定流水线"
  • 五个核心系统:Event / Permission / Multi-tenancy / Workspace / Middleware
  • Agent Team 模式:Leader-Worker 架构如何协调复杂任务
  • 权限系统的精细控制:工具调用的审批和边界设定
  • 与 LangChain/AutoGen 的定位差异
  • 生态全貌:AgentScope Runtime、ReMe、OpenJudge、Trinity-RFT

前置知识

  • 了解 LLM Agent 的基本概念(工具调用、推理循环)
  • 有 Python 异步编程基础
  • 接触过 LangChain 或 AutoGen 更容易理解框架定位差异

项目背景

项目简介

AgentScope 2.0 是一个生产级 Agent 框架,定位是"有基本抽象、配合模型能力提升、内置生产级支持的 Agent 开发平台"。

它解决的核心问题是:传统 Agent 框架在大量场景里用严格的流水线和提示词模板约束模型,但随着 LLM 推理能力的快速提升,这种约束反而变成了瓶颈。AgentScope 转向"让模型的原生推理和工具使用能力来主导 Agent 行为",框架负责提供生产环境的基础设施,而不是约束执行路径。

作者/团队介绍

  • 团队: 阿里巴巴达摩院(DAMO Academy)
  • 核心研究者: Dawei Gao、Zitao Li、Yaliang Li、Bolin Ding、Jingren Zhou 等
  • License: Apache-2.0
  • 版本: v2.0.2(2026年6月)
  • 论文: arXiv:2402.14034(2024)和 arXiv:2508.16279(2025)

项目数据

  • ⭐ GitHub Stars: 27,100+
  • 🍴 Forks: 3,100+
  • 📦 Release 数量: 40 个
  • 📄 License: Apache-2.0

主要功能

核心构建块

AgentScope 2.0 的最小工作单元是 Agent,通过组合不同系统扩展能力:

python 复制代码
import asyncio
from agentscope import Agent, Toolkit, DashScopeChatModel, DashScopeCredential
from agentscope.tools import Bash, Grep, Glob, Read, Write
from agentscope.message import UserMsg

# 定义工具集
toolkit = Toolkit(tools=[Bash(), Grep(), Glob(), Read(), Write()])

# 创建 Agent
agent = Agent(
    name="code-assistant",
    system_prompt="你是一个代码助手,帮助用户分析和修改代码。",
    model=DashScopeChatModel(
        credential=DashScopeCredential(api_key="your_key"),
        model="qwen3.6-plus"
    ),
    toolkit=toolkit
)

# 流式推理循环
async def run():
    async for evt in agent.reply_stream(UserMsg("user", "分析当前目录的代码结构")):
        match evt.type:
            case EventType.TEXT_BLOCK_DELTA:
                print(evt.delta, end="", flush=True)
            case EventType.TOOL_CALL_START:
                print(f"\n[工具调用] {evt.tool_name}")

asyncio.run(run())

五个核心系统

1. 事件系统(Event System)

统一事件总线连接 Agent 推理过程的所有阶段:

python 复制代码
EventType.REPLY_START          # Agent 开始回复
EventType.MODEL_CALL_START     # 调用模型开始
EventType.TEXT_BLOCK_START     # 文本块开始输出
EventType.TEXT_BLOCK_DELTA     # 文本流式增量
EventType.TEXT_BLOCK_END       # 文本块结束
EventType.TOOL_CALL_START      # 工具调用开始
EventType.TOOL_CALL_END        # 工具调用完成

Human-in-the-loop 工作流通过事件系统接入:在特定事件上暂停 Agent,等待人工确认后恢复执行。

2. 权限系统(Permission System)

细粒度控制哪些工具调用需要审批,哪些可以自动执行:

python 复制代码
from agentscope.permission import PermissionConfig, ApprovalMode

config = PermissionConfig(
    # 文件写入需要确认
    Write: ApprovalMode.ALWAYS,
    # Bash 执行需要确认
    Bash: ApprovalMode.ALWAYS,
    # 读取可以自动执行
    Read: ApprovalMode.NEVER,
    # 单次操作超过 $0.10 需要确认
    default_cost_threshold=0.10
)

Permission Bypass Mode:对于测试或信任场景,可以关闭所有审批,Agent 完全自主运行。

3. 多租户/会话隔离(Multi-tenancy)

FastAPI 服务层提供生产级的租户和会话隔离:

  • 不同租户的 Agent 实例互相不可见
  • 会话级别的上下文管理
  • 并发处理多个用户请求
  • 内置鉴权

4. Workspace / 沙箱执行

工具执行的隔离环境,三种后端可选:

后端 适用场景
本地(Local) 开发和测试,速度最快
Docker 生产环境,依赖隔离
E2B 云端沙箱,最高安全性

5. 中间件系统(Middleware)

在 Agent 的推理-行动循环上插入可组合的钩子,不需要修改核心 Agent 代码:

python 复制代码
from agentscope.middleware import LoggingMiddleware, GuardrailMiddleware

agent = Agent(
    ...
    middlewares=[
        LoggingMiddleware(log_tool_calls=True),
        GuardrailMiddleware(blocked_patterns=["rm -rf", "DROP TABLE"]),
    ]
)

Agent Team(多 Agent 协作)

Leader-Worker 模式:Leader Agent 分解任务,调用内置 Team 工具创建 Worker Agent,汇总结果。

python 复制代码
from agentscope.tools import TeamTools

# Leader Agent 有 team_tools,可以创建和协调 Worker
leader = Agent(
    name="research-leader",
    system_prompt="你是研究团队负责人,负责分解任务和汇总结果",
    model=model,
    toolkit=Toolkit(tools=[*TeamTools()])  # 包含创建 Worker 的工具
)

# 运行时,Leader 会自动分解任务:
# "分析这 5 篇论文的核心观点"
# → 创建 5 个 Worker,每个处理一篇
# → 汇总结果

Worker Agent 的能力由 Leader 在运行时动态决定,不需要预先定义所有可能的 Worker 类型。

Task Planning(任务规划)

Agent 把复杂任务分解为可追踪的计划步骤,执行过程中实时更新:

vbnet 复制代码
任务: "给这个 Python 项目写完整的测试套件"
Agent 生成计划:
  Step 1: [进行中] 扫描项目结构,识别所有模块
  Step 2: [等待] 分析每个模块的公共 API
  Step 3: [等待] 生成单元测试
  Step 4: [等待] 生成集成测试
  Step 5: [等待] 运行测试套件,修复失败

Step 1 完成后 → Step 2 自动开始,计划状态更新

Background Task Offloading

长时间运行的工具调用(文件处理、网络请求、代码执行)转到后台,不阻塞 Agent 对话流:

vbnet 复制代码
用户: "编译这个大型 C++ 项目并运行测试"
Agent: [发起后台任务,立即继续对话]
Agent: "编译任务已在后台开始,预计 5 分钟。在等待期间我可以帮你做别的事情。"
...(5 分钟后)
系统通知: 后台任务完成
Agent: "编译完成,测试结果如下:..."

项目详细剖析

设计哲学:让模型主导

这是 AgentScope 2.0 和很多同类框架最根本的差异:

传统方式(LangChain 风格):

vbnet 复制代码
开发者定义固定链:
Step 1 → Step 2 → Step 3(开发者决定每步做什么)
模型只在每步内做填空

AgentScope 方式

复制代码
开发者提供:工具集 + 权限 + 约束
模型决定:做什么、按什么顺序做、用什么工具
框架负责:生产环境安全、可观测性、人工接入

当模型推理能力很弱时,固定流水线是对的------模型需要被引导。当模型推理能力足够强时,固定流水线成了约束------模型有更好的方案但执行不了。AgentScope 2.0 的时机判断是:2025 年以后的主流模型已经足够强,应该给它们更大的自主权。

流式事件架构

标准的 async for evt in agent.reply_stream() 使得:

  • 前端可以实时显示 Agent 的思考过程
  • 工具调用可以在开始时就显示,不等执行完
  • 人工审批可以插在任何工具调用前
  • 整个推理过程完全可观测和可记录

生产部署:AgentScope Runtime

独立的 AgentScope Runtime(runtime.agentscope.io)提供完整的生产服务层:

  • 安全沙箱执行:用于代码运行和工具调用
  • 服务化部署:把 Agent 变成可调用的 API 服务
  • 多语言运行时:Python、Java(JVM)、TypeScript 三种后端

完整生态

AgentScope 不只是一个框架,背后有一套完整的工具链:

组件 功能
AgentScope Studio Agent 运行的可视化调试工具
ReMe 跨会话持久化记忆(文件 + 向量两种存储)
OpenJudge 50+ 个评判器(代码、数学、工具使用、多模态)
Trinity-RFT Agent 微调框架(Explorer/Trainer/Buffer 解耦架构)
Mem0 集成 长期记忆(2026年6月新增)

与主流框架的对比

维度 LangChain AutoGen AgentScope 2.0
核心模式 链式调用 多 Agent 对话 模型推理主导
生产设施 第三方 第三方 内置
沙箱执行 有限 本地/Docker/E2B
人工接入 插件 原生 事件系统原生
评测体系 OpenJudge
微调支持 Trinity-RFT
论文背书 有(2篇 arXiv)

项目地址与资源

官方资源


总结

AgentScope 2.0 的时机感很准:在 LLM 推理能力飞速提升的时间节点上,选择"减少框架约束,让模型主导"的方向。

技术路线上,五个核心系统(Event/Permission/Workspace/Multi-tenancy/Middleware)构成的基础设施层解决的是传统框架的痛点:可观测性差、无法细粒度控制工具权限、不适合多用户服务化部署、代码逻辑和安全约束混在一起。

生态完整度上,从框架到记忆(ReMe)到评测(OpenJudge)到微调(Trinity-RFT)形成了一条完整的链路------这是 LangChain 和 AutoGen 没有覆盖的。

27.1k Stars,40 个 Release,有 arXiv 论文和阿里巴巴工程团队支撑,是目前生产级 Agent 框架里最值得深入研究的选项之一。


探索 PrimeSkills ------ 精选 AI Agent 与技能的市场,每一个都经过真实企业工作流验证,去掉浮夸,留下真正有用的。

欢迎访问我的个人主页,发现更多有价值的见解和有趣的产品。

相关推荐
冬奇Lab2 小时前
Skill 系列(04):Skill 指标体系——L1/L2/L3 三层监控,让质量下降有据可查
人工智能·开源·llm
IT_陈寒3 小时前
Vite的静态资源打包让我熬夜到三点,这坑千万别跳
前端·人工智能·后端
玩转AI不是事3 小时前
用IndexedDB做AI对话离线缓存实战
人工智能
Asize4 小时前
多模态生图:从 Vite 工程化到前端调用 Qwen Image
javascript·人工智能·后端
MobotStone4 小时前
AI项目越多,为什么越容易失控
人工智能·aigc
十有八七4 小时前
AI时代的置身X内
前端·人工智能
Lkstar4 小时前
A2A协议深度解析|Agent2Agent通信标准,智能体互联网的"HTTP"
人工智能·llm
百度Geek说4 小时前
当代码越来越便宜,什么在变贵?
人工智能
小七-七牛开发者4 小时前
TokenPilot:让 LLM Agent 长会话成本降 60%+ 的上下文管理
缓存·agent·token·context·上下文·推理成本