AgentScope 2.0 完整指南:从终端到生产级多智能体服务
【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscope
AgentScope 2.0 是一个 Python 多智能体框架,把 ReAct 推理-行动循环、工具权限、沙箱工作空间、长期记忆和 FastAPI 多租户智能体服务做成了可组合模块。适合两类人:想先在终端里跑通一个带工具的智能体来验证想法的开发者,以及想把智能体部署成多会话、多租户应用的工程团队。
一条依赖装完,从终端启动第一个智能体
环境要求是 Python 3.11 及以上。从 PyPI 安装只需一行,也可以克隆源码装:
uv pip install agentscope # 或从源码安装 git clone -b main https://gitcode.com/GitHub_Trending/ag/agentscope cd agentscope && uv pip install -e .装好后,最小可用的智能体就是下面这段(完整可运行版本在 examples/console/main.py,默认模型是qwen3.7-max):
from agentscope.agent import Agent from agentscope.console import launch_console from agentscope.model import DashScopeChatModel from agentscope.credential import DashScopeCredential import os agent = Agent( name="Friday", system_prompt="You're a helpful assistant named Friday.", model=DashScopeChatModel( credential=DashScopeCredential(api_key=os.environ["DASHSCOPE_API_KEY"]), model="qwen3.7-max", ), ) await launch_console(agent)launch_console把终端交互全部接管了:流式渲染文本和工具调用结果、Ctrl+C 中断当前回复、exit退出。如果不想用交互式控制台,脚本里可以用ConsoleRenderer被动渲染agent.reply_stream的事件流,输入和确认逻辑由调用方自己控制。
模型、工具集从哪里换
Agent的每个部分都是独立模块:模型层覆盖 OpenAI、Anthropic、Gemini、DashScope、DeepSeek、Moonshot、Ollama、xAI 等厂商,放在src/agentscope/model/下;内置编码工具(Bash、Read、Write、Edit、Grep、Glob)在src/agentscope/tool/_builtin/下,通过Toolkit(tools=[...])传入。换模型只改model=参数,换工具只改Toolkit参数,其余不动。
工具执行前的权限闸门:五种模式各管什么场景
智能体能执行 shell 命令和写文件,不能默认全放行。AgentScope 的权限引擎(src/agentscope/permission/_types.py)定义了五种PermissionMode,每个模式的适用场景写得很明确:
- DEFAULT:每个操作都要确认,除非命中你配置的允许规则;
ls、git status这类只读命令由 Bash 工具自动放行。 - ACCEPT_EDITS:工作目录内的读写自动允许,适合人在旁边看着的快速迭代。
- EXPLORE:只读模式,一切修改操作直接拒绝,适合先让智能体摸底代码库。
- BYPASS:跳过全部安全询问,只认用户显式配置的 deny/ask 规则,适合容器等沙箱内的无人值守运行。
- DONT_ASK:把所有"询问"转成"拒绝",定时任务、后台执行时默认安全。
在终端控制台里,工具调用弹出确认时,按y本次放行,按a则连建议的权限规则一起接受,之后匹配的规则不再询问。
长时间运行的工具:卸载到后台,完成后唤醒智能体
一个跑几分钟的工具(比如批量爬取、大文件转换)如果同步执行,对话就会卡死。服务端的处理方式是把它卸载到后台任务管理器(src/agentscope/app/_manager/_background_task_manager.py),工具在后台进程里继续跑,结果产出后由唤醒调度器(_wakeup_dispatcher.py)重新拉起智能体,在同一个会话里继续往下走。对使用方来说,体验是"任务发出去、对话没断、结果回来时智能体自动接着说"。
从终端脚本到多租户服务:两条命令起服务
把单个智能体变成可对外提供的服务,走 examples/agent_service/main.py 这个示例。它基于 FastAPI,用create_app组装存储、消息总线、MCP、知识库管理器等组件,后端默认用本地 Redis(localhost:6379)做会话和状态持久化。
# 终端 1:启动智能体服务后端 cd examples/agent_service python main.py # 终端 2:启动配套 Web UI cd examples/web_ui pnpm install pnpm devWeb UI 启动后,把 API 端点指向http://localhost:8000即可开始对话。服务本身是多租户、多会话隔离的,main.py里还能看到默认挂载的 MCP(如browser-use)、长期记忆中间件和 Qdrant 内存向量库。
团队、调度与 Hub 在服务的哪里
服务层的能力都挂在同一个 FastAPI 应用上:Agent Team 用 Leader-Worker 编排,内置团队工具(src/agentscope/app/_tool/下的 create/say/delete)让 leader 智能体派生并协调 worker;调度支持定时任务与智能体唤醒;MCP & Skill Hub 对接 GitHub MCP Registry 和 ClawHub,流程是浏览 hub、安装到个人库、再添加到工作空间。消息频道则把智能体接进即时通讯平台,内置钉钉、飞书、Discord 三种渠道(src/agentscope/app/channel/)。
知识库接入:两个脚本跑通 RAG,四个向量后端任选
RAG 的库模式示例在 examples/rag/,没有 FastAPI,手动把解析器、分块器、嵌入模型、向量库接起来,数据流全程可见:
uv pip install "agentscope[rag]" export DASHSCOPE_API_KEY=sk-... python examples/rag/index_and_search.py # 解析→分块→嵌入→入库→检索 python examples/rag/integrate_with_agent.py # 把知识库挂到 Agent 上第二个脚本演示两种挂载方式:static模式由中间件自动注入检索结果,agentic模式把检索做成工具由智能体自己决定何时查。默认用 Qdrant 内存库(location=":memory:")加 DashScopetext-embedding-v4,不需要任何外部服务;需要持久化时换MilvusLiteStore(uri="./rag_demo.db"),已有 MongoDB 或 Elasticsearch 的团队则通过agentscope[vdb-mongodb]、agentscope[vdb-elasticsearch]扩展接入。
工作空间沙箱:让代码执行不落在宿主机上
智能体跑 Bash 和 Python 时,执行落在哪里由工作空间决定,同一套接口支持八种后端(src/agentscope/workspace_manager/):local(直接跑在本地,开发最快)、Docker、Apple Container、Bubblewrap、E2B、OpenSandbox、Daytona、K8s。每个后端按需安装扩展依赖,例如agentscope[workspace-docker]、agentscope[workspace-e2b]。示例里的LocalWorkspace同时提供文件系统工具和技能分区,长期记忆中间件(Agentic Memory,基于 Markdown 文件落盘)也绑定在工作空间目录上,重启后仍然可读。
深入路径:按这三步读代码和文档
- 先跑 examples/console/ 看单个智能体的完整交互,再跑 examples/rag/ 看检索链路,两者都不需要外部服务。
- 要改服务行为,从 examples/agent_service/main.py 入手,存储、消息总线、MCP、中间件都是显式参数。
- 按目录读源码:
src/agentscope/agent/(推理循环)、src/agentscope/middleware/(上下文压缩、RAG、长期记忆钩子)、src/agentscope/app/(服务层路由与调度)。动态更新记录在 docs/NEWS_zh.md。
下一步建议:设好DASHSCOPE_API_KEY,执行python examples/console/main.py,用"列出当前目录的 Python 文件"验证只读工具免确认,再用"创建一个 note.md"触发写操作确认。跑通这两步后,按上一节顺序接 RAG 和服务端。
【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscope
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考