开发与工程 a2a-protocolagent-orchestrationmulti-agent-routingdag-schedulingonline-learningtrust-modelingbenchmarking

Sprix SAGE 路由器

面向 A2A 智能体网络的中途执行感知路由层:在任务进行中判断该继续、协作还是移交。

FollowAgents 评估 · FARS-2.1
谨慎使用
69/ 100 五分制 3.5 / 5
1 2 3 4 5 6
1信任安全18 / 29 · 3.1/5

证据显示:权限以硬过滤形式进入路由(A2A 安全需求→permissions 过滤),SECURITY.md 明确威胁模型并要求生产环境自行加身份、沙箱与最小权限;本体外不做传输、认证、签名。扣分点:人为确认仅出现在路线图未勾选项(human approval gates),无任何实现;回滚仅见学习状态快照 export_state,无决策回滚或恢复机制;代码文件未提供,硬过滤与数据流声明的实际实现只能按 README 断言记分。

2可靠稳定9 / 14 · 3.2/5

证据显示:文档间相互一致(README、pyproject、CI 工作流的模块名、命令、schema 版本均对应),无运行时依赖使可用性风险极低。扣分点:失败信息、异常处理质量无法从所给文件验证(test_*.py 与源码未提供);CI 冒烟基准只覆盖小规模参数。

3适用触发14 / 18 · 3.9/5

证据显示:目标场景(检查点感知的中途重路由)、适用条件(SELF/COLLABORATE/HANDOFF 使用时机表)、能力边界(不传输任务、不认证端点、研究预览状态)表述得异常清晰;多版本 Python 矩阵支持 3.10–3.12。扣分点:环境适配依赖使用方自建 A2A 客户端,真实端点评估仍是未完成路线图项;触发精度(何时切换)的实测证据全部来自自建合成基准。

4规范维护14 / 18 · 3.9/5

证据显示:信息架构完整(ALGORITHM/RELATED_WORK/INTEGRATION/OPERATIONS/BENCHMARKING 分层文档、仓库地图表)、MIT 许可证全文、pyproject 元数据规范、团队与维护者具名、SECURITY/CONTRIBUTING/CITATION 齐备。扣分点:CHANGELOG.md 被引用但内容未提供,只能按 0.3.0 版本号与路线图推断;examples/README.md 未提供,示例质量无法直接验证;未验证发布者身份使维护承诺的可持续性只能按声明计。

5有效结果9 / 13 · 3.5/5

证据显示:输出为含所有权、分配、拓扑、理由的可审计 trace,三个确定性 CLI 生成 JSON 报告;零运行时依赖、纯 Python,成本低。扣分点:边际价值依赖其核心主张(进度感知优于掩码基线),而支撑数据全部由项目自建评估器生成,README 自己声明'不是真实世界优越性证据',故实际效用上限无法由证据确认。

6证据核验5 / 8 · 3.1/5

证据显示:事实与推断分离做得突出——合成数据被反复标注为 regression evidence only,研究预览状态、不做的声明(RELATED_WORK 'does not make' 的主张)均明确;基准命令与 schema 可复跑。扣分点:交叉印证完全缺失,所有性能数字来自同批作者编写的评估器,无第三方或真实端点佐证;关键源码与测试文件未在本次评审材料中提供,具体公式到实现的追溯不可完成。

证据充分度: 评估于 2026年9月7日 审查版本 bdc9c24f0f7e
使用前请注意
  • 本评审为静态源码评审(置信度:低),未执行任何代码;所给材料不含源码与测试文件,许多评分基于 README 声明。
  • 全部基准数据由项目自建评估器生成,README 自认不是真实世界优越性证据;在采用该路由器的中途切换决策前,请在真实 A2A 端点上独立复验。
  • 原型不认证、不签名、不传输任务;生产使用必须按 SECURITY.md 补齐身份、授权、沙箱与人工审批,当前无任何人工确认机制实现。
  • 状态快照与 trace 不得包含密钥、私有提示词或个人数据;学习证据可在线污染信念,缺乏回滚机制。
  • 发布者未经策展注册表验证,维护可持续性按声明对待,请自行核实。
评估证据 [1][2][3][4][5][6]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Sprix SAGE Router 是屿智同行旗下 Sprix AI 开源的研究预览项目,定位为 A2A 协议之上的决策层,回答执行已开始后'谁应该和谁一起工作'的问题。核心是带检查点感知的 SAGERouter,在同一可审计的目标函数下比较 SELF、COLLABORATE、HANDOFF 三种路由模式,综合考虑已完成需求、可复用工件、观测到的部分质量、剩余工作、预算与截止时间。代码由 sprix_sage.py(路由、DAG 调度、束搜索、审计轨迹)、sprix_learning.py(在线模型与 Beta 信任)、sprix_types.py(校验类型)、sprix_a2a.py(Agent Card 归一化与传输中立的 ExecutionPlan)组成,运行时零依赖,需 Python 3.10+。项目提供三个基准 CLI(benchmark.py、benchmark_dynamic.py、benchmark_trust.py),但作者明确声明这些合成结果只是回归与证伪证据,不证明真实环境优势,当前并非可投产的 SLA 或经同行评审的结论。

