开源圈这两天出现了一个很容易被忽略、但值得仔细看的方向:把大模型从一个"什么都会聊两句"的通用助手,收窄成一个"一次前向、一次决策"的分类器。继 TypeSafe 的 Jev 之后,独立开发者项目 Jeff 把 Qwen3.5 和 Gemma 4 微调成三个小型决策模型,权重以 Apache 2.0 放出,单个 0.8B 模型做一次决策只要约 22 毫秒,在家用显卡和 Apple M4 Max 上都能跑。
它到底做什么
Jeff 的思路是:你用自然语言描述一个情境,列出候选项,模型从单次前向传播直接输出每个选项的校准概率。没有生成文本、没有解析,回答的是"该选哪个"而不是"为什么"。官方对它的定位说得很直白:这是一个分类器,不是规划器。推理放在代码里,判断交给模型。
这个格式与 TypeSafe 的 Jev 完全兼容,但项目方明确声明与 TypeSafe 没有任何隶属关系,训练代码基于 MIT 协议的开源方案 AutoJev 改造。
数字层面:小模型打赢了大模型(部分)
先说最有说服力的部分。在五个公开基准共 4599 道题上,Jeff-Qwen3.5-2B 综合得分 83.1,追平了 Jev 公布的 83.0;0.8B 版本也有 79.1。更细的拆解很有信息量:在 Financial PhraseBank 上 Jeff 三个版本全部超过 96,压过 Jev 的 77.0;RAGTruth 上 Jeff-2B 的 88.9 与 AutoJev-27B 并列最高。但在推理密集的 BBH、JudgeBench、JevBench hard 上,小模型差距明显——JevBench hard 上 Jev 拿到 73.3,Jeff-2B 只有 53.3。
这个结果很符合直觉:分类、接地的活儿,微调过的小模型足够用;需要多步推理的活儿,参数量就是硬约束。
全程本地硬件,没有云 GPU
整个项目在一张 RTX PRO 6000 工作站显卡上完成:0.8B 训练约 2 小时,2B 约 3.5 小时。合成训练数据由开源模型 Qwen3.8-Flash-Next 在两台 DGX Sparks 上生成,闭环模型只用于抽查合成数据质量,训练数据里没有闭源模型的输出。训练细节也开源在仓库里:全参数微调、单 epoch、批 256、对选项字母做交叉熵,再用一个拟合温度做校准。
微调半小时,准确率从 31.7% 到 95.8%
对实际使用者最有价值的一条数据:如果零样本效果不够,在自建数据上短微调一轮,收益极大。官方的语音导航微调只用了约 1.1 万条应用内样本、单卡半小时,留存准确率从 31.7% 拉到 95.8%,单次决策延迟约 40 毫秒。另一个极端案例:用 60 万条 Lichess 棋局(Stockfish 标注)微调 0.8B 模型 3.5 小时,在 1000 道留存棋题上解题率从 15.5% 提升到 55.8%,一块 GPU 能同时下约 600 盘人类快棋。仓库还提供了 Doom、Frogger、Pac-Man 三个零样本游戏测试,0.8B 在 Doom 里追平了手写规则机器人。
局限与"所以呢"
项目自己列的边界很诚实:每个问题最多 26 个选项(位置 27 以后基本不会被选中)、只支持英文和文本、小模型不做多步推理、2B 版玩游戏反而不如 0.8B。另外注意:基准成绩不预测游戏表现,基准分更低的 0.8B 是游戏甜点位。
这件事的行业意义在于:Agent 框架里大量"路由、意图识别、审核分类、指令抽取"的环节,并不需要动用千亿参数的大模型。一张工作站显卡加几小时微调,就能得到一个 22 毫秒级、可校准、Apache 2.0 商用友好的决策单元。当推理成本成为 Agent 规模化的瓶颈时,"大模型管规划、小模型管决策"的分工正在从论文变成可复制的工程路径。下次你在 Agent 里写下一个 if-else 链,可以想一想:这个分支判断,是不是也可以交给一个 0.8B 的模型。
(项目地址:firelex/jeff,权重在 Hugging Face mstrasser 名下,代码 MIT、权重 Apache 2.0)