先说结论:Glasshouse 我给偏正面。但它现在最值钱的东西不是那份横跨 17 个月、103,572 轮的语料。
是评论区。有人拿它自己公开的逐题记录,把它量了一遍。
仓库在 github.com/wontopos/glasshouse,Apache 2.0。作者是 Wontopos 的联合创始人,公司卖的就是 agent 长期记忆 API。这层身份他不藏。丑话也写进了仓库:Wontopos 自己的提交走同一套审批,不自行合并,不决定谁入选;提交了新版本结果,十四天内不发布该版本。
规则先上线,基准本体还没入库,submissions/ 空着。他自己一份结果都没交。
「卖铲子的凭什么定挖矿标准」——这话我能理解。但这次我不打算拿它当主要火力。先把这层说清楚,再说别的。
真正的照妖镜在评论区,不在 README。
howcani 下载了作者公开的 beam1m-tablet-2 里八份 LongMemEval 运行记录,八个分数全部精确复现:95.2 / 96.0 / 96.0,93.2 / 94.0 / 93.8。复现这一步已经比大部分测评人勤奋。
他没停在这儿。
他做了件聚合分数根本支持不了的事——逐题配对。九组 opus 与 gpt 读者互换的对照,约 500 道题里 27 道判断不同,占 4.8% 到 6.4%。opus 赢 171 道,输 75 道,方向稳定,效应 +2.14 个百分点,标准误 0.35,z 值 6.1。
要命的是下一个数字。同一读者重复跑,噪声是约 500 题里 19 题翻转。读者效应,大概只有运行间噪声的 1.4 倍。
榜单上的一行,通常只对应一组运行。
这就是那一行数据的全部信息量!
再往下是钝刀。他给了张可分辨性表:每侧跑 1 次只能区分 2.05 个百分点,3 次 1.18,5 次 0.92,配对标准差 1.05 个百分点当噪声参照。
然后他翻回作者自己的 README:tablet-2 的两行 LongMemEval 分数,95.7 和 93.7。差恰好 2.0 个百分点。
正好压在单次运行的可分辨临界线上。
我不认为这是造假。我的判断是,他大概率没意识到那两行数字的间距踩在临界线上。这恰恰是逐题记录公开的好处——别人不用猜你藏了什么,直接拿你的数据重算就行。
上游那个问题还悬着:谁决定哪些记忆失败进入 14 个维度、每个维度占多少权重。Kent Bodrov 在评论区点得很准。作者回复说权重理由、排序判据、两个被弃用的加权方案都写好了,只是没入库。还承认盲提方案和外部留出集是他之前没考虑过的。
坦白到这个程度,我给分。不是每个人都有本事在评论区把「我没想过」四个字打出来。
Jo Do 那条更直白:当评判模型的选择比被测系统的选择影响更大时,这个基准实际测的是评判模型。作者认了,说确实没测评判模型互换,仓库里只有一项强制字符串打分器与 LLM 评判器结果一致的检查。这项检查发现过某维度上「不知道」被打成 0.5 和 0.0。有用。但它挡不住读者效应。
Vinh Nguyen 那条狠。它戳在作者自己立的规则上:十四天缓冲给托管方不是公平,是不对称优势。提交方第二天公布结果,数字就锁死了;托管方看着这个已经公开的门槛,还能再迭代两周。
他在为自己的产品做基准,规则刚好给他留了比别人多两周的窗口。
作者回复说,这条规则按现行写法跟他本意相悖,会重新审视。我信他的本意。
规则不看本意。
Tae Kim 建议补分布式证据场景——正确答案散在多个轮次而非单轮说清,他认为这是很多记忆系统悄悄失效的地方。作者的回复是个数字:1,547 道题里只有 3 道把答案分散在五个轮次,gather 维度全部只有两轮。
3 道!
一个标着 14 个维度的基准,最接近生产环境的那类场景,覆盖是 3 道题。规则写得很严,场景覆盖还很薄。两件事不冲突,摆一起看就有意思了。
该夸的地方我也得说,不打算通篇踩。
延迟那一节处理得干净。从首尔访问美国服务器,物理往返就 190 毫秒,如实上报等于给服务器地理位置排名。他的做法是单独测网络下限再扣掉,命名也老实——叫「延迟减去往返时间」,不叫「纯计算时间」。不往脸上贴金。
为了压残余误差,流程里先预热连接(未预热时超过 14KB 的响应会多一次往返,而约 3,700 token 的响应恰好压在这条边界上),再记录响应大小,因为残余误差随它变。
速度预算也定得实在:对话流畅感大约在 1,000 毫秒处消失,LLM 首 token 自己占掉约 500 毫秒,留给记忆系统的就是 500 毫秒。对数刻度,快一倍 +1,慢四倍 -1,逐题截断在 -1 到 +1 取平均,不累加——累加会让总分随题量增多而自发下滑。不能测速度的系统,该项移除,不记零。
不可测不该成为一种惩罚。这句话值得抄下来贴给半个行业看!
语料那边看得出用力。四种干草堆规模,承载答案的 1,882 轮在四种规模下逐字符一致,变的只有包在周围的无关对话量。这样退化曲线真是在测噪声容忍度,不是在测换了一批题。
过期事实三档计分:答出新值 1.0,说不知道 0.5,把旧值当现值说出来 0.0。这个中间档设得对。把「不知道」和「自信地过时」并成一类,会盖掉生产环境里代价最高的那类错。
500 个虚假记忆探针,问的全是从没发生过的事。答空满分,编造零分。
多语言那边两个方向分开跑:用英文问只以其他语言存的事实,和用其他语言问以英文存的事实。作者说暴露的是不同缺陷。这话站得住。
锐评评分卡:
规则设计,干净。逐题记录公开,任何人能重算总分;版本负责固定读者模型、评判模型和提示词,提交方不许自己挑;工具链必须是客户自己也能用的那一套,只对作者开放的路子产出的分数不认;Apache 2.0 兜底,托管方本身出问题,谁都搬得走。
数字,还没有。发文时一份结果都没跑,submissions/ 是空的。作者自己说了,出数字之前不引用数字。这话我信。所以这篇我也不替他预支分数——最多承认,他把我上次被某个限时额度骗着续年费时攒下的那点警惕,暂时放下了一半。
这钱花得冤不冤?没花钱,不冤。
值不值得现在跟?现在跟的唯一理由是:一个还没上线就被评论区量过一遍、作者当场认下两处规则问题的基准,通常比上线之后才慢慢被发现毛病的那个更耐看。
等它出第一份数字,我再来照一次。
