用途
Parallel Test Bench 是一套用于并行运行智能体实验的基础设施,核心目标是提供客观、数据驱动的对比,帮助用户做出有依据的决策。它适用于以下场景:并排比较多种方法或实现;对不同的提示词、工具或配置进行 A/B 测试;对性能改进进行基准测试(前后对比);使用不同智能体设置运行实验;系统性地收集耗时与 token 用量指标;生成带统计分析的对比报告。
主要能力
该技能围绕五个阶段组织工作流:
-
设置(Setup):定义测试配置并创建工作区结构。需要与用户明确测试名称、配置(基线对照组与实验组,可支持 2 个以上配置)、测试用例(每个用例包含提示词、预期输出描述、可选输入文件,建议至少 2-3 个用例)、成功标准(可程序化检查的定量断言,以及需要人工判断的定性方面)。工作区结构示例为
<test-name>-workspace/iteration-1/test-case-1/baseline/outputs/等,目录按需创建而非预先全部建立。 -
并行启动(Spawn):关键要求是在单条消息中使用多个 Agent 工具调用一次性启动所有智能体,以确保真正并行运行。每个测试用例为每个配置启动一个智能体,并传入清晰的指令模板(配置描述、任务提示词、输入文件、输出保存路径、需保存的输出内容)。
-
采集(Collect):每个智能体完成时会收到任务通知,其中包含
total_tokens(token 数)和duration_ms(执行时间毫秒)。这些数据仅在通知中可用,必须立即保存为timing.json,格式如{"total_tokens": 18534, "duration_ms": 16408, "total_duration_seconds": 16.4}。 -
评分(Grade):针对每个配置的输出,依据断言进行评估。可使用内置评分脚本
python scripts/grade_outputs.py --test-case <path> --config baseline --assertions <assertions-json>,也可内联编写自定义评分逻辑。评分结果保存为grading.json,schema 包含expectations数组,每项含text(可读断言名)、passed(布尔结果)、evidence(通过/失败原因)。 -
聚合(Aggregate):使用内置聚合脚本
python scripts/aggregate_benchmark.py --workspace workspace/iteration-1 --configs baseline treatment --test-name "emoji-removal",生成机器可读的benchmark.json和人类可读的benchmark.md。基准内容包括通过率、token 用量(均值 ± 标准差)、执行时间(均值 ± 标准差)以及配置间的差值(treatment - baseline)。也可手动聚合,计算各配置的通过率、token 与时间的均值、标准差及差值。
使用方式
技能内置以下辅助脚本(位于 scripts/):
grade_outputs.py:程序化评分助手,用法python scripts/grade_outputs.py --output-dir <path-to-outputs> --assertions <assertions-json-file> --save-to <grading-json-path>。aggregate_benchmark.py:基准聚合,用法python scripts/aggregate_benchmark.py --workspace <iteration-dir> --configs baseline treatment --test-name "my-test"。compare_outputs.py:生成输出的详细差异,用法python scripts/compare_outputs.py --baseline <baseline-output> --treatment <treatment-output> --format <text|json|md>。
聚合完成后,以摘要格式向用户呈现结果,包括测试用例数、配置对比、通过率、token 用量、执行时间及差值,并给出分析与建议。
适用场景
- 技能有效性测试:基线为不使用技能,实验组为使用技能,通过 3-5 个代表性任务,衡量质量(断言通过率)、效率(token 用量、执行时间)与一致性(标准差)。
- 提示词优化:对比原始提示词与带示例、带推理步骤、带约束等变体,衡量正确性、完整性与清晰度。
- 重构验证:对比旧实现与重构实现,使用完整测试套件,衡量正确性、性能与代码质量。
- 模型对比:对比不同模型(如 Sonnet、Opus、Haiku),衡量质量、成本(token 用量 × 模型定价)与速度。
限制与注意事项
- 必须并行启动智能体,顺序启动会违背并行测试的目的。
- 耗时数据仅在任务通知中可用,容易遗漏,需立即保存。
- 小样本(2-3 个用例)应报告单个结果而非仅平均值,谨慎推广,并考虑方差;大样本(10+ 用例)可使用统计检验(t 检验、置信区间)并报告效应量。
- 测试用例应具有代表性、覆盖不同方面、有明确成功标准;避免用例过于相似、过于简单或成功标准模糊。
- 公平比较要求所有配置使用相同提示词、相同输入文件、相同模型(除非专门测试模型差异),并真正并行运行。
- 避免测试在多个方面存在差异的配置,否则无法隔离原因。
- 关于该技能的收费、价格、支持平台等具体信息,资料中暂未提供。