pi-rsi 在 CASMI26:有偏的 proxy 如何让搜索停滞
研究 agent 用极小的开发集分段卡住交付,31 次评测有 22 次什么都没测到。我们改了框架和提示词,并看到了第一个结果。
pi-rsi 是我们的自动研究框架:研究 agent 选下一个实验,worker agent 在独立的 Git worktree 里实现,框架用冻结的评测器测量结果。这篇记录一轮在 Kaggle CASMI26 任务(从质谱识别分子结构)上的 4 天实验:搜索在 19 个节点里没有进展,原因是什么,我们改了什么。交互式分数图和搜索树展示每个节点,悬停或点按可以看摘要。代码在 GitHub。
发生了什么
这轮实验用本地基准:449 个保留分子,官方分数是 MRR@25。GPT-6.1 Sol 担任研究 lead 和 worker,GPT-6 Luna 负责把决策结构化并维护研究 wiki。第二天,分数从基线 0.307 涨到 n014 的 0.404,之后 19 个节点都没有新的最佳。
每个分数都只是 proxy
真正的目标是隐藏的排行榜。研究看不到它,只能优化替代指标,每一层都会带来噪声和偏差:
- 本地官方验证集代替排行榜;
- worker 可以调参的 296 个分子的开发集代替官方验证集;
- 研究 lead 定的交付规则代替开发集。
最外层的偏差早就看得见:n007 本地 0.3998,Kaggle 公榜只有 0.228。这次停滞来自最内层。
哪里出了问题
从 n008 开始,研究 lead 要求 worker:只有每个类别、每个来源在两个训练 seed 上都不下降,才能交付新组件。其中一个分段只有 14 个分子,分段的标准误和要追的增益一样大。有 k 道这样的检查时,一个真实但不大的提升通过的概率接近 0.5^k,只有不会改变已有答案排序的改动才能通过。n014 能过,是因为它只是在数据库候选之后追加生成的结构。
于是 worker 把组件做出来,再关掉交付。31 次官方评测里有 22 次测的是和父节点完全相同的输出,每次约 38 分钟双卡时间。一个例子:n016 在两个 seed 上都提升了总分(+0.004 和 +0.009),却因为一个类别下降 0.006 被关掉。
这条规则来自我们自己的提示词("不要牺牲已经赢下的分段")。框架本来禁止 lead 给官方结果自定阈值,lead 就把阈值放到了开发集上,还在文字里写明了这一点。停滞 8 个节点后,一个新的纠偏评审指出了这种偏离;lead 照做了一个节点,又回到原来的门槛。审查还发现了框架 bug:调参预算按日志行数而不是试验数计数,误判了 3 个有效节点;约 30% 的 wiki 更新被过严的校验拒绝。
我们改了什么
修复放在框架和系统提示词里,而不是只给这一轮写备注:
- 竞赛提示词以官方总分为目标。只有某个分段的下降超过约两个配对标准误时才能否决改动;合并后的开发集增益为正时,组件开着交付。
- worker 要声明交付了什么。被关掉的组件按开启状态评测;没有交付新组件的节点跳过官方评测。
- proxy 台账逐节点记录开发集、预测和官方结果;
rsi observe把真实目标上的结果(例如排行榜分数)反馈给研究 lead。setup 审查必须说明官方层和真实目标有哪些差异。 - 预测反复落空、或者提案重新进入被暂停的方向时,强制做一次完整复盘。
提示词修改在正在运行的实验里立即生效,框架修改从下一轮开始。用新的抽取器回放 7 个真实决策,抽出了 6 个预测(+0.0065 到 +0.01,实际全是 0);按新规则,n026 结束后就会强制做一次完整复盘。
第一个结果
新规则下,n033 的组件没有开,因为它合并后的开发集增益恰好为 0。n034(有监督的查询–参考身份校验器)开着交付,得到 0.4185,提升 0.0146,高于 0.0089 的噪声带,是 20 个节点以来的第一个新最佳。
这只是一个数据点,而且验证集在搜索中被反复使用,不算独立确认;本地分数也仍然不能迁移到排行榜。下一轮会加入 PubChem 规模的候选来缩小这个外层差距,也会第一次在真实运行里检验交付声明。
查看细节
分数图和搜索树、快照数据 和 proxy 台账 记录了页面展示的内容。README 中的案例 和 研究循环文档 说明了这些机制。这里没有公开任何比赛代码、数据或标签;比赛进行期间,CASMI26 任务包保持私有。
来源与核验
pi-rsi source code and README case study
github.com核验于 2026-10-15
pi-rsi research loop documentation (proxy quality section)
github.com核验于 2026-10-15
CASMI26 snapshot data (aggregate, per node)
blog.pocketplay.win核验于 2026-10-15
Proxy ledger for the CASMI26 run
blog.pocketplay.win核验于 2026-10-15
Kaggle competition: Enveda CASMI26 molecule identification from mass spectra
www.kaggle.com核验于 2026-10-15
我们怎样写与核验文章: 编辑说明