Jeva:直接从候选里选答案的模型,为什么换个顺序也不改主意?
把答案当文本续写,决策问题的四条结构会一起丢掉
Jeva 这篇论文要解决的问题很具体:让模型做「从若干候选里挑一个」这种决策时,把 request 和选项拼成一段文本、再读某个 answer token 的 logits,这种做法会系统性地丢掉四条结构性质。作者 Qi Li 与 Xinchao Wang(NUS)给出的解法是一个 request 与选项各自独立编码的决策架构,用 1337 万个可训练参数在 Qwen3.5-4B 上做到置换成零翻转、98.66% 的判空 AUROC、2048 个候选下 69.88% 的准确率 Jeva。这篇论文真正的主张是:这四条不是调参没调好的工程细节,而是从 request 与选项被拼进同一条序列那一步起就注定的结构性损失。
这四条会同时出问题,是因为它们从同一个编码动作里长出来,而不是四个恰好都掉链子的独立指标。低延迟地输出结构化概率决策是 System One 路线追求的目标,这个说法来自 TypeSafe 的公开叙事 TypeSafe,Jeva 不反对这个目标,反对的是实现路径。把 request 和选项序列化成一段文本再读 logits,等于把语义表征、候选之间的相互比较、以及「答案到底在不在候选里」这三件事压进同一次前向,而它们本该分开算。挤在一起之后,每个候选的向量就不再只由它自己决定,它取决于 request 怎么写的,也取决于它前面出现过哪些候选。
候选之间因此只能靠同一次 attention 相互比较,谁与谁相邻、排在什么位置都会改写彼此的表示。把同一组选项打乱,选择就可能跟着变,permutation-invariant 拦的正是这个。同一个候选换一个 request、或者换一批同时出现的其他候选,它的向量也要整段重算,因为这份计算被锁死在当前这段文本的上下文里,cacheable 也就无从谈起。
输出空间同样被这段文本绑住。候选必须以 token 的形式出现在序列里,候选从 8 个涨到 2048 个时输出空间就得跟着重做,而不是共用同一个打分头,option-scalable 在拼接路径上做不到。至于 null-aware,「这里没有答案」只能作为一个 special token 混进同一个 softmax,和所有候选争夺同一份概率质量。候选越多,这份质量被摊得越薄,判空越难成立,可它本来的要求只是把正确答案从候选里删掉时能说出「没有答案」,而不是从剩下的错项里硬选一个。

图注:上半段把两种系统并排画出。左侧的 joint-encoding 用 N 个决策块串联处理一段拼接文本,右侧的 Jeva 用独立的 request 编码器、共享的候选编码器和单个决策块反复读取不变的选项记忆。下半段四个小框分别示意显式判空、重排后选择不变、可变候选集、以及选项表示跨请求复用。Jeva
这四条为什么总是同时出问题,因为它们共享同一个根因。只要 request 和 option 被放进同一条序列,选项之间就没有彼此独立的表示,选项侧的计算就被锁死在 request 的上下文里,输出空间也依赖于那段文本里出现过哪些候选。它们不是一个设计里四个可以单独拧的旋钮,而是同一个编码选择的连带后果。这正是论文要把它当作架构问题、而不是生成之后再做后处理的问题来处理的原因。
Jeva 的解法:request 与每个选项各自独立编码,只有 request 状态在动,选项记忆保持不动
Jeva 的全部设计就是把决策拆成两条互不干扰的计算。request 侧和 option 侧各自独立编码,选项记忆一旦算完就冻结,只有 request 状态在反复读它。四条结构性质能同时成立,靠的就是这个结构基础,而不是四套分别打的补丁。
具体地,一个共享 backbone(Qwen3.5-4B,pooled width 2560)分别编码两种模板。request 模板包含决策类型、问题与状态,每个 option 模板形如「针对该决策类型的一个候选项」。两段零偏置投影把结果拉到决策宽度 d=768,得到 request 的初始状态 z0 与每个 option 的向量 u_i。关键一步是候选行在一次前向里被冻结,这就是不可变选项记忆(immutable option memory)的实现基础。request 侧随后进入一个很轻的决策堆栈,只有 L=1 个块、H=8 个 head、SwiGLU 宽度 3072,它只精炼 request 状态,不修改任何候选行。因为打分头与候选数无关,候选变多也不需要扩张输出空间。
这里有一条可以被搬过来的成熟结构。Perceiver 用一个固定维度的 latent array 反复 cross-attend 一个很大的、不变的 byte array,其中 query 来自 latent,key 和 value 来自 byte array Perceiver。把对应关系摊开看:Perceiver 的 latent array 就是 Jeva 的 request 状态,byte array 就是那份不变的选项记忆。正因为 K 和 V 全部来自选项一侧,选项侧的计算与 request 无关,算完就能留着;而 request 状态可以读它很多遍,读的过程不改动它。Perceiver 只是数据流上的形式同源,两者的任务并不相同。

