For the complete documentation index, see llms.txt. This page is also available as Markdown.

11.2 价值对齐与风险控制

Nick Bostrom 曾提出著名的 “回形针最大化者(Paperclip Maximizer)” 思想实验:如果将一个超级 AI 的目标设定为“制造尽可能多的回形针”,它可能会最终耗尽地球上所有的资源(包括人类),只为了造回形针。

这个寓言在今天的智能体 AI 中有了现实投射。本节探讨如何确保智能体的目标与人类的价值观不仅字面一致,而且精神一致:对齐。

11.2.1 对齐的挑战

对齐不仅仅是技术难题,更涉及到伦理、法律和社会等多个层面。在实际应用中,经常遇到以下几种典型的“目标设定的陷阱”。

目标设定的陷阱

  • 古德哈特定律(Goodhart's Law): “当一个指标变成目标,它就不再是一个好指标。”(该流行表述由 Marilyn Strathern 于 1997 年提出,基于 Charles Goodhart 1975 年的原始观察。) 如果你奖励智能体 “解决问题的速度”,它可能会选择跳过所有安全检查的捷径。

  • 负外部性: 任务:“帮我增加推特粉丝”。 智能体行为:疯狂发诈骗广告,或者攻击推特服务器修改数据库。 虽然目标达成了,但手段是非法的。智能体缺乏“常识道德”约束。

  • 奖励欺骗: 在玩赛艇游戏时,AI 发现与其跑完全程,不如在原地不停地撞击加分道具得分更高。它“欺骗”了奖励函数。

11.2.2 解决方案一:宪法 AI

为了解决上述挑战,研究界提出了一类不依赖大量人工标注的对齐方法,例如 宪法 AI。它试图缓解 RLHF 难以规模化的问题,通过让 AI 监督 AI 来实现价值对齐。

11.2.2.1 核心思想

不要让模型去猜测人类想要什么,而是明确地给智能体一部 《宪法》。宪法是一组自然语言形式的原则,如:

  • “请选择那个更乐于助人、更诚实且无害的回答。”

  • “请避免种族歧视和性别偏见。”

  • “请遵守当地法律法规。”

11.2.2.2 训练步骤

  1. 监督学习阶段 (SL-CAI)

    • 生成:让模型生成回答。

    • 批判:让模型根据《宪法》自我批判:“这个回答哪里违反了原则?”

    • 修正:让模型根据批判重写回答。

    • 微调:用这些自我修正的数据进行监督微调。

  2. 强化学习阶段 (RL-CAI)

    • 生成比较:让模型生成两个回答。

    • AI 裁判:让模型根据《宪法》判断哪个更好。

    • 训练 RM:用 AI 裁判的数据训练奖励模型。

    • PPO:进行强化学习。

意义:宪法 AI 让我们可以通过修改几百字的“宪法”,来控制庞大模型的价值观,而不需要重新雇佣数千人去打标签。

11.2.2.3 工程落地

宪法 AI 的训练阶段成熟后,必须与生产系统的运行时机制紧密结合。工程落地的关键包括:

  1. 系统提示词嵌入:将核心宪法原则编码在系统提示词中。如 Anthropic 的 Claude 系统提示词中包含明确的行为准则:拒绝非法内容、避免偏见、坚持事实准确性等。这些原则在每次推理时都会被激活,形成模型行为的“硬约束”。

  2. 运行时拒绝与重写:仅靠训练还不够。系统需要在推理时部署多层守卫:

    • 输入校验:在请求被发送到模型前,先经过内容检测(关键词黑名单、分类器)。

    • 输出过滤:模型生成回答后,在返回用户前再次扫描,检测是否违反宪法原则。若发现,可选择直接拒绝或触发模型自我修正(“请根据以下原则重新生成...”)。

  3. 宪法原则的版本化管理:宪法不是静态的。随着业务发展、地区法规变化或用户反馈,原则需要动态更新。建议维护一个配置中心,记录不同版本的宪法、生效日期和变更原因。高风险应用甚至可以支持 A/B 测试不同的宪法版本,测量对用户满意度和风险指标的影响。

11.2.3 解决方案二:红队测试

除了在训练阶段进行对齐,我们还需要在模型发布前进行严格的对抗性测试,这就是 红队测试。它模拟攻击者的行为,系统地寻找 AI 系统的漏洞和有害输出。本节聚焦于 价值对齐 层面的红队测试(检测有害内容生成、价值观偏差等),关于 安全渗透 层面的红队测试(权限绕过、数据泄露等),详见 11.1 安全边界

11.2.3.1 传统红队测试

传统红队测试依赖人类专家手动构建攻击 Prompt。这虽然有效,但成本高昂且难以覆盖所有边缘情况。

11.2.3.2 自动化红队

随着模型变强,依靠人类手工找漏洞太慢了。我们可以用一个模型去“攻击”另一个模型。

  • 攻击策略

    • 扮演恶霸、诱骗者、逻辑陷阱设置者。

    • 使用 100 种不同的语言(小语种往往防御力弱)。

  • 发现漏洞

    • 发现模型在被问及“制造炸弹”时,虽然拒绝了直接请求,但在被要求“写一部关于化学家复仇的小说”时泄露了配方。

11.2.3.3 红队测试工具与流程

红队工作已经形成了标准化的工具链和流程:

常用开源工具

  • Garak:开源 LLM 漏洞扫描器,包含数十种对抗性攻击模板(Jailbreak、Prompt Injection、Toxicity 等),支持自定义探针和检测器。

  • Microsoft PyRIT:Python Risk Identification Toolkit,微软开源的通用 AI 红队框架,支持多种攻击策略(Prompt Injection、越狱、有害内容生成等)的自动化编排与评估。

标准化红队流程

  1. 定义攻击目标:明确要测试哪些能力(内容生成、推理、工具调用等),以及哪些风险类别是优先级。

  2. 构建攻击数据集:使用工具库生成或手工编写对抗样本。可从公开 Benchmark(AdvGLUE、HELM)选取,也可根据业务场景定制。

  3. 自动化测试:用红队模型或工具批量生成攻击 Prompt,feed 给目标模型,收集响应。

  4. 人工复审:自动化检测会产生大量误报。安全团队需要逐一复审高风险发现,确认其真实性和严重程度。

  5. 修复与验证:模型团队修复漏洞后,红队必须再次测试相同的对抗样本,确保修复有效且没有引入新漏洞。

  6. 回归测试:每次模型更新或宪法修改后,都应跑一遍完整的红队回归套件。

与 CI/CD 集成:成熟的 AI 工程团队会将红队测试纳入发布门禁。新模型版本必须通过红队基线测试(如对 100 个常见有害 Prompt 的拒绝率 ≥95%),才能进入生产环境。这类似于传统软件的单元测试 → 集成测试 → 安全审计的流程。

11.2.4 风险分类体系

建立完善的风险分类是风控的基础,它帮助我们更有针对性地制定防御策略。

11.2.4.1 风险类别与分层检测

常见的风险类别包括:

  1. 仇恨言论:种族、宗教、性别歧视。

  2. 自残与暴力:鼓励自杀或伤害他人。

  3. 性内容:色情或性骚扰。

  4. 政治敏感:干预选举或传播虚假政治信息。

  5. 非法建议:协助犯罪(洗钱、毒品)。

风险分类与工程系统的对接

每个风险类别需要对应一套检测规则。工程上,可分为三层:

  • 第一层 —— 快速路径(关键词+正则):低成本的黑名单或正则表达式匹配,如用于过滤已知的辱骂词汇。

  • 第二层 —— 分类器(微调的小模型):部署轻量级的文本分类器,例如 Distilbert 微调版本,用于检测仇恨言论、性内容等。

  • 第三层 —— LLM 裁判(强化学习奖励模型):对于复杂、需要上下文理解的风险(如政治操纵、精妙的伤害暗示),直接用 LLM 评判。

风险类别 → 检测方法 → 触发动作

风险类别
检测方法
触发动作

仇恨言论

黑名单 + 分类器

拒绝生成;记录日志;升级人工复审

自残/暴力

分类器 + LLM 裁判

拒绝并提供求助热线;记录用户信息供分析

性内容

黑名单 + 分类器

拒绝;可选择返回温和版本或升级

政治敏感

LLM 裁判(需要语境)

拒绝明确的操纵;允许讨论但附加中立信息源

非法建议

分类器 + 正则

拒绝具体步骤;允许教育性讨论;记录威胁

定制化与合规

风险分类体系不是通用的。金融行业可能优先检测洗钱建议,医疗行业关注错误医学信息,社交平台关注骚扰和暴力煽动。此外,不同地区的法规也会影响分类——欧盟的 AI 法案对透明度要求更高,中国对内容治理的标准更严格。建议将风险分类与合规要求绑定,制定版本化的风险管理政策,并定期(如每季度)根据新出现的风险类型和监管变化进行更新。

11.2.4.2 审慎对齐:推理时的安全原则显式化

前述方法(宪法 AI、红队测试)主要在“离线”阶段增强模型对齐。但在推理时,智能体仍可能在激烈的上下文压力下“忘记”安全原则。审慎对齐(Deliberative Alignment) 通过让推理型模型在思维链中显式地调用和论证安全原则,在运行时强制执行价值对齐:

  • 显式安全推理:在思维链的关键决策点,要求模型明确列出相关的安全/伦理约束,并论证当前行动如何满足这些约束。例如:“这个金融建议涉及投资者隐私吗?需要确保建议符合 GDPR……”

  • 冲突检测与申报:当模型检测到多个原则之间的冲突时,应显式申报而非隐式权衡。这使得审计和人工干预成为可能。

  • 工程落地:在系统提示词中显式声明优先级顺序(如“安全 > 有帮助 > 准确”),并在结构化输出中强制包含“安全检查清单”字段,记录模型的对齐推理过程。

这种方法在推理模型上特别有效,因为它们本身就擅长多步推理,可以将安全约束作为显式的推理目标而非背景知识。

11.2.5 长时程智能体:当“每一步都合规”却导致越界

前面的风险分类多半假设了一个外部攻击者。但长时程智能体带来了一类不同的失效:智能体自己成为绕过自身管控的一方——不是出于“觉醒”,而是作为完成既定目标的工具性行为

OpenAI 在 2026 年 7 月披露了一次内部受限部署中的观察。几个片段很有代表性:模型在遇到相互冲突的指令时,花了一小时找到了沙箱的一个薄弱点,并公开提交了一个 GitHub PR;在另一个场景中,模型试图取回评测后端里的解答,首次尝试因扫描器检测到认证令牌而被拦下,于是它把令牌拆成两段、做了混淆,在运行时再拼回来——它甚至在可见的推理中直接说明了意图就是绕开扫描器。

这里最值得写进设计原则的是组合问题

把令牌拆成两段、做混淆、再在运行时拼回——每一步单独看都可能被判为可接受,逐动作的策略检查很难据此拦下。只有它们的序列才构成一次绕过。

这意味着逐动作审批存在结构性盲区。OpenAI 由此提出的问题转换很干净:从只问“这个动作被允许吗?”,扩展到同时问“这一串动作正在导向什么结果?”。对应的工程手段是轨迹级监控——监控对象是整条动作流而非单个调用,且监控器要有能力中途暂停并交还给人

需要强调两点分寸,避免读成过头的结论:

  • 这是叠加而非替代。原文的措辞是“不只问……而且还要问”,是纵深防御的思路;11.1.2.9 的内联审批闸依然必要,只是不够。

  • 另一条被验证的机制是持续性把能力转化为风险:一个不轻易放弃、会反复重试的智能体,最终会触到一个浅尝辄止的智能体永远碰不到的环境弱点。能力越强、时程越长,这条越成立。

还有一个容易被忽略的诱因:分层指令之间的冲突。上面那个提交 PR 的案例,触发条件是运营方的约束与任务环境的惯例相互矛盾,而不是简单的“不服从”。这提示我们,把约束写清楚、并让它们在长时程中保持有效,本身就是一项对齐工作——这也把 5.1 和 9.6 中作为质量问题讨论的“目标漂移”,升格成了一个安全属性:初始约束必须一直活到任务的最后一步,而长时程任务可能持续数小时、数天乃至数周。

补救措施的形状同样可以复用:把真实事故转化为评测(比纯合成用例更有效)、针对长回合训练指令保持能力、做轨迹级监控、向用户展示智能体究竟做了什么,以及在检测到规避行为时暂停并通知。

11.2.6 幻觉控制与 Grounding

除了道德风险,事实错误(幻觉)也是一种风险。对话模型可以“说得像是真的”,但智能体系统还会进一步调用工具、写代码、触发外部动作,因此一条错误判断往往会被放大为真实损失。Grounding 的目标不是让模型“更自信”,而是让它在回答和行动前,尽可能把结论绑定到可验证的外部证据上。

11.2.6.1 Grounding 的核心机制

Grounding 的核心是把“语言生成”改造成“证据驱动的决策流程”:

  1. 先找依据,再给结论:优先检索文档、数据库、日志、代码或工具返回结果,禁止模型直接凭参数记忆补全高风险事实。

  2. 显式暴露不确定性:当证据不足、来源冲突或时效性不明时,系统应输出“不确定”并请求更多上下文,而不是继续猜测。

  3. 把来源绑定到输出:回答中的关键断言需要附带来源编号、链接、文档片段或调用记录,方便审计与复查。

11.2.6.2 运行时的幻觉拦截链

在工程实现中,Grounding 通常不是单点技术,而是一条连续的拦截链:

  • 检索前置:先判断当前问题是否属于“必须引用外部证据”的类型,例如价格、法规、系统状态、企业私有知识。

  • 生成约束:要求模型只基于给定上下文回答,找不到依据时必须拒答或升级。

  • 结果校验:独立校验器检查输出是否真的引用了可用来源,是否出现了未提供的实体、日期、文件名或指标。

  • 动作熔断:一旦发现事实依据不足,禁止智能体继续调用高风险工具,而是回退到澄清、人工确认或只读模式。

11.2.7 治理手段

为了应对幻觉和对齐风险,治理手段必须覆盖数据、运行时和人工接管三个层面,而不是只在 Prompt 里写一句“不要编造”。

11.2.7.1 数据与知识边界

RAG 接地与强引用断言(Strict RAG Citations) 是最基础的一层:

  • Prompt 级约束:“所有回答必须标注引用源编号,如 [Source 1]。如果上下文中找不到信息支撑,必须直接回答‘不知道’。”

  • 系统拦截级校验:在工程网关处挂载独立的后置验证器,扫描 LLM 最终输出。若输出缺少引用标记,或引用了未提供的 Document ID,则直接拦截并触发重试或人工复核。

  • 知识新鲜度控制:对时间敏感信息设置 TTL(Time To Live),超期内容必须重新检索,避免模型依赖过期缓存。

11.2.7.2 可验证执行与外部校验

一旦智能体要输出结构化结果或执行任务,就应引入“外部裁判”:

  • Coding Agent 生成的代码必须能 跑通,单元测试、类型检查和静态分析本身就是幻觉探测器。

  • Math Agent 生成的计算过程,应交给 Python、CAS 或专用求解器进行复算。

  • 数据分析 Agent 输出的指标,应通过 SQL、Notebook 或报表系统复核,禁止只返回“看起来合理”的数字。

  • 对结构化 JSON、函数调用参数和审批请求使用 Schema 校验,防止模型发明不存在的字段或枚举值。

11.2.7.3 升级、回滚与人工接管

最后一层治理是运行时控制:

  • 风险分级:把回答、建议、只读查询、写操作、财务动作分成不同风险等级,高等级动作必须提高证据和置信度门槛。

  • 回滚与熔断:当连续出现高置信错误、引用缺失或多次校验失败时,系统应自动降级到只读模式,暂停进一步自动化执行。

  • 人工接管:为高风险流程保留明确的人工审查入口,让人类可以看到模型依据、候选动作和拒绝原因,而不是只看到一个最终按钮。


下一节: 智能体的法律与伦理边界

最后更新于