
GRAM:Anthropic 想给危险知识装一个可拆模块
Anthropic 与 AE Studio 发布 GRAM 研究,尝试把病毒学、网络安全、核物理等双重用途知识隔离到可移除模块里。文章拆解它如何通过梯度路由实现能力开关、实验中相对数据过滤和 LoRA 的表现,以及为什么它还不是 Claude 的生产级安全开关。
Anthropic 这次研究盯上的不是模型会不会拒答,而是模型本身到底能不能少知道一类危险知识。2026 年 7 月 8 日,Anthropic 发布「An off switch for dual use knowledge in AI models」,介绍 AE Studio 与 Anthropic 合作的 GRAM 方法:把病毒学、网络安全、核物理这类双重用途知识,尽量收进可拆卸的模型模块里。1
这篇东西值得单独看,因为它把安全问题从「输出层拦不拦」推进到「权重里怎么存」。拒答训练和分类器仍然重要,但它们处理的是模型已经学会之后的行为;GRAM 想做的是在预训练阶段把某些能力放进单独隔间,部署时按用户信任级别打开或移除。2
过去的问题:安全层挡住输出,但知识还在里面
双重用途知识的麻烦在于,它本身不一定坏。网络安全知识可以帮人修漏洞,也可以帮人攻击系统;病毒学知识可以服务疫苗研究,也可能被恶意使用。Anthropic 在发布页里把目标拆成三件事:尽量精细地限制危险能力,让受信任用户仍能用这些能力,同时不伤害模型在其他任务上的表现。1
现在常见做法是拒答训练、输入输出分类器、分层访问和数据过滤。问题分别很清楚:拒答和分类器是行为层,遇到越狱仍可能被绕过;分层访问往往只能按整个模型或整个账号切权限;数据过滤可以从训练数据里删掉危险材料,但如果要同时服务「有病毒学能力」和「无病毒学能力」两种部署,就得训练多个模型。对前沿模型来说,这个成本太高。2
GRAM 怎么做:让梯度只写进指定隔间
GRAM 的全称是 Gradient-Routed Auxiliary Modules,可以翻成「梯度路由辅助模块」。它会在 Transformer 每一层的 MLP 部分加一组小模块,每个模块对应一类敏感能力,比如病毒学、网络安全、核物理或专门代码。2
训练时,普通文本按常规方式更新模型;碰到某类双重用途数据时,模型仍然可以用通用权重来预测下一个 token,但梯度主要被路由到对应模块,通用权重有时会被冻结。换句话说,模型可以「借用」一般知识理解病毒学文本,但学习到的新病毒学能力尽量写进病毒学模块,而不是扩散到整张网络。1
部署时,模块可以按需开关。Anthropic 的实验里有四类双重用途能力,所以一个 GRAM 模型理论上能组合出 16 种能力配置。受信任的生物安全实验室可以拿到带病毒学模块的版本,普通场景则可以把这个模块移除。这个想法的吸引力在这里:它试图用一次训练,近似多个分别过滤数据训练出来的模型。1
实验信号:小模型能关,大一点也能跟上
研究团队做了三组实验。第一组用 SimpleStories 数据集:200 万个儿童故事、48 个主题、26M 参数模型。GRAM 在模块开启时接近全数据模型,移除某个主题模块后,又接近从一开始就没见过该主题数据的过滤模型。2
第二组更接近真实风险场景。研究团队训练了 800M 参数模型,训练数据包括网页文本、代码和科学论文,另有四类双重用途域:病毒学、网络安全、核物理和专门代码。每个风险域约 4000 万 token,通用数据约 160 亿 token;风险域各占通用数据的约 0.25%。2
在这组实验里,GRAM 和 LoRA 都能把双重用途能力隔离到可移除模块里,移除后的效果接近数据过滤;MaxEnt 这类训练后「遗忘」方法则更像把能力压住,攻击者用少量恶意数据微调后,能力容易恢复到接近全数据基线。研究团队把这种测试叫 adversarial elicitation,即攻击者试图用少量样本把被移除的能力诱导回来。2
第三组看尺度。研究团队按 Chinchilla-optimal 训练设置,把模型从 50M 扩到 5B 参数,并保持双重用途数据为通用数据的 1%。结果显示,GRAM 和 LoRA 在各个尺度上都接近数据过滤;随着模型变大,被移除能力和保留能力之间的差距变大,恶意微调恢复能力也更难。不过论文也提醒,这是按计算归一化后的相对指标;从绝对能力看,更大的模型在「被忘掉」的领域仍然更强。2
GRAM 相对 LoRA 的优势还没完全坐实
这篇研究没有把 GRAM 写成唯一答案。主实验里,GRAM 和 LoRA 的表现很接近;真正拉开差异的是两个附加场景。
第一个是组合能力。四个模块同时打开时,GRAM 的病毒学性能基本能保持住;LoRA 把多个 adapter 相加后,各类性能都会下降。第二个是标签不完整。研究团队把一半训练数据标签去掉后,GRAM 对能力的隔离强于过滤和 LoRA,因为未标注数据训练时可以让所有模块同时参与,相关模块仍有机会学到该学的内容。2
代码仓库也把这个定位说得更具体:GRAM 没有学习路由器,也不是按 token 动态路由;训练时按批次标签控制哪些参数更新,推理时则激活核心网络和被允许的模块,移除其他模块。仓库同时开源了训练、评估、结果指标和复现实验脚本,但不包含检查点和 tokenized 数据本体。3
边界:这还不是 Claude 的安全开关
最重要的限制要放在前面:Anthropic 明确说,GRAM 还没有用到任何生产版 Claude 模型上,也不确定将来会不会用。研究规模最高到 5B 参数,离前沿模型还有距离;实验指标主要是 next-token prediction loss 的 Compute Ratio,不是下游真实任务成功率。Compute Ratio 可以粗略理解为「某模型达到基线某个 loss 水平需要多少相对训练计算」,它适合比较训练效果,但不能直接等价成「模型做危险任务的成功率」。1
还有一个更硬的问题:有些危险能力可能和通用知识缠在一起,根本不能干净切开。比如「普通生物学知识」和「高级病毒学风险知识」之间并没有天然边界。如果隔离太强,模型可能损失正常科研能力;如果隔离太弱,模块关掉后风险能力仍会残留。研究团队在讨论部分承认,这个问题同样困扰数据过滤和 GRAM。2
所以,GRAM 现在更像一条值得跟进的训练路线,而不是一个可以直接部署的安全产品。它给出的真正信号是:模型访问控制可能不只靠外层拒答和账号权限,也可以进入预训练结构本身。下一步要看的不是一句「能关掉危险知识」是否好听,而是它在指令微调、真实下游任务、红队攻击和前沿规模训练里,能不能继续保持这种隔离效果。
相似内容
- 登录后可发表评论。