图注:图上方的 Latent array 与下方的 Byte array 通过 Cross Attention 相连,Q 来自 latent、K/V 来自 byte array,输出再进入 Latent Transformer 做自注意力,如此重复多轮,末端 Average 后得到 Logits。这正是「一个状态反复读固定输入」的数据流。Perceiver
训练上,backbone 冻结,只挂 rank-64 的 LoRA 增量,加上两个 2560 到 768 的投影和一个决策核,总共 13,370,117 个可训练参数 LoRA。LoRA 论文里常被引用的「参数减少一万倍、显存减少三倍」只属于 GPT-3 175B 的设定,不能套到 4B 的 backbone 上;Jeva 用到的是「冻结原权重、只训低秩增量」这个机制本身。输出侧只有一套接口,Choice 在候选里挑一个,Noul 判定候选里根本不存在答案,Score 给候选打连续分,三者共用同一次前向。
三个命题把「为什么必须这样设计」钉死:单块就够、判空必须独立、重排与复用不改输出
这一章是全文最抽象的部分,但它说的是三件能写成命题的事,而不是工程技巧的堆叠。偏好只有在集合条件下才算得对;判空与候选竞争是两回事;重排和复用不应该改变输出。
Proposition 1 是「为什么必须做集合条件决策」的根本理由。论文给出一个具体构造来钉死它:初始 request 状态取 $z_0=(1,0)$,候选向量取 $A=(4,3)/5$、$B=(4,-3)/5$、$C_\pm=(3,\pm 4)/5$,温度 $\tau=3/20$,比较两个只差一个干扰项的候选集合 $(A,B,C_+)$ 与 $(A,B,C_-)$。在单块集合条件精炼之后,A 与 B 的分数差满足 $s_A(O_\pm) - s_B(O_\pm) = \pm 24\alpha w/25$,随两个集合变号,也就是说哪个更受偏好会翻转。而一个独立评分器只要按 $\log(q_i/q_j)=(g_i-g_j)/\tau$ 归一化,分母在比值里被共享抵掉,比值只由 $g_i-g_j$ 决定;由于 $g_i$ 只依赖 request 和单个选项 $o_i$,不含另外那些候选,A 与 B 的相对偏好在任何候选集里都一样,永远翻不过来。这条结论背后是 Deep Sets 那条定理:任何对顺序不敏感的集合函数,都必然能写成先逐项变换、再对称聚合、最后读出的形式 Deep Sets。

