跳到主要内容
返回开发者精选

ReJev:可复现的轻量决策模型后训练

作者:Joe-rq模型:MiniCPM5-2B

LoRA 后训练 MiniCPM5-2B,留出集准确率 51.1% → 80.5%

ReJev 在 MiniCPM5-2B 上把 Jev 式的决策模型训练流程独立复现了一遍,想回答的问题很具体:一个小模型能不能不靠自回归自由生成,也学出稳定的结构化决策行为。

流水线总览

完整的训练与评测流水线,技术报告 §1 有详细说明。

实验设计​

任务形式:state + question + options → one decision(状态、问题、选项,最后给出一个决策)。

  • MiniCPM5-2B + LoRA 后训练
  • 带泄漏检查的封闭留出集(sealed holdout)
  • 约束解码与非约束解码的对比评测
  • 统计显著性检验与分组 bootstrap 分析
  • 实验记录、成本追踪和可复现边界

结果​

在封闭留出集上(1,892 道题 / 924 组),准确率从 51.11% 提升到 80.50%(ReJev-2B):

+29.39pp · 0% 无效输出 · 累计应用账单 $5.31

成本这块要说明白:$5.31 是 rejev 这个 Modal 应用的累计账单,包含它此前所有误运行的开销,不是这次训练单独花的钱。各轮次的成本口径不一样,不能直接比较,也不能相加。

项目没打算宣称自己和 Jev 等价。它想做的是用受控实验把轻量决策模型的工作机制弄明白,再复现出来。关注方向:决策模型、后训练、评测、可复现性。

这个仓库实际展示了什么​

  1. 模型理解:决策模型和生成式 LLM 到底差在哪。
  2. 完整的后训练流程:数据 → LoRA → 评测,而不是调一次 API。
  3. 实验设计:封闭留出集、泄漏控制、基线、显著性检验,还有一次“失败但有信息量”的容量探测。
  4. 工程纪律:成本追踪、检查点、来源锁定、可复现边界,局限照实写,不粉饰。

不做的声明​

  • 不声称与官方 Jev 模型等价,也不声称复现了 Tev1-4B。
  • 不把上面的数字外推到分布外能力。现有证据只覆盖这类考题和同类任务。
  • 不把移除受限数据源的影响归到单一变量上,那次运行里有两个因素同时变了。此前引用的 −2.33pp 已于 2026-09-28 作废:它是在受污染的划分上测得的。干净留出集上修正后的读数是 +0.63pp(CI [−1.13, +2.37])。

每份实验记录都带一节“有效性边界”,写明测了什么、不能从中读出什么。

公开范围​

仓库包含大部分实验记录,不是全部。三类路径整段排除:

  1. exp005(与真实 Jev 的四方对比):结论依赖第三方 checkpoint(Tev1-4B)的实测数字,而那个模型的许可还没明确。
  2. plan/007 和 008(权重发布计划):内容本身就是“查了哪些内部文件、查了什么”,脱敏之后只剩空壳。
  3. src/publish/(权重发布工具链):走 HF / ModelScope 渠道发布,依赖本次导出范围之外的文件;单元测试夹具里还有格式错误的凭据样例,脱敏会把它破坏掉。

另外,上游的数据构建流水线也没放进来:它来自 tev1 的 MIT 代码,需要单独获取。源数据集、模型权重、完整的逐题结果文件同样不在仓库里。

仓库结构​

Plain Text
src/align/ 训练前对齐检查(tokenizer / 模板 / loss mask / 解析),无需 GPU
src/data/ 渲染器与封闭划分(记录 → 指令;分层划分 + 零泄漏断言)
src/train/ 训练与评测(Modal 上的 LoRA SFT、约束解码评测、汇总与统计)
tools/ 远程任务触发脚本(deploy + spawn 模式)与复现路径检查器
docs/plan/ 计划与决策记录(谁基于什么证据做了什么决定)
docs/experiments/ 每轮实验记录(配置、结果、有效性边界、复现路径、账单)

快速开始​

Bash
uv sync --locked --group align --python 3.14.3
uv run --locked --group align python src/align/v1a_check.py --offline # 7 项对齐检查

训练和评测都在 Modal 上跑,需要账号和 GPU 额度。训练脚本请用 deploy + spawn,别用 modal run:后者会把本地进程绑到远程任务上,本地一中断,远程训练也跟着取消。

Bash
modal deploy src/train/clean_train.py
modal run tools/trigger_clean.py # 几秒内返回;训练完全解耦

上游与致谢​

  • tev1(MIT,commit 1dde778):任务协议规范(系统指令、选项标注约定、推理参数)、状态规范化与分层划分都源自这个项目。
  • MiniCPM5-2B(Apache-2.0):基座模型及其官方 TRL LoRA SFT 配方。

链接​

项目信息

基于模型
MiniCPM5-2B
作者
Joe-rq