一道 MATH-500 的题,Qwen3.5-0.8B 能翻来覆去写到 32768 个 token 还不交卷。不是不会,是停不下来。MIT CSAIL 的四位研究者让 GPT-6 Astra 直接改它的权重,没有训练,也没有梯度下降;改完,它在同一套采样设置下从 7.9% 跳到 48.1%。这次改动只碰了 131,072 个权重,占 8 亿参数的 0.016%。李建泉
Astra 先在权重里找故障。它把“93% 的 MATH-500 回答都会撞上长度上限”这件事,追到第 15 层和第 19 层 MLP 写入的一个方向。然后从这两层各 64 个输出列里减掉这个方向。 方向不是某道题的公式,更像是模型内部一条会影响后续计算的分量。 改动后,撞上限的比例从 93.0% 降到 33.1%。 Astra 没有给 Qwen 补数学,它只是把“复读”这个回路拆掉了。机器之心SoTALab量子位
同一套采样设置下,MATH-500 从 7.9% 到 48.1%,GSM8K 从 13.8% 到 67.1%,IFEval 从 21.0% 到 62.3%。 这就是“6 倍”的由来:7.9 的六倍,约等于 48。李建泉
但把它理解成“数学能力被装进去了”,就错了。作者自己做了对照:Gemma 3 270M 很少陷入循环,只有 8.5% 的回答撞上长度上限。 Astra 同样去改,MATH-500 只从 6.8% 挪到 7.7%,没有一个改动超过约 1 个百分点。机器之心SoTALab
作者自己总结得很直白:编辑权重可以移除一个障碍,让被遮住的能力显现出来,却不能凭空增加模型原本没有的能力。 知乎上有人把这比作中世纪的颅骨穿孔:能止住抽搐、甚至救命,却不能让一个文盲突然学会拉丁文。 这个比喻糙,但方向对。机器之心知乎
7.9% 这个起点,本身就很特殊。Qwen3.5-0.8B 的思考模式默认关闭,打开后很容易陷入循环。知乎用户赵泠在本地部署、关掉思考模式跑 MATH-500,500 题做对 152 题,通过率 30.40%。 这不是说 48.1% 没有意义,而是说“6 倍”的分母很特殊。赵泠
真正值得看的,不是这 0.016%,而是 Astra 改权重的方式。它没有写训练循环,也没有梯度;它拿到一个 CPU 上的 Python 会话、原始权重、练习题,以及有限的前向调用预算,自己决定改哪里。这个团队给这套方法起了个名字:Weight-Space Programming,权重空间编程。 它还能只看权重就认出四个游戏网络分别玩的是打砖块、乒乓、吃豆人和高速公路;也能给一辆爬坡卡住的小车补上“先倒车再加速”的策略,只改 3.5% 的权重,就把成功率做到 100%。量子位李建泉
但这不是一个“一键修模型”的服务。三次独立运行,预算分别是 10、25、50 次前向调用,Astra 找到了三种不同的改法,只有 50 次那次把分数拉到 48.1%;10 次和 25 次分别只有 12.3% 和 14.1%。 最强的一次跑了 20.3 小时,158 个对话轮次,80 次 Python 执行,中间还等了 4.7 小时的服务恢复。量子位李建泉
这件事的另一面是:权重一旦可读可写,后门也更容易被找到,或者被藏进去。作者在博客里提到,如果模型能准确理解权重空间,就有机会直接从权重里发现后门之类的问题。 反过来,同样的精准编辑也可能被用来植入更难发现的行为。而且 10 次、25 次、50 次都是各自单独的一次运行,没有重复 50 次预算来证明 48.1% 能稳定复现;研究目前是博客、公开日志和实验报告,没有经过同行评审。 这更像一次很强的概念验证,还不是可以下单的模型维修服务。MIT CSAIL 博客李建泉
0.016% 这个数字真正说明的,不是“改一点点就能变聪明”,而是模型的失败有时不是能力不够,而是某个局部机制卡住了。这次不是 Qwen 突然学会了数学,而是它终于把已经会做的题做完了。找到那根卡住的轴,比再喂一遍数据便宜得多;但前提是,你得先知道它在哪。Astra 这次找到了,下一次未必。