图注:左侧的输入集合 X 中每个元素先进入 φ 做逐项变换,顶部虚线框里的 z 可作为额外条件注入到 φ,变换后的表示经对称聚合符号 ⊕ 汇合,再由 ρ 读出整个集合的表示 S(X)。这种「先各自变换、再对称聚合、最后读出」的骨架就是 Proposition 1 里集合条件状态的来源。Deep Sets
判空这部分是 Proposition 2。如果把 null 塞进 softmax,当 K 个候选分数相同时会得到 $p_\bot = \sigma((b_0-s)/\tau - \log K)$,候选项越多判空概率被压得越低。这是一个随候选数 K 增长的基数偏差(cardinality bias),不是训练不足或校准问题,专注调参也无法消掉它。所以 Jeva 单独估一个覆盖度 $\rho=\sigma((\max_i s_i - b_\text{Cov})/\tau_\text{Cov})$,再按 $P(Y=i)=P(Y\neq\bot)\cdot P(Y=i\mid Y\neq\bot)$ 把「有没有答案」和「答案是哪个」拆开相乘。这条把答不到当成独立输出的思路有清晰的历史:SQuAD 2.0 早就把 unanswerable 做成一个与答案分布并行的独立概率头,selective classification 则把弃答形式化为一个可在风险约束下学习的二值决策 SQuAD 2.0 Selective Classification。Jeva 的覆盖度门控是这两条脉络在 LLM 决策头里的合一。此外,一个独立的温度缩放后处理可以补齐概率校准这一层 Guo 2017。
Proposition 3 讲对称与复用。在固定权重和决定性精确算术下,重排候选行只会让求和的下标重排,不改变精炼后的状态,因此 Choice、Noul、Score 三种输出都不变。更实用的一半是复用:每个选项的缓存条目只包含它的向量和 K/V 投影,完全不含 request 和其他候选,所以把它替换成等价缓存项不会改变后续任何操作。新组装的候选集只要复用已经算过的项,只补缺失的那些。这套「选项侧各自独立编码、可以提前算好」的做法在检索里是标准件:DPR 把 query 和 passage 分成两个独立编码器,passage 端用 FAISS 离线建索引 DPR;ColBERT 把它推到 token 级,两侧各自编码到末尾才用 MaxSim 对齐 ColBERT。Jeva 把这套思路从检索搬到了 LLM 决策头,还多加了集合条件与判空。
结构不是花架子:换序零翻转、判空 98.66% AUROC、2048 个候选仍保住 69.88% 准确率
这四条结构性质对应的不是口号,而是四组能直接量出来的数字差,而且差距最大的地方恰好是 baseline 在结构上做不到的地方。先看决策质量与稳定性。在通用准确率上,Jeva-4B 在 8 列里有 7 列拿到第一或并列:BANKING77 在 K=8 时 92.05、K=16 时 91.62,MASSIVE 在 K=8 时 91.09、K=16 时 90.22,Mind2Web 三个切片 79.99、62.25、66.23 均列第一。唯一的例外是 Typed Test,78.30 排第二,第一是 InternDecision-4B 的 78.70。分数保真度上,Noul Brier 0.0184、Score MAE 0.2315、Score RMSE 0.3222,其中 RMSE 与 InternDecision-4B 的 0.3208 非常接近。换句话说,纯准确率这一层 Jeva 并没有碾压谁。

图注:左 panel 是 Noul Brier 与 Score RMSE 的散点,越低越好;中 panel 是 BANKING77 K=16 上的四条 null ROC,图例给出各自的完整 AUROC 并标出近 5% FPR 的操作点;右 panel 是 600 个 Choice 例子上 original 与 all-order 准确率的散点,线段长度就是置换敏感度。Jeva
真正拉开差距的是置换稳定性。在 600 个 Choice 例子上,Jeva 的翻转次数是 0,平均总变差 3.17×10⁻⁸,all-order accuracy 76.67%。作为对照,Jev-1.13.0、InternDecision-4B、JevK5 的翻转比例分别为 17.00%、22.67%、26.17%,all-order accuracy 分别降到 66.67%、64.50%、47.83%。换个顺序就改主意的比例,对照模型在两成上下,Jeva 是零,这对任何要靠决策驱动下游动作的系统都是质变。
判空上,在 3,080 个 BANKING77 K=16 请求(其中 588 个正确答案不在候选里)上,Jeva 拿到 98.66% 的 null AUROC,对照的 KEV-BF16、InternDecision-4B、JevK5 分别是 93.61%、84.27%、79.44%;在 5.02% 的假正率处召回还有 93.88%。候选规模上,在 ToolRet 的 500 个请求上把候选数从 32 一路嵌套扩展到 2048,Jeva 的聚合准确率 78.40%,递归式选择的 JevK5 只有 64.00%;K=2048 时 Jeva 仍有 69.88% 准确率、p50 延迟 12.040 秒,对照 JevK5 是 67.47% 与 28 秒。同样 83 个 query 在 32 到 2048 的嵌套扩展中,Jeva 有 58 个在全规模下都答对,JevK5 是 48、CLM 只有 7。这些数据集分别是 BANKING77、MASSIVE、Mind2Web、ToolRet 等公开基准 ToolRet。