输入是 Task(带 Requirement DAG、价值、预算、deadline、progress)和 ExecutionState(活跃代理、在途进度/质量、已完成需求、工件可移植性),SAGERouter.route_with_trace() 先做权限与能力过滤,再对 SELF/COLLABORATE/HANDOFF 三种模式联合搜索需求归属与调度(同一代理上的工作串行、独立代理可并发),按效用函数 U(m,S,z,E)=V·p̂_θ−λC−λL−λR−λH−λO… 排序可行方案,输出含归属、分配、DAG 依赖、通信边、估算资源和决策理由的审计轨迹。执行后通过 record_outcome() 回填 ExecutionOutcome(成功率、逐需求得分、实际成本与时延),更新逐需求条件化信任与在线成功模型,并可用 export_state() 导出版本化 JSON 学习快照。sprix_a2a.py 将 A2A AgentCard.skills 等信号映射为能力向量,把选中路由转换为传输中立的 ExecutionPlan;仓库还提供 demo.py、examples/ 示例及三个支持确定性种子和 JSON 输出的基准命令。

  1. 搭建 A2A 多智能体系统的工程团队,需要在任务执行中途(检查点处)决定 incumbent 是继续、组建小型协作团队还是整体移交给专家代理。
  2. 多代理平台开发者,希望用逐需求(而非单一信誉分)的条件化信任模型来跟踪每个代理在每个技能上的可靠性。
  3. 研究人员复现或对照进度感知与进度遮蔽、静态联盟枚举、动态 oracle 等中途重路由基线,benchmark_dynamic.py 提供可复现的检查点轨迹回放。
  4. 需要可解释路由决策的团队:route_with_trace 输出被排除代理、硬过滤解释和可审计备选方案,便于事后审查切换逻辑。
  5. 希望在离线环境中用合成数据做学习消融与回归测试的团队,benchmark.py 与 benchmark_trust.py 支持确定性种子和 JSON 报告。

这个 Agent 有哪些优点和局限?

优点
  • 研究聚焦明确:专门解决执行开始后的检查点感知重配置,这是多数 A2A 发现层不覆盖的运行时问题,且 SELF/COLLABORATE/HANDOFF 共享同一受权限、预算、截止时间约束的行动空间。
  • 可审计与可证伪设计:route_with_trace 输出决策理由、排除原因与备选方案;独立评估器不调用路由器的切换方程来打分,benchmark 动态研究还包含进度遮蔽对照、同质负对照等证伪性实验。
  • 工程负担低:Python 3.10+ 且零运行时依赖,学习状态可导出为版本化 JSON 快照,所有基准 CLI 支持确定性种子和 JSON 输出。
局限
  • 所有基准数字均来自随项目一同编写的合成评估器,作者自己声明这'不是真实端点优势的证据';尚缺在异构真实 A2A 端点上的重复检查点评估,采纳前需自行验证。
  • 原型边界明显:不传输任务、不认证端点、不验证签名,A2A 集成中的 message/send、流式、取消、安全工件处理都需调用方自建;真实 A2A 适配器仍在路线图上。
  • 作为早期研究预览,非生产 SLA 也不是同行评审结果;生产化要求校准的评估器、认证身份、签名能力元数据、隐私与安全审查及运维门控,迁移成本不低。

如何安装或部署这个 Agent?

仅需 Python 3.10+,运行时无第三方依赖:

git clone https://github.com/wang2122/sprix-sage-router.git
cd sprix-sage-router
python demo.py

无需任何 API 密钥或凭据。验证套件:python -m unittest -v;基准:python benchmark.pypython benchmark_dynamic.pypython benchmark_trust.py

如何使用这个 Agent?

作为 Python 库嵌入你的调度代码。最小用法:
python

from sprix_sage import Agent, ExecutionOutcome, ExecutionState, Requirement, SAGERouter, Task
agents = [

Agent("planner", {"planning": 0.92, "coding": 0.55}, cost=0.08, latency_ms=900),
Agent("coder", {"planning": 0.35, "coding": 0.96}, cost=0.12, latency_ms=1200),
]
task = Task("build-feature",
requirements=(Requirement("planning", 0.4), Requirement("coding", 0.6, depends_on=("planning",))),

value=1.0, budget=0.30, deadline_ms=4000, progress=0.35)
router = SAGERouter(agents, incumbent_id="planner")
state = ExecutionState(

active_agents=("planner",),
active_assignments={"planning": "planner", "coding": "planner"},
completed_requirements=frozenset({"planning"}),
inflight_requirement="coding",
inflight_progress=0.35, inflight_quality=0.72,

artifact_transferability={"planning": 0.95, "coding": 0.40})
trace = router.route_with_trace(task, state=state)
print(trace.selected.mode, trace.selected.assignments, trace.selected.topology)
router.record_outcome(trace.selected, ExecutionOutcome(

success=0.9, requirement_scores={"planning": 0.95, "coding": 0.86},

actual_cost=0.19, actual_latency_ms=1450))
snapshot = router.export_state()

注意:当前原型不发送任务、不做端点认证或签名验证;message/send、流式、轮询、取消与安全工件处理由调用方的 A2A 客户端负责。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents