2026 年 9 月 15 日,TypeSafe AI (其创始人 Diogo Almeida 曾参与 InstructGPT 相关工作)发布了第一款公开的 System One 模型 Jev,训练方法叫 RLCD(Reinforcement Learning for Calibrated Decisions),目标是让报出来的概率尽量接近真实正确率。
模型公开后迅速火爆全网,且衍生出新的产品形态。
和聊天模型相反,Jev 不写句子。你给它两样东西:
state:一段材料,可以是工单、日志、邮件、JSON、文档片段; questions:事先定义好的问题,只有三种原语—— choice:从给定选项里选一个,返回选项、概率分布、置信度;score:按有序量表打分,返回期望分和分布;noul:是/否,返回 (P(\text{yes}))。
所有问题对着同一份 state 并行评估,一次往返给出结构化结果。
一份 state 可以挂很多问题,问题彼此独立、一次并行评估。程序拿到的是能直接分支的值,不是一段还要再读的话
所以社区在抄的,不是「又一个聊天机器人」,而是一种新接口:
软件把判断权交给模型,模型只负责在封闭选项里给概率,程序自己决定怎么分支。
下面精选了8个项目,供大家学习参考
1. SemIf:最省事的一派
仓库:github.com/TheoLeeCJ/SemIf
路线: 不训练,直接读现成大模型的选项 logits
作者 Theodore Lee 一开始把它叫 OpenJev,后来改名 SemIf,强调这是独立项目,不复现 Jev 的权重和训练。思路非常直接:把 Qwen 冻住,拼好 state、问题和 A/B/C 描述,做一次前向,不解码任何答案 token,只把固定选项位置上的分数拿出来做 softmax。
它像把传统大模型换了一种用法:本来模型准备写「答案是 A」,你在它开口之前把笔抢走,只看它对每个字母有多倾向。
作者测过的几个数字比较清楚:
主模型是 Qwen3.5-4B,也支持 MiniCPM5-2B、Qwen3-0.6B(浏览器演示); 在 RTX 3090 上,21 个二元判断直接读 logits 约 1.023 秒,让同一模型生成同等 JSON 数组要 5.332 秒; 在一份可对齐的 TypeSafe 公开子集(102 行)上,Qwen3.5-4B 与参考答案的一致率约 84.5%,Jev 公布数字是 88.3%; 自写决策集上的平衡准确率约 0.813。
优点是门槛低:一张 3090、一块 Apple Silicon,甚至浏览器 WebGPU 就能跑。缺点也很诚实——概率没有按 Jev 那套 RLCD 校准,生产上必须自己用业务数据分桶验证。许可证 MIT。
一句话:SemIf 证明「接口形态」可以当天复刻,不证明「决策质量」已经齐平。
2. Simple Jev:同一段材料只读一次
仓库:github.com/featherless-ai/simple-jev
演示:simple-jev.featherless.ai
路线: 仍然用现成开源模型,但把共享前缀算一次
Simple Jev 和 SemIf 同属「读现成模型分数」这一派,工程上更像一个可落地的分类器服务。它把公共说明 + state 做成共享前缀,先算一遍 KV cache,后面每个问题只跑自己的后缀,再读允许标签的 next-token logits,由服务器拼 JSON。模型本身不生成那段 JSON。
这正是原帖强调的点:同一段材料只让模型读一次,多个问题共用结果。
作者和文档写得很克制:复刻的是 Jev 的接口和用法,不代表准确率、速度和概率校准已经做到 Jev 水平。置信度通常只是「允许标签里最大的那个概率」,不是校准后的正确率。标签还必须能被模型词表拆成可区分的 token,不是随便一个开源模型插上就能用。
它提供本地 Hugging Face / PyTorch 服务,也有 Featherless 上的演示 API。对想先把工单路由、情绪分级跑起来的团队,这是最快能接到现有代码里的一条路。
3. Laya:放弃「会写字的大模型」
仓库:github.com/NandhaKishorM/laya
权重: Hugging Face convaiinnovations/laya
路线: 编码模型 + 专用决策头
Laya 来自 Convai Innovations,参数量只有几亿,不是生成式 LLM。结构更像传统分类器:用 ModernBERT / mmBERT 编码 state 和选项,再接决策头,一次前向给出 choice / score / noul。有三个检查点——英文、多语言、typed-decisions——前面再加一个毫秒级路由器。
速度是它的名片。作者在 T4 上测到单问题 p50 约 32.8ms,10 个问题打包约 72.3ms,对比第三方公布的 Jev p50 236–276ms,大约快 7–8 倍。权重 Apache 2.0,可完全本地部署。
但原帖点名的短板是真的:
Banking77(一次从约 77 个意图里选):Laya 42.5%,Jev 87.0%。原因偏架构——选项要挤在固定的 head token 预算里,77 个选项每个只分到大约 3–4 个 token,描述被挤成一团; 基础检查点在 typed-decisions 上接近随机(约 34–36%),76.6% 那个好看数字来自针对该基准微调后的 laya-typed-decisions;高基数 choice(几十个选项)需要手动加大 head_max_len,或改成两级粗分+细分。
所以 Laya 很适合「选项不太多、要极低延迟、要能离线」的场景,不适合把 77 个意图一次性塞进一个 choice。作者自己也说:它是一块很快的专用底座,不是开箱即用的零样本决策引擎。
4. Von:从头做的专用决策模型
仓库:github.com/wfzyx/von
路线: 非自回归、约 4 亿参数的专用模型
Von 和 Laya 同属「重新训练专用决策模型」。体量约 395M(约 1.5GB),基于双向 ModernBERT 一类编码器,加上 Option-Marker 做并行选项注意力。一次前向同时处理 Choice、Noul、Score,不生成文字。作者自测本地 GPU / Apple MPS 单次大约 十几到二十毫秒。
它把自己定位成 Jev 的本地替代:工单分流、邮件优先级、内容审核、安全事件分诊,以及需要亚 20ms 闭环的控制任务。作者甚至拿 ViZDoom「Defend Center」做零样本控制,报出比托管 Jev API 更高的击杀数——这更像延迟优势,不能直接读成「决策智能超过 Jev」。
在作者自己的 49 任务套件上,Von 宏准确率大约 71.5%,Choice 子项约 83.4%,对比表里 Jev 仍明显更高(宏准确率报到 96% 量级)。不同仓库的任务集并不互通,这类数字只能当方向,不能当总决赛。
一句话:Von 把「新一代能读自然语言的分类器」这条路走得很彻底,快、小、可本地;复杂语义和超多选项上,和闭源 Jev 仍有可见落差。
5. Verdict:体积更小,专门打「虚高置信度」和「换序就变卦」
仓库:github.com/Heman10x-NGU/openJev-verdict-2.0
路线: 1.5 亿参数的校准型决策引擎
Verdict 大约 150M(文档里写 149.6M / 151M),底座是 ModernBERT-base,作者强调两件事,正好对应原帖:
模型答错了还报很高置信度; 把 A、B 选项前后对调,答案跟着变。
做法是双头:一个输出选项分布,一个单独输出置信度;训练时加入 Symmetric Permutation-KL,同一题打乱选项顺序再算一遍,惩罚两次分布不一致。作者称在笔记本级 GTX 1660 Ti 上训练约 8.8 小时。
在 LocalLLaMA / typed-decisions(2000 条留出决策)上,作者给出的对照是:
| 77.10% | 0.0636 |
选项顺序翻转率报 4.76%,对照 Kev-0.5B 公布的 7.41%。
这些数字来自作者自己的 harness,和 Jev 官方大盘不是同一套题。它真正有价值的地方,是把「校准」和「顺序稳健」从口号变成了训练目标。原帖说这条路线很看重判断结果和概率能不能稳定,Verdict 是这一派里最对题的一个。
6. Kev:保留大模型,给 Qwen 加决策结构
仓库:github.com/jaredpalmer/kev
作者: Jared Palmer
路线: 改造现有大模型,而不是扔掉它
第三方逆向 Jev 时,有一种猜测是:共享 state 只编码一次,每个问题走独立分支,用指针/边界 token 读出选项概率。Kev 按这个形状改 Qwen:共享前缀只读一次,问题之间用块因果掩码或分行隔离,避免互相偷看。API 刻意对齐 TypeSafe System One,可以把官方 Python SDK 的 base URL 指到本地。
当前一代基于 Qwen3.5,公开了 0.8B / 4B / 9B。原帖写的是早期 8B 数字:没见过的新题上约 78%,Jev 约 86%。仓库更新后的对照更细一些——Kev-9B 在新来源测试集约 83.7%,Jev 对照约 85.7%;Brier 仍落后(约 0.243 vs 0.211)。差距在收窄,但校准和部分组合规则(尤其带日期、否定嵌套的 score)仍然是短板。
Kev 的意义不在「已经打平」,而在证明:
不必从零做分类器,把现成因果 LM 改成「一次前向、多问题、只出概率」,这条路能跑通,而且可以自己训练。
许可证 Apache-2.0。对愿意接受微调、又想留住 Qwen 世界知识的人,这是最接近「开源版 Jev 配方」的项目之一。
7. Nimble:靠训练把 Qwen 练成 Jev
仓库:github.com/bespokelabsai/nimble
权重: Hugging Face bespokelabs/Bespoke-Nimble-9B
路线: 对比数据 + LoRA,把 9B 训成决策模型
Bespoke Labs 的 Nimble 更像一篇可复现的训练论文,而不只是推理套件。底座 Qwen3.5-9B,LoRA 只训答案 token。数据方法是原帖写的那句:构造几乎一样的两段材料,只改一个事实,正确答案就翻转。模型必须学会「到底是哪一句在决定答案」,而不是背题面。训练集约 2676 条,一个 epoch。
在作者冻结的 324 条留出样本上:
| Bespoke-Nimble-9B | 90.12%(292/324) |
| 93.21%(302/324) |
9B 微调后超过未微调的 27B,离 Jev 只差约 3 个点。作者同时提醒:报出来的概率目前还没有完全校准,只是候选上归一化后的相对分数,不能直接当正确率使用。标签由程序根据设定事实生成,没有人工逐条审核;324 条也偏窄,换一套题数字会动。
Nimble 的贡献主要是配方:对比翻转数据、只训答案位置、数据和代码一起公开。想自己做垂直领域「小 Jev」,这套数据思路比单纯堆分类样本更值得抄。
8. OpenJev:用扩散模型一次把答案填上
仓库:github.com/razorback16/openjev
模型: NVIDIA 量化的 DiffusionGemma 26B-A4B
路线: 离散扩散,而不是从左到右吐字
这是原帖里最不一样的一条。DiffusionGemma 不是按 token 往后写,而是对一整块「画布」做去噪,一次填很多位置。OpenJev 先在画布上写下答案模板,比如:
q1: ▒
q2: ▒
q3: ▒
只把标签槽位留成噪声,做一次只读去噪,直接得到每个问题在合法标签上的分布。熵太高就最多再读几遍取平均。没有逐 token 生成,也没有 JSON 解析,因此格式上不可能写出schema 以外的东西。
作者在 RTX PRO 6000、每请求 3 个问题、打散缓存的条件下测到:
并发 1:p50 / p95 均为 94ms,约 10.7 req/s 并发 16:p50 367ms 并发 32:p50 545ms
接口按 Jev 的 /v1/systemone 来,官方 SDK 改 base URL 就能打。Codiv 上还有免费托管入口。限制也明确:choice 最多 128 个选项(Jev 是 255),问题会按大约 12 个一组切块,质量仍取决于 DiffusionGemma 本身,显存门槛大约 24GB。
如果 SemIf/Simple Jev 是「截住自回归模型的笔」,OpenJev 就是「换一种生成物理」:答案位置本来就是并行的,决策接口和扩散天然同构。