图注:一行四联 panel 把四条性质一次收口,依次是 BANKING77 K=16 的判空 ROC、Typed Decisions 上的置换稳定性散点、候选数增长下 native 与 recursive 选择的准确率与延迟折线、以及 Cache-Off、Set、Hybrid 三种模式在 Typed Decisions 与 MLDR 上的延迟柱。Jeva
跨请求复用的效果最能说明 cacheable 的含义。在 MLDR 上取 50 个新组装候选集的请求,整组命中率为零,也就是没有任何一个请求能直接复用已有的整份记忆;在约一半条目可复用的条件下延迟降到 1.95 倍,全复用时 p50 加速 27.98 倍。MLDR 上带预热的 p50 从 2,102.0 毫秒降到 75.1 毫秒,配对加速比 27.86 倍;Typed Decisions 上从 93.1 毫秒降到 46.6 或 46.7 毫秒,99.2% 的编码行被绕开。这里被缓存的是选项侧的向量与 K/V 投影,不是答案本身,request 状态与最终决策每次都重新跑,上界条件下最大绝对概率差只有 0.00736,没有任何决策翻转。
它把决策从文本生成里拉出来,但保证只在单块、2048 候选、冻结权重这一片成立
Jeva 的意义在于把决策从文本生成里拉出来,当作一个独立的架构问题:它让决策结构成为可证明的形式性质,给 Choice、Noul、Score 提供了统一的工程接口,也把检索里「独立编码加上可预先算好」的思路推到了 LLM 决策头。但这份保证是条件式的,论文没有展开的几条边界每一条都恰好对应一条结构性质,换掉前提就要重新验证。
| 结构性质 | Jeva 给到的保证 | 失效前提 |
|---|---|---|
| null-aware | 独立覆盖度门控,BANKING77 K=16 上 98.66% AUROC | 多模态候选未验证 |
| permutation-invariant | 决定性算术下重排不改状态与输出,600 例零翻转 | 混合界 α/τ 只在 L=1 单块下成立 |
| option-scalable | 共享打分头,已验证到 K=2048 | 单次注意力仍是 O(K),更大 K 未验证 |
| cacheable | 选项侧计算可替换为缓存条目,MLDR 配对加速 27.86 倍 | 依赖权重、tokenizer、模板与长度策略全冻结 |
具体地说,单块是否随 backbone 规模 scaling 仍然成立没有验证,α/τ 与新增候选的界都只在当前 L=1、H=8 的设定下给出;option-scalable 目前的上限是 2048 个候选,更大会怎样需要新的评估;跨请求复用要求权重、tokenizer、模板和长度策略全部冻结,参数一旦更新,旧的选项记忆就必须作废,在线学习下的代价论文没有讨论;论文也未讨论 System 2/tool-use 与 System 1 的严格边界,也未涉及图像、音频、视频这类多模态候选。截至 2026-10-14,这篇论文只有 arXiv preprint,尚未见同行评审接收,也没有第三方复现,上述所有数字目前都只有作者一方来源。
它的判断价值在于给出了一条可检验的路线:如果你正在做分类、检索、工具选择或意图识别这类从候选里选一个的工作,并且在意稳定性与延迟,那么把 request 与候选分开编码、让候选侧计算可冻结可复用、把判空拆成独立门控,这三件事是可以直接借鉴的结构原则;而如果你的候选集会跨过 2048、或者需要频繁在线更新权重,就得先补一轮验证再谈部署。
想深入可以读原文:Jeva: System One Models from First Principles — arXiv:2610.18773
参考文献
- Jeva: System One Models from First Principles(arXiv:2610.18773, Qi Li & Xinchao Wang, NUS)
- Introducing System One Models & Jev(TypeSafe AI blog, 2026-10-13)
- Dense Passage Retrieval for Open-Domain Question Answering(Karpukhin et al., EMNLP 2020)
- ColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT(Khattab & Zaharia, SIGIR 2020)
- Perceiver: General Perception with Iterative Attention(Jaegle et al., ICML 2021)
- Deep Sets(Zaheer et al., NIPS 2017)与 Set Transformer(Lee et al., ICML 2019)
- Know What You Don’t Know: Unanswerable Questions for SQuAD(Rajpurkar et al., ACL 2018)与 Selective Classification for Deep Neural Networks(Geifman & El-Yaniv, NIPS 2017)
- Retrieval Models Aren't Tool-Savvy: Benchmarking Tool Retrieval for Large Language Models(ToolRet,Shi et al., Findings of ACL 2025);评测另涉及 BANKING77、MASSIVE、Mind2Web
- On Calibration of Modern Neural Networks(Guo et al., ICML 2017)
- LoRA: Low-Rank Adaptation of Large Language Models(Hu et al., ICLR 2022)