聪明 Agent 四套路 和 人肉学习

nVIDIA 联合 NTU,MIT 联合研究了一项关于 Agent harness 自我提升的研究,项目叫 SoL-Pi, Scaling Auto-Research Loops for Efficient Agent Harnesses

让 Research Agent 自动发现 Harness 里的 Token 浪费,再通过大规模实验筛掉无效改法。把结论再放进大量环境中反复测试。整个探索一共 152 个候选方向,分成 context、progress、tools、delegation、prompt/policy、improvement/evaluation 六类,然后把这些想法扔进大量相互隔离的 research lineage 里,让 agent 自己观察 trajectory、提出机制、实现、review、跑实验、继续修改。最终用了 535 个可执行搜索环境,其中 495 个来自 GitHub issue-PR pair,40 个是 verifier-driven synthetic tasks;论文说总共跑了 3000+ 次实验和 60000+ 次 agent-environment interaction

最后真正留下来的精华,只有 4 大机制:


我因为脑子比较轴,总喜欢扩展关联到别的领域,于是想把这四大方法,也套在人肉学习上:

  1. 合并动作:能连续做的事情不要反复切换。串行出现的解题步骤打包,批次进行,避免低效重复。探索之后立刻验证,而不是一个岔路跑远了再回头
  2. 清理上下文:每当学习或解题,有进展都反思当下思路,考虑下如何为接下来简化,不能当看小说一样囫囵吞枣背章节和习题答案
  3. 隔离支线:子问题展开放到一边不能影响主干思路
  4. 保留证据:子过程产生的中间结论,关键推理必须留痕

AI给我补充了很多reference

合并动作

Schoenfeld 给这个现象起名叫 "wild goose chase"(追野鹅):他发现约60%的大学生解题时会选定一个方向就一路埋头走到底,直到时间耗尽都不回头反思;而当他训练学生每隔一段时间就问自己"我现在具体在做什么?为什么这么做?这对我有什么帮助?"之后,这种不做监控的比例从60%降到了20%,解题成功率也相应提高。更有意思的是,他后来观察一位数学教授解题——这位教授手头掌握的事实和方法其实比很多学生还少,解题过程中也生成了无数条可能的死路,但他没有被这些死路带偏,靠的就是频繁地、细粒度地检验"这条路值不值得走下去"

清理上下文

Catrambone关于子目标形成的研究描述了一个具体过程——学习者先把一串步骤按结构分组,然后自我解释"为什么这样分组",最后把这个分组归纳成一个简洁的标签(子目标标签)。这三步合起来,正是"做完一段就反思、并把它压缩成一个可以往下带的简化单元",跟你说的第二条几乎逐字对应。而它的反面,就是你说的"看小说一样囫囵吞枣"——只是线性地把内容或答案过一遍,不做任何分组、归纳、压缩,信息就只是流过去了,没有被结构化,也就没法被高效复用。

隔离支线

人类研究就是子目标标签(subgoal labeling)本身——Catrambone给出的经典例子是解方程"隔离变量→化简变量":学生只需要在主线上记住这两个子目标,每个子目标内部具体怎么算是被封装起来的细节,不需要在思考整体解题结构时一直占用工作记忆。研究还发现,用子目标标签训练出来的学生,遇到步骤不同但子目标结构相同的新题时,迁移能力明显更强;而没有这种封装、只是记住老师板书完整步骤的学生,换一道结构相同但细节不同的题就容易失败——这正是"细节污染主干"的后果。这也呼应了国际象棋大师的组块(chunking)研究:高手把一串走法编码成一个组块整体记忆和调用,而不是逐步保持在工作记忆里,从而腾出容量去思考更高层的布局。

保留证据

