agentcompass run 的第一个位置参数:
查找 Benchmark
运行以下命令,查看当前安装的 AgentCompass 版本实际提供的 Benchmark:配置 Benchmark 参数
运行参数参考介绍了--benchmark-params <json>。其中 <json> 是一个 JSON 对象,包含所选 Benchmark 的完整参数覆盖:
共享 Benchmark 字段
所有继承RuntimeBenchmarkConfig 的 Benchmark 配置都支持以下面向用户的字段。表中列出基类默认值,所选 Benchmark 可以覆盖这些值。
| 字段 | 类型 | 基类默认值 | 含义与调整场景 |
|---|---|---|---|
sample_ids | list[str] | null | null | 仅运行列出的稳定任务 ID。适用于冒烟测试、失败任务重跑或受控子集;未知 ID 会在执行前报错。 |
aggregation_mode | ”micro_weighted” | “category_mean" | "micro_weighted” | 未设置 category_hierarchy 时,选择通用指标如何合并任务和类别。 |
category_hierarchy | object | null | null | 使用显式类别聚合树,并优先于 aggregation_mode。除非 Benchmark 文档已经定义,否则不要设置。 |
execution.attempts 下配置,不属于该对象。尝试计划、Metric Contract,以及上述聚合字段如何合并任务结果,见指标与聚合。
model ID 不属于该 JSON 对象。它仍是 agentcompass run 的第三个位置参数,由 runtime 注入 Benchmark 配置。
每个 Benchmark 还会在共享结构上增加自己的字段。无论所选 Benchmark 是否有独立页面,都可以直接从当前安装代码查询其完整字段、类型、默认值和描述:
构建 JSON 对象
例如,swebench_verified 将共享的任务选择和聚合字段,与自身的准备及评测器字段组合:
--benchmark-params 必须是合法 JSON,因此键和字符串值都使用双引号。CLI 值会覆盖配置文件 benchmark.params 中的同名键。添加最终 CLI 覆盖前,可先检查内置值和配置文件合并后的结果:
镜像与 provider 设置
重量级 Benchmark 通常会把任务镜像、工作区根目录和资源提示附加到任务元数据。兼容的 Recipe 会将这些要求转换给 Docker、Daytona 或 Modal。provider 镜像、资源和网络覆盖应放在--env-params 中,它们不是 Benchmark 参数。