伴随匿名论文投稿的代码。该仓库将 APEX 防御器、基准数据归一化、可信能力清单以及对比方法集成相互分离,以便每一层都可以独立审查。
python -m venv .venv
source .venv/bin/activate
pip install -e '.[test]'
export PYTHONPATH="$PWD/src:$PWD"
依赖模型的组件从环境中读取 OPENAI_API_KEY 以及可选的 OPENAI_BASE_URL。仅将 .env.example 作为参考复制;代码不会读取本地凭据文件。
| 路径 | 职责 |
|---|---|
src/apex/defender/ | APEX 任务契约、类型化绑定、回执、证明检查、PLANT、WRAP 以及延续处理 |
src/apex/core/ | 共享协议、结果类型、聚合以及提供商中立的模型边界 |
benchmark/adapter/ | 将基准发布版本只读转换为统一的 BenchmarkCase 接口 |
benchmark/registry/ | 可信能力注册以及基准特定的清单 |
baseline/<name>/ | 每个对比方法对应一个实现或运行时集成 |
tests/ | 仓库不变量以及快速单元检查 |
有关组件流程和扩展点,请参见 STRUCTURE.md。
所有六个基准的紧凑冻结用例描述符都包含在 benchmark/data/ 下。完整的上游仓库和运行时沙箱并未随附。传入 None 会选择打包的数据;显式的 data_root 仍可覆盖它。
from benchmark.adapter import adapter_for
adapter = adapter_for("scr", None)
attack_cases = list(adapter.cases("attack"))
适配器拥有用例标识符、划分标签、套件标签、资格以及呈现给基准运行时的载荷。它不会更改基准内容,也不会注册工具权限。
from benchmark.registry import module_for
registry = module_for("mcptox")
environment_plan = registry.load("12306-mcp")
能力清单与数据集适配器保持分离,因为基准文本是不可信的回合输入,而清单描述的是回合开始前可用的、由操作者拥有的执行边界。
每个 benchmark/registry/data/<benchmark>/manifest.json 都是使用 apex-benchmark-registry-v2 的最终注册表产物。一个包存储去重后的 capability_units、可复用环境以及显式用例绑定。因此,一个拥有数百个用例的基准不会将相同的 Tool 清单重复数百次。每个单元保留精确的输入/输出 schema、effect、observation、effect_return、回执角色以及类型化注解。每个环境分别记录来源、Skills 以及 agent_visible_surface。
实验实现中经过审计的精确源输入保存在 benchmark/registry/source/ 下。构建步骤会对这些现有注册进行归一化和去重;它不会从基准提示中推断新的能力语义。使用以下命令重新生成所有最终产物:
pip install -e '.[registry]'
python scripts/build_registry_manifests.py
python scripts/audit_registry_coverage.py
要从本地上游检出刷新打包的用例描述符,请运行:
python scripts/import_benchmark_data.py \
--research-root <research-checkout> \
--scr-root <SCR_Bench-checkout>
SCR 导入器在派生其紧凑的用例/Skill 暴露索引之前会验证固定的提交。
TaskContractor 将可信用户请求编译为任务契约。确定性检查保持独立于目标模型。依赖模型的角色提交类型化候选,这些候选必须通过相同的验证边界。
baseline/registry.py 定义了 13 种对比方法。每种方法都有一个以该方法命名的专用文件夹以及一个 implementation.py 入口点。拥有自身运行时的依赖项会被延迟导入,因此无需安装所有基准环境即可测试 APEX 核心和数据适配器。
python -m compileall -q src benchmark baseline tests
pytest
在发布之前,还要运行 ANONYMITY.md 中的匿名性检查。不应向投稿中添加任何凭据、结果文件、机器特定路径、Git 远程仓库或作者元数据。