Polya经典的解题四阶段(理解问题→拟定计划→执行计划→回顾)里,"回顾"这一步要求你把推理过程记录下来复查,而不是解完就扔;如果第2、3条里的"压缩""封装"做得太狠、把关键中间结论也一起丢了,你会既没法自查错误,也没法把这段经验迁移到下一个类似问题上。这也是为什么"元认知校准"(上一轮提到的)离不开留痕——你没法准确判断"我这一步到底对不对",如果连这一步的关键推理都没有记录下来可供回看。


学习方法论的批判

很多学习者,特别是中小学学生,对这些“显学”反而不知道。父母和老师也不会教。

虽然大部人聪明人能领悟到这一点,但是很多平庸的学生学到这四点教训已经太晚了。。。

因为传统学校的考试 测验的 reward 只看结果,不太关心你过程怎么来的。小学知识比较简单,留下来的坏毛病带到初中之后就麻烦了。

我家的娃就深受其害。在小学阶段,“只要答案对,就算成功”这个策略经常真的有效。题目短、知识点少、搜索空间小,靠记忆、模仿、反复练习也能得到不错的结果。于是很多低效习惯不会立刻付出代价。死记硬背就能拿个勉强过得去的分数。

到了初中以后,情况开始变化。题目的状态空间变大了,步骤变长了,知识之间开始相互依赖。此时如果学生一直没有形成,那么就会无意中陷入困惑:

这些能力,学习成本会突然上升。

客观的因素,大班制教学,老师也管不过来。只有精英教育 私教 遇到良师,或者就孩子被鼓励“多思考”,才可能戳破这一系列技巧。

小学时,“直接冲答案”很快,成绩又不错 → 学生得到正反馈。小时候看起来只是“不够仔细”的问题,几年后会表现成“学习能力不行”。

上面列举这四个技巧,我其实个人很早就懂得,无意中自己琢磨的,回顾了下,可能被小时候鼓励“更聪明的办法”太多次了,这里要感谢当时的父母,自己本身希望去掌握那个最快 最酷的解题技巧,所以算 “过程优化” 到极致作为一个附加 reward了。一个问题有多种解法,每种解法优劣都品鉴了一番,知道哪些坑哪些好。

这就很接近论文里的 harness optimization 了。解题的意义不仅在于得到正确答案本身,还有在观察“解题算法本身”。

初中、高中我甚至有几起名场面,公开质疑老师出题出的有问题(50%翻车)🤣

当然,这个习惯也有其害处,我也吃过亏。三角函数大家都背公式,我就自己发明了一套自以为更好的理解框架。。。结果出题人更偏好教材公式能快速结果的,我那套不仅更复杂,容易翻车,而且还有“翻译”成本。。。囧。。。

考试的 reward 实际上更接近:在限定时间内,用低风险路径得到标准答案。

不过好处还是很明显,就是大多数问题理解得比普通人深入得多。特别是解析几何这种虽然被批判“不入流”但是几乎秒杀了教材党。。公式全靠自己推的,哪里怎么变换怎么用一清二楚。甚至圆锥体歪着斜着切这种问题都考虑到了(传统教材只有水平,垂直和顺着斜切)

这个亏一直吃到出来工作,长了很多教训。我对待任何事都是双层架构。一个是兼容傻逼的世俗层,一个是真理层。。。囧哈哈哈

其实真理层反复磨练到最后反而越来越简单。世俗层基本就是补丁接补丁越来越复杂。普通人搞不明白要崩溃的很多事情一眼看穿。。


后记

毕业之后,发现学生时代最值得批判的,就是做题家思维。成年人的世界是没有标准答案的。甚至你需要去设置议题。当然这又是另外一个层次的东西了。

然后回头看,学生最幸福,也是最痛苦的一点,就是面临的所有问题,无论多困难,是必然有解的;而且往往正确解是唯一的。

成年人面对的事情,基本都有多个解。你 reward 去优化,无非是利弊的权衡;

最可怕的遭遇,无解,死胡同,到头来一场空。你去尝试解决一个不存在的问题,你又能学习到什么教训呢?时也,运也,命也。

Comments