← 全部演示 多领域体验 决策工作流 置信度 迷宫演示 GitHub English

把答案读出来,别写出来

同一个底座、同一批问题、两种回答方式。minojev 从隐藏状态直接读出带类型的分布; 基线只能逐 token 解码。真正让读出变好的是头训练:冻结骨干、缓存一次候选特征,然后只训决策头。

正在加载 data/benchmark.json …

测量说明:数据来自一台 Apple Silicon 笔记本在正常桌面负载下的单次测量,不同运行间会有波动—— 请在你自己的硬件上运行 minojev compare。这里按单请求顺序测量;批处理与共享前缀复用 会对引擎更有利,而逐 token 生成要付出更长的长尾(p95),并且只要答案不只是一个字母就需要解析步骤。 在合成坐标任务上,从零训练的紧凑模型仍更强(迷宫 5/6 vs 冻结 1.7B head 的 2/6),因此迷宫 Demo 保留小模型。

分来源准确率

来源minojev生成式

什么是"头训练"

1.7B 冻结骨干 8000 条请求 缓存特征 只训决策头 dev 温度校准

骨干权重全程不动。每条候选路径(状态 + 问题 + 选项)只前向一次,末位隐藏状态被缓存;随后只用 几百万参数的决策头在这些缓存向量上做分布损失训练,最后在 dev 上拟合温度。本次运行在笔记本上 约 37 分钟、4GB 内存,骨干没有灾难性遗忘风险。产出的是一个 零输出 token 的带类型、可校准分布,而不是需要解析的句子。

minojev build-data --per-source 2500 --per-ood 800
minojev posttrain --backbone Qwen/Qwen3-1.7B --mode head \
  --train data/general-train.jsonl --dev data/general-dev.jsonl \
  --output-dir runs/general-head --steps 3000 --inference-dtype bfloat16
minojev compare --checkpoint runs/general-head/checkpoint \
  --input data/general-test.jsonl --limit 120 --chat-template

为什么重要

零解码

每个决策 0 个输出 token。生成式基线即使被要求只答一个字母,也要花 2.5–3.5 个 token。

没有首 token 等待

根本没有"第一个 token":答案是读出来的。基线在 ~100ms 后才出首 token,p95 可拖到数秒。

可校准置信度

每个答案都带概率分布,温度在 dev 上拟合、ECE 公开;生成式给不出概率。