模型读完你的问题,心里其实已经有答案了。让它把这个答案"写"出来,是拿到答案最绕也最贵的一条路。 minojev 直接从模型的隐藏状态里读出答案,变成一组你事先选好的选项上的概率。
三步搞定,没有生成循环,也不用写解析器。
每个候选拼成一条输入:状态 + 问题 + 这个候选。同一个状态下的所有问题共用前缀。
所有候选一起送进模型跑一遍,决策头只读取隐藏状态,全程不生成任何 token。
选择、判断、打分三类问题都返回概率分布;用验证集拟合的温度让置信度保持真实。
它不只是一个演示,这些是它的底气。
547k 参数的模型和字节分词器,在笔记本 CPU 上几分钟就能训完:不用下载模型、不用 API key、不用 GPU。
数据集、参考分布、逐题预测、指标、回放数据,全部随仓库一起提交。
温度在验证集上拟合并写进模型文件,校准前后的误差(ECE)都公开。
既可以自己从零训练决策头,也可以跳过训练,直接读取 Hugging Face 预训练模型的原生 logits。
同一个状态下的多个问题一次算完;每个状态只预填充一次缓存,后面都是便宜的支线计算。
模型、训练、校准、演示全部加起来,一个下午就能读完。文档中英双语。
都只是回放已提交的结果包——不需要任何后端模型。
547k 参数,纯 CPU,用 scripts/build_results.sh 可完整复现。
minojev synth --out data/train.jsonl --count 512 --seed 17 --split train minojev train --train data/train.jsonl --dev data/dev.jsonl \ --output-dir runs/synth --steps 800 --calibrate gold --device cpu minojev score --checkpoint runs/synth/checkpoint \ --input examples/decisions.jsonl --output results.jsonl --mode reuse