资讯动态

TermGrade Environments评分安全深剖:--network none离线隔离、延迟测试注入与oracle_verified双重保障

发布时间:2026/10/20 7:23:14 来源:尧图企业网站定制
【免费下载链接】termgrade-environments项目地址https://ai.gitcode.com/hf_mirrors/ai-and/termgrade-environments点击查看免费下载本文面向新手拆解TermGrade Environments的评分安全机制这个包含 1,004 个可执行 Linux 任务的终端智能体评测环境如何用--network none离线隔离、评分时的测试延迟注入、以及oracle_verified标志构成三重防线保证每一份 pass1 分数都真实可信。读完你会明白容器化评测防作弊的完整设计思路。一、先认识 TermGrade Environments1,004 个可执行任务是什么TermGrade Environments是为终端智能体terminal agents打造的分级评测环境集。每个任务都是三件套组成说明路径示例容器Dockerfilesetup.sh构建的隔离环境environment/Dockerfile任务说明给模型看的指令instruction.md验证器pytest 测试 打分脚本tests/test.sh参考解用于自证任务可解solution/solve.sh这些任务由模型批量生成后通过实际执行过滤66,165 个候选任务中只有 1,004 个1.5%存活最终由 6 个模型、36,144 次计次试验实测出每个任务的通过率和难度分带band。正因为分数是实测出来的评分过程本身必须防作弊、可复现——这正是下面三条安全机制存在的意义。二、--network none 离线隔离评分容器的零联网铁律为什么要强制断网评分时容器以docker run --network none启动意味着容器内没有任何出站网络。这一设计同时解决三个问题防作弊被测模型无法上网搜索答案、下载现成代码也无法把题目外传防污染模型不能临时pip install绕过环境只能用镜像里已有的工具可复现评分结果不依赖外部服务的状态任何时候重跑都一样。每个任务的配置文件 task.toml 都明确声明了这一点[environment] docker_image hb__task_00002_aa2b6f:latest network_mode no-network仓库内的 1,004 个task.toml无一例外全部是no-network全局评分配置 run_config.yaml 中也有对应声明grading: offline # --network none, tests injected at scoring time断网了评分工具链怎么办一个经典难题是测试脚本要跑 pytest而 pip 安装需要网络。TermGrade 的答案是预烘焙到基础镜像。base_image/Dockerfile 把pytest8.4.1和pytest-json-ctrf0.3.5固定在/opt/verifier_venv虚拟环境里且与系统 Python 隔离——即使模型在答题时把系统 Python 折腾坏了验证器照样能跑。任务级镜像同样为离线做了优化以 environment/Dockerfile 为例它在构建期就把 tmux 和 asciinema 装好。官方注释写道这样智能体脚手架跳过了每轮试验的现场安装耗时从9.8 秒降到 2.9 秒也让no-network模式成为可能——否则无网试验会因装不上 tmux 直接失败。 核心思路一切依赖在构建期解决运行期零下载。这是所有离线评测环境可以借鉴的模式。三、测试延迟注入评委最后一刻才进场如果说断网是防外援那么**测试延迟注入tests injected at scoring time**防的就是偷看考题。关键设计是镜像里根本没有测试文件。/tests目录在构建完成后会被清空测试套件保存在宿主机上只在评分那一刻从宿主机侧的干净副本拷入容器。评分流程摘自 README.md 的 Quick start可直接复现Tenvironments/task_00002_aa2b6f docker build -t mytask:local $T/environment c$(docker run -d --network none mytask:local sleep 600) # 模型作答阶段容器里看不到任何测试 docker exec $c sh -c cd /app bash /solve.sh # 评分阶段此刻才注入测试并打分 docker cp $T/tests/. $c:/tests/ docker exec $c sh -c bash /tests/test.sh docker exec $c cat /logs/verifier/reward.txt # - 1注入后的打分脚本 tests/test.sh 逻辑非常直白调用预烘焙好的/opt/verifier_venv/bin/pytest跑 tests/test_outputs.py全过写reward.txt 1否则写0。这套评委最后进场机制带来两个额外好处测试永远不被污染无论模型在容器里怎么改文件评分用的都是宿主机干净副本测试本身成为秘密模型只能看到 instruction.md 的文字描述无法针对具体断言应试。四、oracle_verified发布前的最后一道闸门前两道防线保护评分过程第三道防线保护任务本身——这道题到底能不能被解oracle_verified标志的含义是参考解solution/solve.sh已经在构建好的镜像内离线跑通了它自己的全部测试。任何无法确认这一点例如参考解跑不过、或题目本身写错了的任务都会被标记出来或剔除。打开 tasks.jsonl每个任务一行都带有这道闸门的记录{task: task_00002_aa2b6f, checksum: ..., gradable: true, split: unseen, oracle_verified: true}实测数据本仓库 1,004 条记录中1,004 条全部为oracle_verified: true——因为不能自证的任务根本没资格进入发布集。每个任务还附带 64 位checksum可用于校验任务内容未被篡改。与之配合的还有两个数据文件文件内容tasks.jsonl每任务的checksum、split、oracle_verifiedlabels.jsonl每 (任务, 模型) 组合的pass_rate、band、n_counted、ktask_source.jsonl全部任务的指令/测试/参考解内联成一张表便于不克隆目录直接阅读⚠️ 选训练数据时记得看split字段202 个任务20.1%曾用于训练或验证内部模型split unseen的 802 个才是干净子集。五、三层防线速览机制防什么在哪里实现--network none模型联网作弊、环境不可复现task.toml run_config.yaml测试延迟注入模型偷看考题、篡改测试镜像清空/tests评分时从宿主机注入oracle_verified题目本身不可解tasks.jsonl 全量true六、总结TermGrade Environments 的评分安全并不依赖某个花哨技术而是三件朴素事的严格组合构建期解决一切依赖、运行期零联网、评分时刻才亮出考卷再用oracle_verified保证每题标准答案能及格。对任何想自建 Agent 评测环境的团队来说这套离线隔离 延迟注入 自证可解的组合拳都是一份值得抄作业的清单。赞分享【免费下载链接】termgrade-environments项目地址https://ai.gitcode.com/hf_mirrors/ai-and/termgrade-environments点击查看免费下载相关推荐自动化凭据存储隔离Kun 如何用 KUN_DISABLE_OS_CREDENTIAL_STORE 保障测试与生产双安全自动化凭据存储隔离Kun 如何用 KUN_DISABLE_OS_CREDENTIAL_STORE 保障测试与生产双安全 Kun 是一款本地优先的 AI Age人工智能AI 应用AI Agent多智能体工具调用Agent 工作流AI 技能MCP Clients桌面应用深入Proxima智能路由器任务分类、EMA延迟与故障隔离的实现原理深入Proxima智能路由器任务分类、EMA延迟与故障隔离的实现原理 Proxima 是一个 Multi AI MCP Server它能把 ChatGPT、Video2X 6.0架构深度解析基于内存驻留的高性能视频超分辨率框架设计模式Video2X 6.0架构深度解析基于内存驻留的高性能视频超分辨率框架设计模式 Video2X作为基于机器学习的视频超分辨率与帧插值框架其6.0版本采用C音视频视频处理图像处理人工智能创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