关于 gaia-architecture-comparison
用于比较 ruflo 的 GAIA 基准测试框架与 Princeton HAL 等实现的 Skill,帮助贡献者识别能力差距并确定改进优先级。
主要功能
- 01架构对比
- 02能力差距分析
- 03改进优先级排序
- 04基准测试评估指导
适用场景
- 01规划下一轮 GAIA 工作
- 02选择高影响的架构改动
- 03帮助贡献者熟悉基准代码
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill gaia-architecture-comparison安装后在 Claude Code 中输入/gaia-architecture-comparison确认已加载。
详细介绍
GAIA 架构对比技能
将 ruflo 的 GAIA 基准测试框架与 Princeton HAL 参考实现及其他开源框架进行对比,以了解能力差距并确定改进优先级。
适用场景
- 规划 GAIA 工作的下一次迭代
- 评估哪项架构变更的通过率投资回报最高
- 帮助新贡献者熟悉基准测试代码库
架构概览
ruflo 框架(当前)
gaia-bench run
└─ gaia-loader.ts — HF dataset download + cache
└─ gaia-agent.ts — multi-turn Anthropic Messages loop
└─ gaia-tools/ — web_search, file_read, web_browse,
image_describe, python_exec
└─ gaia-voting.ts — Track A self-consistency (N attempts → majority vote)
└─ gaia-hardness/ — Track Q difficulty predictor (ADR-136)
└─ gaia-judge.ts — two-stage LLM-as-judge scorer
HAL 参考实现(Princeton)
HAL 使用类似的循环,但具备以下特点:
- 使用 OpenAI 函数调用作为工具接口
- 使用 BrowserBase / Playwright 实现真实的浏览器自动化
- 代码解释器沙箱(Jupyter 内核)
- 每轮使用更大的令牌预算(4096+)
- 使用完整的 300 道题评估集
主要差异
| 维度 | ruflo | HAL 参考实现 | 差距 |
|---|---|---|---|
| 题目数量 | 53(部分 L1) | 300(完整 L1) | 使用 --limit 165 获取完整 L1 |
| 网页搜索 | DuckDuckGo / Google CSE | BrowserBase 实时搜索 | 添加 Playwright 或 Browserless |
| 代码执行 | python_exec 存根 | 真实的 Jupyter 内核 | 实现真实的沙箱 |
| 图像 OCR | image_describe(Gemini) | GPT-4V / Gemini | 功能相当 |
| 文件处理 | file_read | 完整的 PDF/XLSX/ZIP 解析器 | 扩展 file_read |
| 自一致性 | voting.ts(Track A) | 参考实现中没有 | ruflo 的优势 |
| 难度路由 | predictor.ts(Track Q) | 参考实现中没有 | ruflo 的优势 |
| 记忆 | AgentDB HNSW | 无 | ruflo 的优势 |
| L1 通过率 | ~20.8%(iter 23) | 74.6%(HAL Sonnet 4.5) | 差距约为 54 个百分点 |
差距分析
主要差距(影响大)
-
真实的代码执行 — 许多 L2/L3 题目需要运行 Python 来 计算数值答案。当前的
python_exec工具只是一个存根。 实现真实的沙箱(E2B、Pyodide 或 subprocess)是投资回报最高的 单项改进。 -
完整题目集 — 在 53/300 道 L1 题目上运行会低估实际 通过率,因为前 53 道题目难度偏低。运行
--limit 165(完整 L1), 以便与 HAL 的得分进行比较。 -
真实浏览器 —
web_browse当前获取的是原始 HTML。将其 替换为 Playwright/Browserless,以处理 JavaScript 渲染的页面,可解锁 许多网页导航题目。
次要差距(影响中等)
-
结构化文件解析 — PDF、XLSX 和 ZIP 附件需要专用解析器。
file_read当前只能处理纯文本和图像。 -
轮次预算 — 对于复杂的多步骤题目,12 轮可能不够。HAL 在 L3 中 最多使用 20 轮。
-
系统提示词调优 — HAL 的系统提示词更为详尽,并明确指示模型 在回答前使用工具。
ruflo 的优势
-
自一致性投票(Track A)— 对每道题目运行 N 次尝试并 采用多数答案,可以降低临界题目的结果波动。 HAL 未实现此功能。
-
难度路由(Track Q)— 根据预测的难度,将每道题目路由到合适的 模型和轮次预算。这能降低简单题目的成本,同时为难题提供更多资源。
-
AgentDB 记忆 — 在多次运行中存储模式,使 Agent 能够 回忆类似题型的成功策略。
改进路线图
| 优先级 | 变更 | 预期提升 | 工作量 |
|---|---|---|---|
| P0 | 真实的 python_exec 沙箱(E2B) | +15-25 个百分点 | 高 |
| P0 | 完整的 165 道题 L1 评估 | 得到准确基线 | 低 |
| P1 | 基于 Playwright 的 web_browse | +5-10 个百分点 | 中 |
| P1 | PDF/XLSX 文件解析器 | +3-8 个百分点 | 中 |
| P2 | 将 L2/L3 的最大轮次增加到 20 | +2-5 个百分点 | 低 |
| P2 | 系统提示词调优(iter 30 研究) | +2-5 个百分点 | 低 |
| P3 | 通过 Gemini 使用 Google Grounding(iter 32) | +3-7 个百分点 | 中 |
| P3 | 多提供商路由(对简单题使用 Gemini Flash) | 降低成本 | 中 |
加载过往研究中的上下文
npx @claude-flow/cli@latest memory search \
--namespace gaia-patterns \
--query "architecture comparison HAL benchmark"
存储对比发现
npx @claude-flow/cli@latest memory store \
--namespace gaia-patterns \
--key "architecture-comparison-$(date +%Y%m%d)" \
--value "HAL gap: 54pp. Primary: python_exec stub. Secondary: browser, file parsing."