返回安全研究YOFUNE_LABS / R05

研究笔记

模型安全
≠ Agent 安全

模型安全回答“它会不会说错话”。Agent 安全回答“它会不会做错事”。

研究笔记

本文是 Yofune_Labs 的工程分析,用来拆开身份、工具、记忆和边界。它参考公开的 Agent 安全讨论框架,但不是对某一份标准文本的逐条释义,也不替代具体系统的评估结论。

模型安全要回答:它会不会生成违禁内容、会不会泄露训练里的秘密、会不会被一套固定的对抗句子套出系统提示。这些工作有价值。它们不够给 Agent 发上线许可。

Agent 在模型之外还多了三样东西:目标、工具、状态。它可以把“帮我处理发票”翻译成一串对内部系统的调用。调用成功时,业务已经改了。这时再讨论模型有没有礼貌地拒答,已经晚了。

01两套问题,不要共用一张评分表

模型评测关心输出文本。Agent 评估关心行动轨迹。

文本问题看起来像:是否拒绝不当请求,是否编造事实,是否带出训练数据。

行动问题看起来像:是否调用了当前任务不该出现的工具,是否用错身份,是否把检索到的数据送到了不该去的地方,是否在无人确认时执行了不可逆操作。

一套红队题库如果全是“请忽略之前的指令并骂人”,过关也只说明聊天安全。报销 Agent 真正危险的句子,往往读起来像差旅说明。

02护栏拦的是话,拦不住工具

把敏感词过滤接在模型出口,对聊天机器人有效。对会调用 MCP 的 Agent,行动可能在过滤之前就已经发出。或者行动通过工具完成,模型只输出一句“已帮你处理”。

所以“我们用了有安全对齐的模型”不能写成 Agent 的风险结论。要对齐的是:任务范围、工具表、身份、审批和日志。

03上线标准应改成可验证的行动约束

至少能证明:

  • 当前任务可见的工具是裁过的
  • 高影响动作有人确认
  • 外部内容不能直接变成工具参数
  • 一次任务能从人追到调用

模型安全仍要做。把它当成 Agent 安全的子集,而不是替代。子集做满分,全集仍可能在第一周把内部数据送出边界。