2026-09-23 · DECISION TRACE

Laya 本地替代 Jev 的可行性评估(真实实测)

保留方案、指标、验证、复盘和治理判断,让结论能够追溯。

2026-09-23记录日期
评测记录记录类型
17章节数

Laya 本地替代 Jev 的可行性评估(真实实测)

结论

不能整体替代,但存在两个真正可替代的场景。

三句话定性:

  1. 延迟优势成立且真实——本机无 GPU(i7-13620H),Laya multilingual 单次前向 240-650ms,与 Jev 跨洋 466-824ms 同量级甚至更快;但优势来自"本地传输跳"而非模型架构的 33ms(那是 T4 数字)。
  2. 去重/判别精度不成立——同 7 对真实晨报去重输入,Laya 最好配置 5/7,Jev 6/7,且 Laya 的错都错在"高置信错判",直接改变行为。
  3. 批量形态彻底不成立——5 条记录放一个 JSON state,输出全部塌缩到 0.997-0.998(与 Jev 批量实测同一个已知失效模式),本地版必须在客户端逐条拆开,等于放弃批量的全部传输收益。

推荐决策:Watch + Sidecar Trial(限定场景),不替换现有 Jev 调用链。

一句话定位

Laya 是 Convai Innovations 发布的开源非自回归 System 1 决策模型(Apache 2.0,421M ModernBERT-large,三个 checkpoint),定位与 TypeSafe Jev 完全同构:choice / score / noul 三原语、无文本生成、输出校准概率。差别在交付形态——Jev 闭源 API,Laya 权重开放、可本地跑。

作者自述动机:他 2025 年 3 月就发过同架构的 arXiv 论文(2503.23303),2026 年 9 月 TypeSafe 以"突破"名义推出 Jev,于是他重做一版全开源横向版本。

实测环境

