核心概念
任务执行流程
同一个 Benchmark 样本可能只执行一次,也可能因为重复评测或错误重试而执行多次。每次实际执行通常按以下顺序使用 Environment:- AgentCompass 解析 Benchmark、Harness 和适用的 Recipe,确定任务文件、运行方式和所需环境。
- provider 打开 Environment。隔离型 provider 会创建 sandbox,或请求外部服务创建 sandbox;
host_process则直接使用 host 上的工作目录。 - Benchmark 在 workspace 中准备任务需要的仓库、依赖和其他材料。
- Harness 创建运行会话,并通过 Environment 执行 agent;如果评测组合没有单独的 Harness,则由 Benchmark 自行完成这一执行阶段。
- AgentCompass 收集任务产物并执行验证。根据 Benchmark 的要求,验证可能在 host 上进行、复用当前 Environment,或打开一个新的验证 Environment。
- 任务结束后,AgentCompass 关闭 Environment;只有显式保留 Environment 进行调试时才会跳过正常清理。
选择 Environment provider
选择时先考虑任务是否可信以及是否需要隔离,再考虑镜像来源、可用资源、网络控制和 provider 凭证。每个 provider 页都会说明前置条件、必填参数和限制。
opensandbox 是 AgentCompass 对 OpenSandbox API 的适配,并不代表一种固定的 sandbox 后端。OpenSandbox 服务如何把请求映射到 Docker 或 Kubernetes runtime backend,见其官方架构说明。
选择 provider 后,可以继续设置镜像、workspace、资源、网络或生命周期参数。不同入口的写法和覆盖关系见配置 Environment。
继续阅读
- 配置 Environment:选择 CLI、配置文件、Python SDK 或编排文件的传参方式。
- 网络策略:控制准备、agent 运行和验证阶段的网络访问。
- 资源限制:设置单个 Environment 的 CPU、内存、存储和 GPU。
