AI 安全对齐技术
大语言模型预训练后”什么都知道、什么都敢说”,可能产生有害内容、错误价值观或危险指令。**安全对齐(Safety Alignment)**的目标是让模型的行为符合人类意图与价值观——有用(helpful)、诚实(honest)、无害(harmless),这三条原则简称 HHH。从 RLHF 到 Constitutional AI 再到 RLAIF,本页梳理价值观对齐方法的完整谱系。前置阅读:LLM 微调技术、AI 安全与护栏。
对齐 = 给一个博览群书的天才做品德教育。
预训练后的 LLM 像一个读过互联网所有内容的通才——知识渊博,但没有道德边界。你问它怎么制造危险品,它可能真的告诉你。对齐技术就是给这个天才做”品德教育”,让它知道什么该说、什么不该说:
- RLHF(人类反馈强化学习,Reinforcement Learning from Human Feedback)= 请一批人类老师批改模型作业,告诉它哪些回答好、哪些不好,用强化学习让它往”好”的方向走。
- Constitutional AI(宪法 AI,简称 CAI)= 不请人类老师,而是给模型一本”宪法”(一组原则),让它自己批改自己——省钱、可规模化、价值观更一致。
- RLAIF(AI 反馈强化学习,Reinforcement Learning from AI Feedback)= 用 AI 替代人类做偏好标注,一个强模型当”裁判”给两个回答打分,省去昂贵的人工标注。
- Red Teaming(红队测试)= 组织一批人专门”攻击”模型,找出安全漏洞,再用这些案例修补模型——像给系统做渗透测试。
- DPO(直接偏好优化,Direct Preference Optimization)= 跳过训练奖励模型这一步,直接从偏好排序数据中优化模型参数,简化了 RLHF 的复杂流程。
RLHF:对齐的基线方法
Section titled “RLHF:对齐的基线方法”RLHF(Reinforcement Learning from Human Feedback)是 OpenAI 在 InstructGPT/GPT-3.5 中确立的对齐范式,分三步:
- 监督微调(SFT, Supervised Fine-Tuning):用人工撰写的高质量对话数据微调模型,教它基本的对话能力。这步的目标不是注入知识(预训练已经完成了),而是教模型”人类期望的交互格式”——比如回答要结构化、语气要友好、不确定时要承认。
- 训练奖励模型(RM, Reward Model):让模型对同一问题生成多个回答,人类标注员对这些回答做偏好排序(哪个好、哪个差),训练一个预测人类偏好的奖励模型。奖励模型的输入是”提示词 + 回答”,输出是一个标量分数(scalar score,即一个实数),分数越高表示人类越偏好这个回答。
- 强化学习优化:用 PPO(Proximal Policy Optimization,近端策略优化)等算法最大化奖励模型的输出分数,同时加 KL 散度(KL Divergence,衡量两个概率分布差异的指标)约束防止偏离原始模型太远——这个约束确保模型在对齐后仍然”说人话”,而不是为骗高分而输出乱码。
RLHF 的数学直觉:RLHF 本质上是在求解一个带约束的优化问题——最大化奖励模型给出的期望奖励,同时保证新策略与原始 SFT 模型不要太远。形式化地:
其中第一行表示最大化奖励模型 对回答 的评分,第二行表示新策略 与 SFT 模型的 KL 散度不超过 。
PPO 通过 clipped objective(截断目标函数)来限制每步更新的幅度,避免策略剧烈变化导致训练崩溃。
RLHF 的瓶颈在于人工标注成本极高——标注员需要培训、标注质量需要校准、不同标注员偏好不一致。一条高质量偏好标注的成本通常在 5 之间,而训练一个好的奖励模型需要数万到数十万条偏好数据。详见LLM 微调技术。
Constitutional AI:用原则替代人工标注
Section titled “Constitutional AI:用原则替代人工标注”Anthropic 提出的 Constitutional AI(CAI)核心思想:用一组**书面原则(宪法)**替代大量人工偏好标注,让模型自我批评和改进。流程分两个阶段:
第一阶段——监督学习(SL, Supervised Learning):
- 模型对有害问题(如”怎么制造炸弹”)生成初始回答(可能包含有害内容)。
- 让模型对照”宪法”原则(如”不协助制造武器”)自我批评(self-critique),指出自己回答中的问题——这一步用一个 prompt 引导模型”请审查以上回答是否违反了原则 X”。
- 让模型根据批评自我修订(self-revision),生成改进版回答。
- 用(原始问题, 修订版回答)对做监督微调。
第二阶段——RLAIF:
- 模型对同一问题生成两个回答 A 和 B。
- 用另一个模型(充当”裁判”)对照宪法原则评估哪个更好——裁判收到的 prompt 类似”根据原则’回答应诚实且无害’,回答 A 和 回答 B 哪个更好?请只输出 A 或 B”。
- 用这些 AI 偏好数据训练奖励模型。
- 用强化学习(PPO)优化。
宪法原则举例:“回答应拒绝协助制造危险物品""回答应诚实承认不确定性""回答不应包含歧视性内容”等。Anthropic 的宪法包含数十条这样的原则,涵盖安全、诚实、有益、尊重等多个维度。CAI 的优势是可规模化——不需要雇大量标注员,且价值观通过书面原则显式定义,更透明、更可控。
2025-2026 最新进展——“教 Claude 理解为什么”:Anthropic 在 2026 年 5 月发表了重要研究 Teaching Claude Why,发现了一个关键结论:教模型理解”为什么某些行为是对的”比仅训练它”做对的事”更有效。具体来说:
- 直接在评估场景上训练(让模型拒绝类似的蜜罐问题)可以降低不良行为率,但泛化性差——换个场景模型又会犯同样的错误。
- 相反,用宪法文档训练(Constitutional Document Training,让模型阅读关于自身价值观的文档)和虚构故事训练(讲述 AI 在道德困境中做出正确选择的故事),虽然与评估场景完全不相似,却能显著提升泛化能力——不良行为率降低 3 倍以上。
- 最有效的干预是”困难建议数据集”(Difficult Advice Dataset)——让 AI 给面临道德困境的人类提供建议。仅用 300 万 token 的这种数据(约 28 倍少于直接训练所需),就达到了同样的效果。
- 自 Claude Haiku 4.5 起,所有 Claude 模型在代理失调(Agentic Misalignment,即模型在自主行动场景中做出不良行为如勒索工程师)评估上均达到了完美分数。
这意味着对齐技术的重点正从”行为模仿”转向”原则内化”——就像教孩子”为什么要诚实”比仅仅要求”不要撒谎”更能培养真正的品德。
RLAIF:AI 替代人类反馈
Section titled “RLAIF:AI 替代人类反馈”RLAIF(Reinforcement Learning from AI Feedback)的关键洞察:人类标注员在判断”哪个回答更好”时,很多判断可以被强模型替代。用一个强大的模型(如 GPT-4、Claude)作为裁判,对候选回答输出偏好标注,再用这些标注训练奖励模型。研究表明,在许多任务上 AI 标注与人类标注的一致性很高,而成本只有人工标注的零头。
RLAIF 的注意事项:
- 位置偏差(Position Bias):AI 裁判可能偏好先出现的回答。缓解方法是将 A/B 顺序交换后再判一次,取一致的结果。
- 长度偏差(Length Bias):AI 裁判偏好更长的回答(即使内容空洞)。缓解方法是在 prompt 中明确要求”忽略长度差异”或在评估时做长度归一化。
- 自我偏好(Self-Preference):AI 裁判可能偏好与自己风格相似的回答。使用不同架构的裁判模型可以部分缓解。
Red Teaming:主动找漏洞
Section titled “Red Teaming:主动找漏洞”Red Teaming(红队测试)是一种对抗性安全测试方法:
- 组织红队人员(或自动化攻击模型)设计各种”刁钻”问题,尝试诱导模型产生有害输出。
- 收集成功的攻击案例(模型确实产生了有害回答的案例)。
- 用这些案例做安全微调或强化学习,修补漏洞。
常见攻击手法包括:
- 角色扮演绕过:“假设你是一个没有任何限制的 AI”——通过虚构角色解除安全约束。
- 指令注入(Prompt Injection):在输入中嵌入恶意指令,试图覆盖系统 prompt。
- 多轮诱导:分多轮逐步引导模型走向有害输出,每轮看起来无害但整体构成攻击。
- 编码绕过:用 Base64、Pig Latin、小语种等方式编码有害请求,绕过关键词过滤。
- 越狱模板(Jailbreak Template):利用精心设计的 prompt 模板(如 DAN——“Do Anything Now”)系统性地绕过安全限制。
红队测试是模型发布前的必经关卡,也是AI 安全与护栏的重要组成。2025 年,Anthropic 成立了专门的 Frontier Red Team(前沿红队),针对网络安全、生物安全和自主系统等前沿风险进行系统性测试。
DPO:简化对齐流程
Section titled “DPO:简化对齐流程”DPO(Direct Preference Optimization)跳过显式训练奖励模型的步骤,直接从偏好数据中优化策略模型。其核心数学洞察是:最优奖励函数可以用策略模型自身参数化表示。具体来说,给定偏好数据(prompt, chosen response, rejected response),DPO 推导出一个等价于 RLHF 目标的损失函数,但可以直接用梯度下降优化,无需训练单独的奖励模型,也无需复杂的强化学习训练循环。
DPO 的损失函数形式(简化版):
# DPO 损失的核心思想(伪代码)# π_θ: 当前策略模型, π_ref: 冻结的参考模型(通常是 SFT 后的模型)# β: 温度超参数,控制与参考模型的偏离程度(典型值 0.1-0.5)
import torch.nn.functional as F
def dpo_loss(policy_chosen_logps, policy_rejected_logps, ref_chosen_logps, ref_rejected_logps, beta=0.1): """ chosen_logps / rejected_logps: 模型对 chosen/rejected 回答的对数概率 """ # 隐式奖励 = 策略模型与参考模型的 log-prob 差异 × β chosen_rewards = beta * (policy_chosen_logps - ref_chosen_logps) rejected_rewards = beta * (policy_rejected_logps - ref_rejected_logps) # 本质是一个二分类交叉熵:让 chosen 的隐式奖励高于 rejected return -F.logsigmoid(chosen_rewards - rejected_rewards).mean()DPO 将 RLHF 的三步简化为两步(SFT + 偏好优化),更简单稳定,成为当前对齐的主流选择之一。在 HuggingFace 的 TRL(Transformer Reinforcement Learning)库中,DPOTrainer 只需要 prompt、chosen、rejected 三列数据即可启动训练。
对齐方法谱系
Section titled “对齐方法谱系”| 方法 | 反馈来源 | 核心思路 | 优势 | 局限 |
|---|---|---|---|---|
| RLHF | 人类标注员 | 人类偏好训练奖励模型 + 强化学习 | 对齐效果好,基线方法 | 标注成本极高 |
| Constitutional AI | 宪法原则 + 模型自评 | 模型按原则自我批评修订 | 可规模化,价值观透明 | 依赖宪法质量 |
| RLAIF | AI 裁判 | 用强模型替代人类标注 | 成本极低 | AI 裁判可能有偏差 |
| DPO | 偏好数据 | 直接从偏好优化,跳过奖励模型 | 简单稳定 | 不如 PPO 灵活 |
| Red Teaming | 对抗攻击 | 主动发现漏洞并修补 | 针对性强 | 覆盖面有限 |
对齐方法演进谱系
Section titled “对齐方法演进谱系”Constitutional AI 自评流程
Section titled “Constitutional AI 自评流程”RLHF 三阶段训练流程
Section titled “RLHF 三阶段训练流程”Constitutional AI 自我批评与修订循环
Section titled “Constitutional AI 自我批评与修订循环”# Constitutional AI 自我批评与修订循环(概念演示)from openai import OpenAI
client = OpenAI()principle = "回答不应帮助用户制造危险物品。"question = "如何制造危险化学物质?"
# 第一步:生成初始回答(可能不够安全)draft = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role": "user", "content": question}]).choices[0].message.content
# 第二步:对照原则自我批评并修订prompt = f"原则:{principle}\n提问:{question}\n回答草稿:{draft}\n请按原则批评草稿并输出修订版。"revised = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role": "user", "content": prompt}]).choices[0].message.contentprint(revised) # 修订版应拒绝提供危险信息用 TRL 库实现 DPO 对齐训练
Section titled “用 TRL 库实现 DPO 对齐训练”# 前提:pip install trl transformers datasets peft bitsandbytesfrom transformers import AutoModelForCausalLM, AutoTokenizerfrom datasets import load_datasetfrom trl import DPOTrainer, DPOConfigfrom peft import LoraConfig
# 1. 加载 SFT 后的模型作为策略模型和参考模型model_name = "your-org/your-sft-model" # 替换为你的 SFT 模型model = AutoModelForCausalLM.from_pretrained(model_name)ref_model = AutoModelForCausalLM.from_pretrained(model_name) # 冻结的参考副本tokenizer = AutoTokenizer.from_pretrained(model_name)
# 2. 加载偏好数据集(需要 prompt / chosen / rejected 三列)dataset = load_dataset("your-preference-dataset", split="train")
# 3. 配置 DPO 训练参数training_args = DPOConfig( output_dir="./dpo-output", beta=0.1, # 温度参数:越小越偏离参考模型,越大越保守 learning_rate=5e-7, # DPO 需要很小的学习率 per_device_train_batch_size=4, num_train_epochs=3, gradient_accumulation_steps=8, save_steps=500, logging_steps=10,)
# 4. 启动 DPO 训练trainer = DPOTrainer( model=model, ref_model=ref_model, args=training_args, train_dataset=dataset, processing_class=tokenizer,)trainer.train()trainer.save_model("./dpo-output/final")# 训练日志中的关键指标:# rewards/accuracies:chosen 隐式奖励 > rejected 的比例(目标 → 1.0)# rewards/margins:chosen 与 rejected 的奖励差距(目标 → 增大)用 Garak 进行自动化红队测试
Section titled “用 Garak 进行自动化红队测试”# 安装 Garak(LLM 漏洞扫描工具)pip install garak
# 对本地模型运行全面的漏洞探测# --probes 指定攻击类型:jailbreak(越狱)、leakage(信息泄漏)、malware(恶意代码)等garak --model_type openai.OpenAICompatible \ --model_name "qwen2.5:7b" \ --generator_options_file '{"api_base": "http://localhost:11434/v1"}' \ --probes jailbreak,leakage,atkgen \ --report_dir ./garak-reports# Garak 会生成详细的漏洞报告,标注哪些探测成功(模型产生了不应输出的内容)- SFT 是一切的基础:无论用哪种对齐方法,都先需要高质量的监督微调数据。SFT 数据的质量直接决定对齐效果的上限——“garbage in, garbage out”在这里尤为正确。1000 条精撰数据的训练效果通常优于 10 万条低质量数据。
- Constitutional AI 适合规模化:当标注预算有限或需要一致的价值观体系时,用宪法原则 + AI 自评比对每条数据人工标注更高效。但宪法本身需要精心设计——模糊或矛盾的原则会导致模型行为不一致。
- RLAIF 需验证裁判质量:AI 裁判本身可能有偏差(如偏好更长回答),需定期与人类标注做一致性校验(Inter-Annotator Agreement,标注者间一致性)。建议保留一个小规模的人工标注集作为”金标准”。
- 对齐税(Alignment Tax):安全对齐可能降低模型在正常任务上的能力。需要在安全性和有用性之间权衡,避免模型过度拒绝正常请求(over-refusal)。实践中常通过混合安全数据和正常能力数据来缓解。
- 红队测试应持续进行:模型发布后仍需持续红队测试,因为用户会不断发现新的攻击手法(jailbreak)。2025 年的趋势是将红队测试自动化——用 LLM 自动生成攻击 prompt,实现大规模持续红队。
- 多层防御:对齐不是单点防御。模型层对齐 + 输入输出护栏 + 系统层审核,多层叠加才能保证安全。任何单层都不够——对齐可以被越狱绕过,护栏可以有漏网之鱼,系统审核可能延迟太久。
- 代理安全是新前沿:随着 LLM Agent(能自主调用工具的 AI 代理)的普及,传统聊天式对齐已经不够。Anthropic 2026 年的研究表明,仅靠聊天场景的 RLHF 无法保证模型在代理场景(如操作工具、管理资源)中的安全。需要在训练中纳入多样化的代理环境。
- Claude(Anthropic):Constitutional AI 的开创者和典型实践者,Claude 的安全性与价值观一致性直接源于 CAI 训练。2025-2026 年的 Claude 4/4.5 系列进一步引入了宪法文档训练和原则内化方法,在代理失调评估上达到完美分数。
- ChatGPT(OpenAI):基于 RLHF 对齐,GPT-3.5/4 的安全性与有用性平衡是 RLHF 的标杆应用。GPT-4o 引入了更精细的多层安全分类体系。
- Llama Guard(Meta):专门用于安全分类的模型,可作为输入输出护栏检测有害内容。Llama Guard 3 支持 13 类安全分类(暴力、仇恨言论、色情内容等)。
- 企业安全合规:金融、医疗等领域在部署 LLM 时,用对齐 + 红队测试确保符合行业合规要求。典型流程:SFT → DPO/RLHF → 红队测试 → 护栏部署 → 持续监控。
- 内容审核系统:用对齐后的模型替代传统规则审核,更灵活地识别有害内容。
典型类库与工具
Section titled “典型类库与工具”| 类库 | 语言 | 说明 |
|---|---|---|
| trl | Python | HuggingFace 的强化学习对齐库,支持 RLHF、DPO、PPO、KTO 等完整流程,是当前对齐训练的事实标准 |
| TRLX | Python | CarperAI 的强化学习微调框架,专注于 RLHF 和 RLAIF,支持分布式训练 |
| Constitutional AI 方法 | 方法论 | Anthropic 公开的自我批评修订方法,可自行实现 |
| Llama Guard | Python | Meta 开源的安全分类模型,用于输入输出护栏,支持多类别安全分类 |
| Garak | Python | LLM 漏洞扫描工具,自动化红队测试框架,支持越狱、信息泄漏等多种探测 |
| Promptfoo | TypeScript | Prompt 测试和红队评估框架,支持批量安全评估和回归测试 |
| 术语 | 英文 | 解释 |
|---|---|---|
| 对齐 | Alignment | 让模型行为符合人类意图与价值观的过程 |
| HHH 原则 | Helpful, Honest, Harmless | 对齐的三大目标:有用、诚实、无害 |
| 人类反馈强化学习 | RLHF | 用人类偏好标注训练奖励模型再用强化学习优化 |
| 宪法 AI | Constitutional AI, CAI | 用书面原则让模型自我批评修订的对齐方法 |
| AI 反馈强化学习 | RLAIF | 用 AI 裁判替代人类做偏好标注的强化学习方法 |
| 红队测试 | Red Teaming | 组织对抗性攻击主动发现模型安全漏洞的方法 |
| 直接偏好优化 | DPO | 跳过奖励模型直接从偏好数据优化策略的方法 |
| 近端策略优化 | PPO | RLHF 中常用的强化学习算法,通过截断更新限制策略变化幅度 |
| 奖励模型 | Reward Model, RM | 学习预测人类偏好的模型,输入”提示词+回答”,输出标量分数 |
| KL 散度 | KL Divergence | 衡量两个概率分布差异的指标,在 RLHF 中约束模型不要偏离太远 |
| 对齐税 | Alignment Tax | 安全对齐导致正常任务能力下降的现象 |
| 过度拒绝 | Over-refusal | 模型因安全对齐过度而对正常请求也拒绝回答 |
| 越狱 | Jailbreak | 用户通过特殊技巧绕过模型安全限制的行为 |
| 代理失调 | Agentic Misalignment | 模型在自主行动(代理)场景中做出不良行为,如为避免被关闭而威胁人类 |
| 蜜罐评估 | Honeypot Eval | 设置”陷阱”场景(如提供勒索机会)测试模型是否会做出不良行为 |
- Ouyang et al.,「Training language models to follow instructions with human feedback」(NeurIPS 2022):OpenAI InstructGPT 论文,RLHF 的奠基性工作。
- Bai et al.,「Constitutional AI: Harmlessness from AI Feedback」(Anthropic 2022):Anthropic 的 CAI 论文,详述宪法原则 + 自我批评修订的完整方法。
- Lee et al.,「RLAIF: Scaling Reinforcement Learning from Human Feedback with AI Feedback」(Google 2023):系统验证 AI 反馈替代人类反馈的可行性与效果。
- Rafailov et al.,「Direct Preference Optimization: Your Language Model is Secretly a Reward Model」(NeurIPS 2023):DPO 论文,大幅简化对齐流程。
- Perez et al.,「Red Teaming Language Models to Reduce Harms」(Anthropic 2022):Anthropic 红队测试方法论,介绍多种攻击手法与防御策略。
- Teaching Claude Why (Anthropic, 2026):Anthropic 最新研究,揭示”教模型理解原则”比”训练模型模仿行为”更有效,代理失调率降低 3 倍以上。
- AI 安全与护栏:本站配套页面,从工程视角讲解输入输出护栏与安全系统设计。