机型 i7-13620H(10 线程)/ 31GB RAM / 无 NVIDIA GPU
运行时 torch 2.14.0+cpu、transformers 5.17.0、laya 0.3.6 / Python 3.12
模型 convaiinnovations/laya(全套 2.37GB,本地路径 /data/laya-eval/hf
对照 Jev 当日复测(Vercel AI Gateway,typesafe-ai/jev)+ 2026-09-20 历史基线
安装成本 pip install laya + torch CPU 轮子,首次加载 checkpoint 17-31s
内存 单 checkpoint 常驻 1.8-2.9GB RSS

测试集(全部为本机真实生产输入,非构造样例)

编号 场景 来源 对照基准
T1 晨报语义去重 7 对 jev-p0-absorption-2026-09-20/result.json 真实候选对 人工 ground truth + Jev 当日复测
T2 可复现性(8 次重复) 对[2]、对[5] Jev 8 次极差 0.010
T3 Wiki 治理告警分诊 ~/.cache/hermes/wiki-alert-triage.json 今日真实 state Jev 当日 notify=0.12
T4 Hindsight retain 预筛重复对 ~/.hermes/logs/hindsight-retain-prescreen/latest.json 20 对 Jev 批量 prob
T5 单 state 多问题 10 个 noul 问一次调用 Jev 批量形态
T6 多记录批量 5 对记忆放一个 JSON state Jev decide_batch_records 形态

实测结果

T1 晨报去重 7 对(核心判据)

配置 准确率 与 Jev 判定一致 平均延迟 最大延迟
Jev(跨洋 API,当日复测) 6/7 547ms 824ms
Laya multilingual + 中文提问 5/7 4/7 494ms 645ms
Laya multilingual + 英文提问 2/7 3/7 403ms 571ms
Laya english checkpoint + 英文提问 5/7 4/7 1256ms 2158ms
Laya english checkpoint + 中文提问 3/7 2/7 1472ms 2274ms

逐对明细(gt=人工裁定,Jev=当日复测概率,其余为 Laya noul 输出):

# 真值 Jev ml+中文 ml+英文 en+中文 en+英文
0 重复 0.66 0.219 0.947 0.159 0.127
1 不重复 0.22 0.984 0.993 0.941 0.372
2 不重复 0.89 0.027 0.754 0.492 0.334
3 不重复 0.10 0.250 0.996 0.133 0.265
4 不重复 0.26 0.138 0.907 0.890 0.865
5 重复 0.93 0.930 0.993 0.756 0.887
6 不重复 0.05 0.310 0.956 0.944 0.214

三个关键观察:

  • 中英文提问方向相反且不可调和:中文提问让"掘金同作者两文"误判 0.984 重复,英文提问让 2、3、4、6 四对全部误判重复(0.754/0.996/0.907/0.956)。同一模型、同一 state,换语言就翻面——说明它没真正判别语义,而是在适配提问表面形式。
  • 错误全部是高置信错误:ml+中文在错判的那条给 conf=0.984;ml+英文四条错判 conf 全部 ≥0.754。置信度门控救不了,因为模型错的时候一样自信。
  • 好的一面:ml+中文 5/7 与 english+英文 5/7 都只差 Jev 1 分,且延迟更低(494ms / 1256ms)。若只挑一个配置做旁路候选,是 multilingual + 中文提问

T2 可复现性:Laya 完胜

指标 Laya Jev
8 次极差(pair[2] / pair[5]) 0.0000 / 0.0000 0.010 / 0.010
判定翻转 0/8 0/8

Laya 是确定性前向,概率比特级可复现;Jev 有小幅非确定性。这一点 Laya 严格优于 Jev,也是唯一它明确胜出的工程属性。

T3 Wiki 治理分诊:方向相反,不可替换

配置 notify 概率 urgency
Jev(当日真实生产输出) 0.12(silent,不打扰) 1.05
Laya multilingual + 中文 0.979(notify,打扰) 1.64
Laya english + 中文 0.864(notify,打扰) 1.77

今日真实 state 是 verdict: maintenance、断链 0、孤岛 0,仅 32 个陈旧中心页——Jev 判 0.12 静默,Laya 判 0.979 要打扰人。这不是精度差 1 分的问题,是把该静默的日常维护项判成必须立刻介入。涛哥的原始诉求正是"减少告警后手动介入",换 Laya 会直接违背该目标。

T4 Retain 预筛 20 对

分组 与 Jev 判定一致
总体 13/20
Jev 判重复(5 条) 5/5
Jev 判不重复(15 条) 8/15
高 Jaccard 区(≥0.6,7 条) 5/7

Laya 对几乎逐字相同的记录(Jaccard 1.0)判得很准(0.992/0.996/0.998),但中等相似度区间大量高置信误判:

Jaccard Jev Laya 性质
0.45 0.14 不重复 0.932 重复 第 10 轮 vs 第 8 轮审查,不同轮次
0.60 0.44 0.932 重复 不同轮次
0.438 0.08 不重复 0.872 重复 第 5 轮 vs 第 7 轮
0.368 0.12 不重复 0.872 重复 不同轮次

这是最危险的一类错误:同系列不同轮次的审查记录被判成重复,会直接触发"删除/合并"这类不可逆动作。

T5 / T6 批量形态:失效

测试 结果
T5 单 state 10 问一次前向 3161ms(316ms/问)——无吞吐优势,且随问题数线性增长
T6 单 state 5 记录批量 5899ms(1180ms/条)——输出全部塌缩 0.997-0.998

T6 与 Jev 批量已知失效模式完全一致:多记录放同一 state 时,模型无法给每条独立判断,全部输出同一个极端值。Jev 侧我们靠"隔离句 + scope 绑定 + 客户端绑校验"部分缓解;Laya 本地版同样必须逐条拆开串行,批量形态不存在。

四层审计

结论
宣称层 README 主动披露大量弱点(base checkpoint 接近随机、moderation 在留出集仅 0.53、choice 需 <20 选项、typed-decisions 是微调产物),比多数项目诚实。但对话口径激进:HF 卡列"延迟 10.4x 更快",仓库内 research/results/app_benchmark.json 从未提交,BENCHMARKS.md 却引用它(issue #170)。
实现层 代码可读、可拆、可微调(Kaggle 免费 2xT4 训练 4-5h)。但社区已定位多个未修问题:act_head 输入未归一化导致 act_probability 恒为 1.0(#185);微调把温度拟合在训练集切片上而非留出集(#186,即校准泄漏);english/typed-decisions 的 choice:11+ 温度 0.1006 会把 0.24 信念放大成 0.99 置信度,当前仅被 clamp_temperature 钳到 0.5 兜底,权重未重训(PR #42)。
运行层 本机 CPU 可稳定跑,安装干净,确定性输出。代价:常驻 1.8-2.9GB/checkpoint、冷加载 17-31s、切语言需重载(Router 默认 max_loaded=1 时每次切换都重建)。
治理层 Apache 2.0、权重本地可控、无外部依赖、零调用成本——数据面完全本地化,这是相对 Jev 的结构性优势。镜像 2.37GB 落 /data(65G 可用)。

三个专项验证

1. 静态面 vs 运行面一致性:不一致。README/HF 卡的"33ms"是 T4 GPU 数字,本机实测 240-650ms(约 10-15x 差,与官方 fallback 提示一致)。声明的"校准概率"在本机可见 uncalibrated warning(english checkpoint 温度被钳)。

2. 精确回捞能力:不适用(非检索系统)。但"可复现性"实测优于 Jev:8 次极差 0.0000。

3. 降级与回退路径:清晰。进程内库调用,异常直接抛,调用方沿用现有 jev_clientJevUnavailable → LLM 兜底 矩阵即可;摘掉即回现状,零主链侵入。

Laya vs Jev 总表

维度 Jev(现用) Laya(本地候选) 胜者
部署形态 闭源 API(Vercel 网关) Apache 2.0 权重,本地可跑 Laya
数据出境 跨洋外发 全部本地 Laya
单次成本 ~$0.00002/次 $0(仅电费) Laya
依赖风险 Vercel 账号绑卡、网关限流 零外部依赖 Laya
可复现性 极差 0.010 级 极差 0.0000 Laya
去重精度 6/7 5/7(最好配置) Jev
分诊方向 0.12 正确静默 0.979 错误打扰 Jev
中英文一致性 同一问题双语稳定 换语言就翻面 Jev
批量形态 可用(带绑校验) 塌缩不可用 Jev
单次延迟(本机实测) 466-824ms 跨洋 240-650ms 本地 平/略优
硬件要求 CPU 可跑,GPU 才快 Jev
成熟度 生产验证三处 仓库 5 天大,135 个开放 issue Jev

建议清单

值得吸收(P0)

  • 本地确定性 + 零依赖这两条属性本身:Laya 证明了"421M 编码器 + 三原语"在本机 CPU 上完全跑得动,且概率比特级可复现。这为我们的决策点提供了一条不依赖 Vercel 的降级路径。
  • 旁路候选文档化:把 multilingual + 中文提问 配置记为 Jev 的应急后备(若 Vercel 网关长期不可用),但明确标注"精度低于 Jev,仅作降级用"。

可选试点(P1,需先立项验证)

  • 自微调路线:Laya 的真正卖点是"可微调",而官方 base checkpoint 在 zero-shot 上接近随机。若把我们的真实去重/分诊标注数据(7 对 + 20 对 + 历史累积)拿去微调,才可能超过 Jev。这是一条独立工程,不是一次替换。

不吸收(明确留痕)

  • 不替换晨报语义去重主链(精度 -1 分且错在高置信方向)。
  • 不替换 Wiki 治理分诊(方向相反,违背减少打扰的原始目标)。
  • 不替换 Hindsight retain 预筛(中相似度区大量高置信误判,触碰不可逆动作)。
  • 不引入 Laya 的 Router 自动路由(本机切语言需重载 checkpoint,反而增延迟)。
  • 不采用其批量形态(已实测塌缩)。
  • 不为它增加常驻 sidecar(无收益,且违背"不留无收益常驻"纪律)。

风险与边界

  • 本次实测 7 对去重 + 20 对预筛样本量小,准确率差值(5/7 vs 6/7)单题敏感,不构成统计学结论,但方向和失效模式明确:错误集中于中相似度区且全为高置信,这类失效不会因样本扩大而消失。
  • Laya 仓库创建仅 5 天、135 个开放 issue、52 个开放 PR,核心缺陷(校准泄漏、act_head 饱和、温度未重训)均未修复。信任其概率输出前必须自建校准。
  • 本机无 GPU,所有延迟数字为 CPU 实测;若未来上 GPU,Laya 的延迟优势会显著放大。
  • Laya 对中文属于 multilingual checkpoint 的覆盖范围(官方 51 语言实测中 zh-CN 0.620 / ECE 0.376),中文能力中等偏上但远非强项。

下一步

  1. 维持现状:Jev 继续承担三处生产决策,不因本轮评估改动任何主链。
  2. 归档本报告 + 保留 /data/laya-eval 环境(模型 2.37GB + venv + 测试脚本),作为 Jev 长期不可用时的降级后备与后续微调实验基座。
  3. 如要推进替代,唯一可行路径是自建微调:先用现有 27 对真实标注跑一轮小样本微调对照(Kaggle 2xT4 约 4-5h),达标再谈接入;不达标及时止损。

附:环境与产物

  • 环境:/data/laya-eval/(venv、hf 模型缓存 2.37GB、clone 源码)
  • 测试脚本:/data/laya-eval/run_laya_compare.py(T1-T6)、run_jev_recheck.py(Jev 当日复测)
  • 原始结果:/data/laya-eval/results/laya_compare_20260923-133555.jsonjev_recheck_20260923-133434.jsonrun_all.log