一文讲清最近爆火的 Jev 和 Laya
一文讲清最近爆火的 Jev 和 Laya
9 月 15 日 TypeSafe AI 发布 Jev,3 天后开源仓库 Laya 建仓。两者说的是同一类模型:输入一段非结构化文本,输出一个类型化判断和它的概率,属于判别式决策模型。官方原话是「unstructured state in, typed probabilistic decisions out」。
它顶不了主模型,只当 Agent 里的判断点。好处有 2 条:把原来交给大模型的判断换成近乎免费的一次调用;返回值只落在这组选项里,编造不出不存在的工具名。
本机实测的结论有 2 条:速度成立;概率要看权重,未微调的基础权重上偏离,官方微调权重上基本成立。数字都在 RTX 4080 上跑出,Jev 的数字标出处。
一、先说结论
| 维度 | 判断 |
|---|---|
| 是什么 | 判别式决策模型 |
| 省多少钱 | 官方同页实测 $0.0004 一条,比 Opus 5 便宜 440 倍 |
| 性能提在哪 | 一次调用答完全部判断;选项外的值编造不出来 |
| 最贴合 | Agent 入口的意图识别与工具路由 |
| 做不了 | 不生成文本,抠不出日期金额;选项上限 255 个 |
| 本机 · 速度 | 成立。50 问一次调用 46.5 毫秒 |
| 本机 · 概率 | 要看权重。未微调 6 / 7 偏离,微调后 2 / 7 |
| 用法前提 | 开源权重必须先微调 |
二、它到底是什么
跟聊天模型比,2 个维度同时不同。解码方式上,聊天模型逐 token 自回归,它把候选的分数一次算完;建模目标上,它学的是条件概率。它也不等于朴素分类器,加判断只改选项。
端点只有 1 个,一次请求可挂多个问题:
| 原语 | 问什么 | 返回与上限 |
|---|---|---|
| choice | 从给定选项里选一个 | 选中项加全量分布,上限 255 个选项 |
| score | 在有序量表上定位 | 可落在级别之间,2 到 10 级 |
| noul | 该命题是否为真 | 0 到 1 的概率,无单独置信度 |
置信度由分布的形状推导,不等于最高概率。官方文档的示例里,第一名 0.85 胜出,置信度只有 0.78,因为第二名还占着 0.15。分流能直接写进代码:高于 0.9 自动执行,0.7 到 0.9 交强模型复核,低于 0.7 转人工。
Laya 是这套契约的开源实现,下面的数字由它跑出:
import laya
agent = laya.load("权重目录")
q = {"type": "noul",
"instructions": "退款是否已办"}
print(agent.predict("订单晚到两天。",
{"退款办了吗": q}))
三、公布的数字和实测的数字
Jev 的头条指标都出自自家评测。
| 指标 | 官方公布 | 独立第三方 | 本机实测 |
|---|---|---|---|
| 延迟 | 70 到 500 毫秒 | 单条约 380 毫秒 | 50 问 46.5 毫秒 |
| 对比前沿模型 | 快 40 到 200 倍 | 快 5 到 25 倍 | 未测 |
| 准确率 | 自家评测页 61.7 到 76.0 分 | 49 任务分类 0.966 | 明写答案 1.000,真实题 0.633 到 0.900 |
| 校准 | 说 90% 就接近 90% 正确 | 未复测 | ECE 0.082 到 0.389 |
官方评测页把准确率、成本、耗时画在一张图上。同页最强条目 79.1 分、34.3 秒、0.22 美元;Jev 的 6 条落在 61.7 到 76.0 分。
Laya 的 README 写得实:基础权重准确率 0.362,低于多数类基线 0.461,0.766 出在微调权重上;3 套权重里只有微调那套带 fine_tuned 标记,Jev 是托管服务,这一步得自己补。选项一多它也掉:77 个选项时 0.425,同题 Jev 是 0.870。
四、好处之一:省多少钱
最硬的对照是官方评测页自己放的。同一页、同一批任务、同一套判分口径:
| 模型 | 准确率 | 单条成本 | 单条耗时 |
|---|---|---|---|
| Jev | 67.8% | $0.0004 | 0.4 秒 |
| sonnet 5 | 67.8% | $0.1174 | 78.1 秒 |
| terra | 67.9% | $0.0304 | 10.1 秒 |
| sol | 74.1% | $0.0836 | 23.3 秒 |
| opus 5 | 73.1% | $0.1761 | 37.8 秒 |
准确率那一列要看清楚。Jev 与 sonnet 5 同为 67.8%,对方贵 294 倍、慢 195 倍;terra 只高 0.1 分,贵 76 倍;sol 与 opus 5 高 5 到 6 分,贵 209 到 440 倍。官方自己在图上写了一行:「nothing is both cheaper and more accurate」。
省钱的原因与价格战无关,在形状。Jev 输入 0.042 美元每百万 token,GPT-5 nano 的输入是 0.05 美元,比 Jev 还贵。差在输出:普通模型输出 0.40 美元每百万 token,是输入的 8 倍;Jev 返回标量,输出免费,也不用逐 token 生成。
本机这一侧更极端。Laya 421M 装在 4080 上只有电费,实测 985 次决策每秒。
本机量了一次典型的路由请求,30 个候选工具名加用户请求加 3 个问题,237 token,按官方公布价算一次是十万分之一美元。官方那条 $0.0004 的上下文大得多,两者口径要分开。
五、好处之二:性能提在哪
官方同一页还藏着一个更值钱的对照:同一个模型,把策略从「一次性问完整件事」换成「拆成窄问题加代码兜底」,8 组配对平均下来,准确率涨 11.8 分,成本降到 46.5%,耗时降到 48.6%。
| 模型 | 一次性问 | 拆成窄问题 | 变化 |
|---|---|---|---|
| haiku 4.5 | 18.1% | 53.6% | 涨 35.5 分 |
| luna | 51.9% | 66.8% | 涨 14.9 分 |
| sol | 63.4% | 74.1% | 涨 10.7 分 |
| opus 5 | 64.8% | 73.1% | 涨 8.3 分 |
官方原话是「every model is more accurate, cheaper and faster in the workflow than it is with the same policy as a prompt」。
这块红利不依赖 Jev,换形态就能吃到。要接它,先得把策略拆成窄问题。
第二块性能来自形状本身:输出编造不出选项外的值。给定 30 个工具名让它选,结果必然是这 30 个里的一个。工具调用最常见的故障是模型写出一个并不存在的 API 名,这一层错在结构上就没了。
第三块是并行。本机实测问 1 个判断 24.7 毫秒,问 50 个 46.5 毫秒。原来要串行 50 次模型调用才拿到的判断,现在一次拿完。
六、8 天冒出 900 多个开源项目
爆火的不是 Jev 本身,是它带出的开源生态。9 月 26 日实测星数:
| 项目 | 星数 | 协议 | 底座 |
|---|---|---|---|
| Laya | 25293 | Apache-2.0 | ModernBERT-large 421M |
| Kev | 7130 | Apache-2.0 | Qwen3.5 加 LoRA |
| SemIf | 4358 | MIT | 读开放模型的 logits |
| NanoJev | 2278 | MIT | 小模型,做实时控制 |
| jevlike | 1303 | MIT | 只发训练框架 |
Laya 建仓 9 月 18 日,8 天到 2.5 万星。社区还冒出 7 个以上清单。
A100 上的第三方横评有一条反直觉结论:
| 模型 | TREC 6 类 | 单条延迟 |
|---|---|---|
| MiniLM 加逻辑回归(CPU) | 90.4% | 5.7 毫秒 |
| Laya 421M | 86.6% | 23 毫秒 |
| DiffusionGemma 26B | 66.0% | 48 毫秒 |
| NanoJev 0.6B | 18.4% | 31 毫秒 |
选项只有 6 个时,CPU 上的朴素基线反而最快最准。这类模型的价值要在选项几十到 255 个、且校准可信,才显现。
七、本机实测之一:速度成立
英文权重 421.3M 参数,加载 3.14 秒,占显存 1607 MB。
| 问题数 | 一次调用 | 折合每题 |
|---|---|---|
| 1 | 24.7 毫秒 | 24.7 毫秒 |
| 5 | 23.5 毫秒 | 4.7 毫秒 |
| 10 | 25.0 毫秒 | 2.5 毫秒 |
| 20 | 28.5 毫秒 | 1.4 毫秒 |
| 50 | 46.5 毫秒 | 0.9 毫秒 |
问 1 个和问 10 个都是 25 毫秒。32 条工单约 5 个问题一批,跑出 985 次决策每秒。
八、本机实测之二:概率要看权重
一个数要能叫概率,同一段状态问一遍命题、再问它的否定,2 个数相加必须等于 1。取 0.15 作容差,只换权重:
| 状态 | 基础权重 | 微调权重 |
|---|---|---|
| 明写已办理退款 | 1.694 | 1.147 |
| 明写尚未办理退款 | 1.861 | 1.248 |
| 明写仍在等待 | 1.197 | 1.116 |
| 明写今早已寄出 | 1.325 | 1.027 |
| 日期:提早发货 | 1.398 | 0.896 |
| 日期:延后发货 | 1.770 | 1.039 |
| 完全无信息 | 0.884 | 0.835 |
基础权重 7 个工况 6 个偏离,微调权重掉到 2 个,平均绝对偏差从 0.480 掉到 0.121;多语言基础权重全偏。微调在修互补性,没修完,ECE 未同步改善。
偏差来自措辞。同一真值换一种同义问法,输出从 0.608 掉到 0.198;同一输入连跑 5 次极差 0.0000。
noul 原语还有一处更重的毛病,五星好评和一星差评问同一件事:
| 写法 | 五星好评 | 一星差评 |
|---|---|---|
| 默认 | 0.0000 | 0.0000 |
| criteria 写成语义句 | 0.0000 | 0.0000 |
| 覆盖显示文本 | 0.8200 | 0.4142 |
前 2 行相反的输入给出同一个数,置信度还是 1.0。翻源码:
_DEFAULT_NOUL_LABELS = {
"false": "false",
"true": "true",
}
默认标签就是字面量本身,选项文本变成 false: no, the statement does not hold 和 true: yes, the statement holds,输出被这 2 个词决定,必须自己覆盖显示文本。只有 score 原语正常,量表单调。
九、中文必须换权重
同一批题,中文、英文各 40 条,答案由文本机械决定:
| 权重 | 英文题 | 中文题 |
|---|---|---|
| 英文版 | 0.900 | 0.600 |
| 多语言版 | 0.800 | 1.000 |
英文版读中文只有 0.600,接近随机,却给出 0.742 的平均置信度,错误没伴随低置信度。多语言版在英文题上掉到 0.800,权重按脚本分流。
十、适合做什么
它只做补充,不替代主模型。
最贴合的是入口的意图识别。意图本就可枚举,输出落在这个集合里;置信度直接当分支条件;一次并行问完主意图、多意图与紧急度。
| 场景 | 怎么用,为什么合适 |
|---|---|
| 入口意图识别 | choice 选主意图,noul 问是否多意图,一次问完 |
| 工具路由 | 先向量召回候选再让它选,编不出不存在的工具 |
| 模型路由 | 判难易后分流,判断成本远低于被分流那次 |
| 检索重排 | 取上百候选逐条打分,便宜到能对每条都判 |
| 输出质检 | 便宜模型查贵模型,质检成本可以忽略 |
不满足这 3 个前提别接:意图集合可枚举,开放域要加兜底选项;上下文自己压成状态文本,它无状态;多个意图拆成多个命题。
十一、不适合做什么
| 不适合 | 原因 |
|---|---|
| 写文案、对话、代码 | 不生成一个 token |
| 多步推理、开放问题 | 答案不在候选集里就答不了 |
| 槽位抽取 | 抠不出日期、金额、单号,要另配抽取模型 |
| 多模态 | 只吃文本 |
| 需要解释的决策 | 不说明为什么这么判,招聘筛选别用 |
| 选项只有几个 | 6 个选项时 CPU 上的朴素基线更快更准 |
| 高风险不可逆动作 | 仍可被对抗提示劫持 |
工具多到装不下时(上限 255 个)要两阶段:先向量召回几十个候选再让它选。
十二、风险与待观察
| 风险 | 应对 |
|---|---|
| 头条数字与判分基准都出自自家 | 上线前换自己的业务 case 复测 |
| 便宜倍数 4 天就改口径,独立测只有 5 到 25 倍 | 按单价实算,按实测延迟算容量 |
| 未微调权重给的数不是概率 | 先微调,否则只当排序分 |
| 选项超 10 个时官方温度越界 | 库回退 0.5,该档置信度不可信 |