aisa-group/PostTrainBench
Measuring how well CLI agents like Claude Code or Codex CLI can post-train base LLMs on a single H100 GPU in 10 hours
PostTrainBench
它是什么 – 一个基准测试,用于评估自主 LLM 代理在 post‑train(微调)预训练大语言模型以提高其在下游任务中表现的能力。代理被赋予固定的计算预算(10 小时 H100)和一个评估脚本,其成功与否通过微调模型在目标基准测试中的最终得分来衡量。
为什么重要 – 随着 LLM 能力的增强,下一个前沿领域是让其他 LLM 运行研究循环:数据收集、超参数搜索、模型更新和评估。PostTrainBench 提供了一个具体且可复现的环境,用于比较不同的“LLM 作为研究助手”流水线。
关键组件
- 四种 CLI 脚手架 – Claude Code、Codex CLI、Gemini CLI 和 OpenCode。每个脚手架封装了不同的 LLM 提供商,允许使用不同的代理运行相同的基准测试。
- 六项不同的下游任务 – AIME 2025(硬数学)、Arena Hard Writing(创意写作)、GPQA(研究生水平科学)、GSM8K(小学数学)、HealthBench Easy(医学推理)和 HumanEval(代码生成)。这种广度测试了推理、领域知识和编码能力。
- 参考执行环境 – 基于 HTCondor 的 HPC 流水线(默认)和一个云 GPU 适配器(
src/harbor_adapter/),无需集群即可在 Modal 上运行整个基准测试。 - 提示词模板 – 一个详细的系统提示词(见 README),指示代理在遵守约束(无测试数据泄露、时间限制、仅微调指定基础模型等)的前提下,自主研究、实验和微调模型。
如何运行
- 安装系统依赖(
apptainer、fuse‑overlayfs)。 - 构建提供的容器(
bash containers/build_container.sh standard)。 - 拉取模型加载所需的 HuggingFace 缓存。
- 在
.env文件中填入您的 API 密钥(OpenAI、Anthropic、Gemini、OpenCode、Z.AI)及可选路径。 - 使用
bash src/commit_utils/commit.sh(HTCondor)提交作业,或对于云 GPU,请遵循src/harbor_adapter/README.md中的说明。
支持的代理
- 基于 API 的代理(OpenAI、Anthropic、Gemini、OpenCode、Z.AI) – 密钥从环境中读取并注入到容器中。
- 基于订阅的 CLI 代理 – Codex (ChatGPT Pro) 和 Claude Code (Claude Max) 需要一次性登录/身份验证令牌,该令牌在提交时被复制到作业目录中。
项目布局
| 文件夹 | 用途 |
|---|---|
agents/ |
四种 CLI 代理的实现及其配置文件。 |
containers/ |
Docker/Apptainer 定义以及下载预填充 HuggingFace 缓存的脚本。 |
src/ |
核心基准测试代码:作业提交工具、基准计算器、评估任务定义和 Harbor 云适配器。 |
results/ |
每次运行写入最终得分的地方(基准运行以 baseline_ 为前缀)。 |
logs/ |
HTCondor 日志文件(已在 git 中忽略)。 |
典型工作流程
- 选择一个基础 LLM(例如
llama‑2‑7b)。 - 选择一个目标基准测试(例如
GPQA)。 - 代理接收提示词,运行
evaluate.py获取基准分数,然后迭代收集数据、微调并重新评估,直到 10 小时预算用尽。 - 最好的微调检查点保存在
final_model/中,并记录其分数。
适用人群
- 研究 LLM 驱动的 AI‑R&D 和自动化微调流水线的研究人员。
- 构建 LLM 代理且需要标准测试平台来验证自我改进能力的团队。
- 寻找多任务、计算受限评估套件的基准测试设计者。
联系与引用
- 维护者:Ben Rank, Hardik Bhatnagar, Maksym Andriushchenko(电子邮件见 README)。
- 引用随附的 arXiv 论文(
arXiv:2603.08640)。
相关
- 项目
- 项目
- 项目
- 项目
- 项目