Documentation Index
Fetch the complete documentation index at: https://qitor.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
第三方基准测试接入规范
QitOS 把基准测试集成当作一套正式 SDK,而不是零散脚本。 如果你要新增一个基准测试家族,默认结构应该是:qitos.benchmark.<family>:数据集适配、运行时、评估器、评分器、基准测试原生产物qitos.recipes.*:可复现基线方法examples/*:仅保留最薄的用户入口
qitos/core、DesktopEnv 或示例文件。
三层边界
框架层
这些能力属于框架:AgentModule + EngineActionSpaceEnvironmentAdapterDesktopEnv- 与提供商无关的工具/动作词汇
- 家族预设与适配层(harness,负责将协议、传输层、工具交付等组合在一起的模型适配层)所有权
- qita 回放、导出、比较、截图时间线、叠加层
基准测试层
这些能力应放在qitos.benchmark.<family>:
- 数据集读取与拆分逻辑
- 稳定样本标识
- 基准测试运行时
prepare/finalize - 基准测试专用
setup/postconfig - 评估器桥接
- 评分器与失败分类法
- 基准测试原生产物(artifact,持久化的输出文件)载荷
test_all.json、基准测试虚拟机/引导程序、上游评估器语义的内容,都应该放在这里。
配方层
这些能力应放在qitos.recipes:
- 规范入门基线
- 基准测试基线
- 可复现对比方法
qit bench- 文档/教程
- 轻量示例
- 后续基准测试报告脚本
建议目录结构
新增基准测试家族时,建议至少包含:适配器契约
适配器(adapter)负责:- 数据集根路径解析
- 记录加载
- 拆分/子集过滤
- 稳定任务/样本标识
- 任务元数据归一化
- 基准测试原生评估
- qita 检查
- 可复现结果导出
benchmarksplit- 稳定样本标识,例如
task_id或example_id - 运行时/评估器所需的基准测试原生元数据
运行时钩子契约
当基准测试需要这些能力时,请使用BenchmarkRuntimeHook:
- 环境准备/收尾
- 智能体动作前的基准测试专用设置
- 引导元数据
- 清理策略
- OSWorld 的 qcow2/引导程序与控制器就绪
- 基准测试专用沙箱设置
- 服务预热或结束清理
DesktopEnv 或全局引擎。
评估器与评分器契约
BenchmarkEvaluator 用来产生基准测试原生载荷,例如:
- 上游评估器桥接结果
- 基准测试原生评分 JSON
- postconfig 执行结果
BenchmarkScorer 负责把这些结果映射回标准公开行:
successstop_reasonstepslatency_secondstoken_usagecost- 基准测试专用元数据
BenchmarkRunResult,不要再造第二套公开行模式。
标准结果行要求
每个基准测试运行最终都应输出统一公开行:task_idbenchmarksplitpredictionsuccessstop_reasonstepslatency_secondstoken_usagecosttrace_run_dirrun_spec_ref
metadata,不要破坏共享结果契约。
追踪记录与 qita 兼容要求
新的基准测试家族必须保留:RunSpecExperimentSpec- 追踪记录(trace)目录兼容性
- qita 回放/导出/比较
manifest.jsonevents.jsonlsteps.jsonl
命令行与注册表(registry)要求
要把基准测试家族变成正式入口,需要完成:- 在
qitos.benchmark中导出家族 - 在
qitos.benchmark.runner中注册任务加载与内置运行器 - 确保它能通过以下入口运行:
qit bench runqit bench evalqit bench replayqit bench export
文档同步清单
新增基准测试家族时,至少同步这些文档面:- 基准测试概述
- 基准测试家族页面
- 命令行参考(如果基准测试名称或策略变了)
- 贡献者指南(如果引入了新的运行时/评估器模式)
CHANGELOG.md- README 的进展/动态(只要是用户可见能力)
当前仓库中的参考实现
可以直接参考这些规范结构:qitos.benchmark.desktopqitos.benchmark.osworldqitos.benchmark.gaiaqitos.benchmark.tau_benchqitos.benchmark.cybenchqitos.recipes.desktop.osworld_starterqitos.recipes.benchmarks.gaiaqitos.recipes.benchmarks.tau_benchqitos.recipes.benchmarks.cybench
