Kev-4B (Qwen3)
上一代(Qwen3)。 这个 checkpoint 作为 Apple Silicon 上的快速选项保留(它只含注意力的主干在 MPS 上全速跑打包前向)。要准确率与校准请用 Kev-4B (Qwen3.5):在锁定测试上,同一批条目它域外得 0.832,而本模型得 0.806。权重:
jaredpalmer/kev-4b@qwen3。
Kev-4B 是一个决策模型:一份文档(状态)和一组带类型的问题进去,每个问题一个概率分布出来,全在一次前向传播里完成。不生成文本。它是 Qwen/Qwen3-4B-Base 上的 LoRA 适配器(r=16)加一个指针头,服务 TypeSafe 公开的 /v1/systemone 契约。
推荐的 Kev。 它是在一套冻结、带校验和的协议下、经过约 40 次受控 4B 试验后最好的 4B checkpoint,也是第一个在同一批条目上域外距 Jev 七个点以内的 Kev。同一配方在三个 seed 上跑:transfer 0.773 / 0.790 / 0.770;本 checkpoint 是在开发划分上选出的那个 seed(从不在锁定测试上选)。
- Hub:
jaredpalmer/kev-4b,revision tagqwen3(试验v7-rc3/01-trial-1);仓库的 main revision 现在放的是 Qwen3.5 checkpoint - 代码、套件、每次试验的 hash 与配对 bootstrap:github.com/jaredpalmer/kev ——
PLAN.md(完整记录在 git tagresearch-archive-2026-09-24)、runs/leaderboard.md
结果(每一行都是同一批冻结条目)
| Kev-0.5B(原型) | Kev-0.6B | Kev-4B | Jev | |
|---|---|---|---|---|
| 分布内准确率(decision-v4 dev,1,200 q) | 0.712 | 0.801 | 0.854 | 0.845 |
| 域外准确率(transfer-v4 dev,560 q) | 0.561 | 0.620 | 0.790 | 0.857 |
| 域外 Brier | 0.50 | 0.536 | 0.328 | 0.211 |
| 域外自信错误(p ≥ 0.9 且答错) | – | 10.8% | 8.2% | 3.7% |
| 留出策略结构,两兄弟都答对 | – | 0.08 | 0.73 | 0.86 |
| 选项顺序翻转率 | 0.21 | 0.07 | 0.06 | 0.00 |
逐来源域外准确率(Kev-4B / Jev):QNLI 0.89 / 0.93、SciQ 0.99 / 0.99、TweetEval-offensive 0.75 / 0.81、PAWS 0.72 / 0.79、MMLU 0.65 / 0.90、Emotion 0.66 / 0.59、deadline(3 档日期算术)0.53 / 0.93、(A and B) or not C 0.97 / 0.97、if A then not B else C 0.88 / 0.78。
Seed:decision-v7 上三个 seed:transfer 0.773 / 0.790 / 0.770,留出规则对 0.62 / 0.73 / 0.67(Jev 0.86);本 checkpoint 是 seed 1,按开发集迁移准确率选出。在 decision-v7 上训练(10k 公开记录 + 896 条策略记录,覆盖九个模板家族,含四个序数 Score 阈值家族 + 1,680 条来自 60 个随机规则结构的记录,取反可在任意位置);开发/测试条目与 v4 逐字节相同,所以这里每个数字都可与更早的 checkpoint 比较。
锁定测试,只读一次(runs/locked/kev-4b-v7-preview-ungated/):分布内 0.856(Brier 0.211),域外 0.806(Brier 0.294,自信错误 6.6%,留出对 0.66)。这个划分不会再为本 checkpoint 读取。
训练它时我们学到什么
- 域外由容量主导。 在公开样本与合成预算相同的情况下,0.6B → 4B 是 +14–19 pp;4B → 8B 是 +1–7 pp。
- 微调会侵蚀基座能力,而学习率控制着侵蚀程度。 4B 基座用字母读出做 zero-shot,在同一批 MMLU 条目上得 0.688、在 PAWS 上得 0.787;默认配方(lr 2e-4)训练后降到 0.60–0.66 / 0.56–0.71。把 lr 降到 5e-5 能恢复大部分,这是我们找到的最大单项配方改进;更少的 LoRA 目标模块和更小的 rank 帮助更小。
- 更多公开训练数据会提高分布内准确率、降低迁移(在 4B 上,10k 对 3.4k 条记录:−3 pp)。知识 MCQ 来源(ARC、OpenBookQA、CommonsenseQA)把分布内准确率提到 0.86,但不移动迁移。
- 程序化对比策略对能教会已训练的规则结构(两兄弟正确 0.85–1.0),但对未见结构的迁移只是部分有效(4B 上 0.5–0.6,0.6B 上 0.03–0.11)。
已知局限
- 留出策略推理(未见的规则组合、带宽限期的日期算术)距 Jev 很远。
- 没有训练类似物的产品形状问题没有保证:在 TypeSafe 文档的示例上(「我卡上有两笔扣款」→ 是否存在账单问题?)本 checkpoint 答 0.48(Kev-8B 0.95,Kev-0.6B 0.97),同时把退货原因选对了(尺寸错误 0.53;Kev-8B 0.84;Kev-0.6B 偏好「none of the above」0.58)。在你自己的输入上测量。
- 域外概率可用但未校准(原始 ECE 0.096);在分布内拟合的温度不迁移。
- 4B fp32 需要约 16 GB;在 32 GB Mac 上用
KEV_DTYPE=bf16。H100 上延迟约每打包请求 45 ms;M5 上几百 ms。
训练
冻结套件 evals/v4/decision-v4:10,000 条公开记录(每个来源 1,000,十个来源)加两个程序化策略臂共 448 条记录,两个 epoch,LoRA r=16 作用于注意力与 MLP 投影,指针头从头训练,在选项分布上做交叉熵,lr 5e-5(OneCycle),有效 batch 8,bf16 autocast 配 fp32 主权重,梯度 checkpointing,一张 H100(约 40 分钟)。增强:选项置换、none-of-the-above 插入、干扰项,以及对 25% 的 Choice 记录做 none 最小对。训练没有使用任何 Jev 输出。
评测协议
开发划分用于选模型;锁定的测试划分每个候选最多读一次。每个数字都在 result.json 里带着套件 hash、代码 hash 和 git commit。我们对自己更早主张的更正见 git tag research-archive-2026-09-24 上的 PLAN.md(「Evidence and corrections」)。
使用
uv run --extra serve python -m kev.serve --run jaredpalmer/kev-4b --port 8008 # KEV_DTYPE=bf16 on a 32 GB Mac
任何 TypeSafe 兼容客户端都可用:TypeSafeClient(api_key="local", base_url="http://127.0.0.1:8008", model="kev-latest")。
许可证
适配器与指针头为 Apache-2.0;Qwen3 基座为 Apache-2.0;数据集各有自己的许可证。