news 2026/9/3 13:16:43

用 AgentScope 两阶段多智能体架构,代码修复率做到 63.4%

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 AgentScope 两阶段多智能体架构,代码修复率做到 63.4%

用 AgentScope 两阶段多智能体架构,代码修复率做到 63.4%

【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscope

AgentScope 2.0 是一个生产级多智能体开发框架,解决的是"单个智能体难以独立修复跨模块代码"的问题:它把修复拆成分工、执行、验证、投票的协作流程,在 SWE-Bench 基准上验证了两阶段方案修复率 63.4%,比单智能体基线高 21 个百分点。

先看结果:单智能体 vs AgentScope 多智能体

指标优化前(单智能体)优化后(两阶段多智能体)变化
SWE-Bench 修复率42.1%63.4%+21.3 个百分点
平均修复耗时8.7 分钟5.2 分钟缩短约 40%
回归问题率15.3%6.8%降低约 56%

除了解决率,还有一个常被忽略的收益:候选补丁的评估不再依赖 LLM 直接"当裁判",而是用一个微调奖励模型打分,评估方差比 LLM 直接评判降低约 67%,意味着同样一组候选补丁,多次评估的结论更稳定。

拆解核心方案:修复率是怎么攒出来的

1. 执行-验证闭环:验证者看"实际状态"而不是"口头汇报"

框架在 src/agentscope/pipeline/ 提供了 GoalPipeline,这是整个分工协作的基本单元:

  • 执行者(Executor):用工作区里的文件工具干活,完成后输出结构化的成果报告——文件路径、入口、运行方式。
  • 验证者(Verifier):就是另一个普通 Agent,用同一套工具读文件、跑命令,给出三态裁决:pass/fail/impossible
  • 循环:验证不通过时,失败原因(要求指明具体文件路径和行号)原样回传给执行者重试,默认最多 10 轮(max_iters=10)。

关键设计在于两个 Agent 共享同一个LocalWorkspace——验证者检查的是磁盘上真实写出的代码,而不是执行者声称写了什么。这直接消除了多智能体协作最常见的"口头确认"失效模式。

2. 两阶段修复加奖励模型投票:SWE-Bench 上的具体做法

在 SWE-Bench 场景中,上述闭环被展开为两阶段:

  • 第一阶段,三个专业化智能体并行推进:问题复现智能体先基于 PR 描述写出reproduction_test.py,确保缺陷能稳定复现;问题修复智能体结合代码差异分析与 Git 工具定位根因、生成补丁;测试验证智能体跑相关单元测试,确认修复没有引入回归。
  • 第二阶段,奖励模型投票:多个候选修复方案先做统一轨迹格式处理,再交给基于 Qwen2.5-Coder-Instruct 微调的奖励模型,从代码质量、功能完整性、性能影响等维度打分,选最高分方案。

这样分工的原因:单智能体同时要负责"复现、理解、改码、自测",认知负担集中在一个上下文里容易丢线索;拆开后每个 Agent 的系统提示和工具集都可以收窄,错误也被隔离在各自阶段。

3. 自主执行的底座:事件流、权限与沙箱

多智能体能"放开手脚"干活,靠的是三层保障:

  • 事件系统:推理、工具调用、多模态内容统一走一条事件流推给前端;支持中断后恢复——事件的reply_id会标明当时停在哪个智能体,调用方不用自己记回合。
  • 权限系统src/agentscope/permission/下的 PermissionEngine 对工具和资源做细粒度管控,支持逐次确认与 BYPASS 免确认模式。
  • 工作区沙箱:local、Docker、E2B、Daytona、K8s、OpenSandbox 等 8 种后端,工具与代码执行全部隔离,智能体跑飞也不会波及宿主机。

落地要点与关键配置

搭一条执行-验证流水线,核心代码只有几行:

pipe = GoalPipeline(executor=executor, verifier=verifier) # verifier_reset_context 默认 True:每轮重置验证者上下文 # max_iters 默认 10;验证者判 "impossible" 时提前终止

两处配置值得注意。其一,服务化部署时,examples/agent_service/main.py默认用的是InMemoryMessageBus(),多进程或生产环境要换成RedisMessageBus,否则各进程之间状态互不可见。其二,PermissionMode.BYPASS适合可信的自动化任务(省掉每次工具确认),但涉及删除文件或对外发请求的任务不要开,保持逐次确认。

避坑与调优

  • 别让验证者自由发挥:强制结构化输出三态裁决,且失败消息必须定位到文件路径和行号,否则执行者拿到"写得不太好"这种反馈无法定向修复。
  • max_iters时配合成本预算:难任务可以调大,但每轮都是完整的模型调用开销;好在"impossible"裁决会提前终止,避免无效烧钱。
  • 理解verifier_reset_context=True的取舍:每轮重置上下文省 token,但验证者看不到上一轮的历史;如果验证依赖历史轨迹,改成 False。
  • 多进程部署必须换 Redis 消息总线:内存总线是进程级的,只适合单机调试。
  • 长任务走后台卸载:训练、抓取这类耗时工具通过offloader=workspace转入后台,结果回来后唤醒会话恢复对话,避免事件流被长时间占住。

快速上手

uv pip install agentscope # 或从源码安装: git clone https://gitcode.com/GitHub_Trending/ag/agentscope cd agentscope && uv pip install -e . export DASHSCOPE_API_KEY=sk-... python examples/pipeline/goal/goal_pipeline.py

想在服务形态里体验(含 Web UI、权限确认、团队协作),先起 Redis,再运行python examples/agent_service/main.py,然后在examples/web_uipnpm install && pnpm dev,把 UI 指向http://localhost:8000即可。仓库内置约 160 个测试文件,覆盖事件、权限、沙箱等核心路径,可对照验证行为。更多更新记录见 docs/NEWS.md,流水线实现可深入 src/agentscope/pipeline/ 阅读。

【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscope

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 13:10:58

FaceFusion线程设置:让批量换脸快一倍

FaceFusion线程设置:让批量换脸快一倍 【免费下载链接】facefusion Industry leading face manipulation platform 项目地址: https://gitcode.com/GitHub_Trending/fa/facefusion 跑一批 4K 换脸任务,进度条爬得极慢,GPU 利用率长期卡…

作者头像 李华
网站建设 2026/9/3 13:10:08

科研工具盘点——在线科研绘图网站

做科研从来都逃不开一句话:一张图胜过千言万语。不管是投稿论文、申报国自然还是做学术汇报,一张清晰规范又美观的科研图,不仅能精准传递你的研究逻辑,还能直接给成果加分不少。今天就给大家整理了5款适配不同科研场景的实用绘图工…

作者头像 李华
网站建设 2026/9/3 13:08:59

RSSI定位原理与工程实践:从信号强度到可靠坐标的完整链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 13:08:49

AI行业风向转变:从模型竞赛到工程化落地,开发者如何应对?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 13:05:18

due框架实战:生产级麻将分布式服务器架构解析

简介:本资源是一套基于due分布式游戏服务器框架实现的麻将游戏服务端完整工程,面向Go语言中级开发者及分布式系统学习者,解决高并发棋牌类游戏服务端架构设计与落地难题。压缩包共63个文件,含41个Go源码(覆盖网关、大厅…

作者头像 李华