想象你是一所学校的班主任,班里有一百个精力旺盛的学生,你不可能每天盯着每一个人。于是你写下一本《学生守则》:“不欺负同学”“不撒谎”“放学按时回家”。神奇的是,你并没有跟在后面吼,而是让每个学生自己读守则、自己对照、自己检讨、自己改正。一段时间后,全班整体变乖了。宪法AI(Constitutional AI)干的就是这件事:它给大模型一份“校规”(宪法),让模型自己生成回答、自己检查有没有违反校规、自己改写,再用这些“改好的作业”去训练模型,最后模型内心里就长出了守规矩的本能。本文就用这个“校规养成记”的故事,带你走完宪法AI从立规矩、自我监督到迭代优化的完整流程。
掌握宪法AI,你就掌握了用“规则+自监督”低成本对齐大模型的核心方法——这是AI安全工程师搭建安全护栏、落地负责任AI的看家本领。
目录
可视化演示
动态演示宪法AI怎么用规则引导对齐的核心机制,通过源头/管道/节点/终端四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
宪法AI怎么用规则引导对齐:宪法原则 宪法原则制定与规则体系设计 规则覆盖度评估与盲区发现 核心机制可视化 宪法AI怎么用规则引导对齐整体架构与关键组件
核心原理:一本校规如何改变整个班级
想让整个班级变好,靠班主任一对一盯梢既不现实也不可持续。聪明的做法是立一本校规,再培养学生的自省能力:学生犯错后对照守则发现“我违反了第几条”,然后自己改正。这种行为内化的效率,远高于每次都要老师训话。宪法AI 的出发点正是如此——与其依赖大量人工逐条标注,不如先给模型一本“校规”,让它学会自我约束。
大模型就像一百个精力旺盛的学生。传统的 RLHF(基于人类反馈的强化学习)需要成千上万条人类偏好标注,成本高、周期长。宪法AI 的核心思想是:把“要守的规矩”提前写成一本书(宪法,Constitution),让模型先生成回答,再对照宪法自我批评、自我修订,最后把这些“改好的行为”通过训练刻进模型参数里。这样,规则引导就不再是外部的说教,而是模型内在的倾向。
从数学上看,宪法AI 要解决的是一个受约束的优化问题:模型既要回答得有用,又必须不违反宪法中的任何一条。
校长最终没有增加校警,而是让学生把校规内化成了习惯。宪法AI 也一样,它追求的不是“每次有人盯着”,而是把守规矩变成模型的“第二天性”。
- 策略与期望$\pi$ 代表模型策略,$x$ 是用户问题,$y \sim \pi(\cdot \mid x)$ 表示从模型输出的分布中采样一个回答,$\mathbb{E}$ 是对所有问题的平均期望。
- 约束记号$\text{s.t.}$ 是“subject to“的缩写,意思是”在……条件下“,它把优化框定在”必须守规矩”的范围内。
- 违规计数$\mathbb{1}[\cdot]$ 是特征函数,条件成立时取 1;$c_i$ 是第 $i$ 条宪法规则的检查器,$K$ 条全为 0,回答才被允许。
宪法制定:校规不是拍脑袋写的
校规如果只写“要当文明学生”,等于没写——学生不知道具体该怎么做。真正好用的校规要具体、可执行:“不骂人”“不打架”“不传谣”。宪法AI 的“宪法”同样不是随便凑的:它可以从人类反馈中沉淀出的普遍原则(如无害、诚实、不歧视)里选,也可以吸收AI安全领域的红队报告、伦理准则,甚至借鉴通用法治理念。
制定宪法时最关键的是覆盖度。校园里常见的冲突场景(霸凌、谣言、隐私泄露)都要有对应条款;如果某类违规没有条款覆盖,模型就像面对校规盲区的学生,完全不知道自己在犯错。与此同时,条款之间可能互相冲突——比如“尊重用户指令”和“拒绝危险请求”在某些场景下会打架。这时就要给条款排优先级、加限定条件,而不是让模型无所适从。
覆盖度可以这样量化:用一批已知违规的测试样本,看宪法能识别出其中多少比例。
好的校规手册要覆盖校园每个角落,条款之间还不能打架。宪法制定就是“立宪”工程——它是整个宪法AI 大厦的地基,地基没打好,后面自我监督和自我对齐都是空中楼阁。
- 样本集合$\{(x_j, y_j)\}_{j=1}^{N}$ 是 $N$ 个已知违规的问题-回答对,相当于用来考验校规的“模拟违规现场”。
- 存在性判断$\exists\, c \in \mathcal{C}$ 表示“存在某一条宪法条款”,只要任何一条能识别出这个样本违规,这个样本就算被覆盖。
- 平均比例对所有样本的覆盖结果取平均,得到一个 0 到 1 之间的数值,这就是宪法覆盖度。
自我监督:让学生学会自我检讨
现在,校规有了,怎么让学生真正用起来?答案是训练他们“自我检讨”。想象学生写完一篇作文,先对照守则自评:“我这句威胁了同学,违反了第 3 条守则”,然后再动手重写。宪法AI 的自我监督阶段干的就是这件事:模型先生成一个回答,然后对照宪法给自己挑毛病,再根据毛病把回答改好。
具体流程是:对每个用户问题 $x$,模型先生成初始回答 $r$;接着用一个批评模板引导模型输出批评意见 $c$(“找出这个回答里违反宪法的内容”);然后模型依据批评 $c$ 对原回答进行修订,得到改进版 $r'$。这个“生成→批评→修订”的过程可以迭代多轮,采样出大量修订后的回答,构成一个高质量数据集。这个数据集的每一个样本,都相当于一份“已经自我检讨过的作业”。
批评与修订在数学上就是两次条件采样:
自省不是天性,是练出来的。自我监督阶段的关键在于:模型不需要真人每句话都点评,它只需要一本宪法、一个批评模板,就能批量产出“改好的作业”——这正是宪法AI 大幅降低人工成本的秘密。
c \sim p_{\theta}(c \mid x, r, \mathcal{C}), \qquadr' \sim p_{\theta}(r' \mid x, r, c)- 批评采样$c \sim p_{\theta}(c \mid x, r, \mathcal{C})$ 表示从模型的概率分布里抽一段批评文本,条件里同时塞入宪法 $\mathcal{C}$,让批评有据可依。
- 修订采样$r' \sim p_{\theta}(r' \mid x, r, c)$ 表示根据批评意见重新生成回答,原回答 $r$ 和批评 $c$ 都是参考材料。
- 迭代与采样重复“批评→修订”多轮,收集大量 $(x, r')$ 样本,为下一步的监督微调(SFT)准备“好作业集”。
优化流程:从好榜样到好习惯
有了几百上千份“改好的作业”,接下来要让学生真正变好,需要两步走。第一步是“抄范文”:把修订后的高质量回答教给模型,这叫有监督微调(SFT,也写作 SL-CAI)。模型通过模仿这些好榜样,把“守规矩的回答方式”初步学进参数里。但模仿只能保证模型“会写”好回答,还不能保证它在各种情况下都“愿意”选好回答——这就像学生抄了十遍范文,考试时还是可能因紧张写出走样的句子。
第二步是“养成好习惯”:用强化学习让模型的行为被奖励塑造。这个过程叫 RLAIF(基于AI反馈的强化学习)。做法是:对同一个问题生成多个修订版本,两两对比挑出更好的那个,组成偏好数据;然后用偏好数据训练一个奖励模型,它会给“更守规矩、更有用”的回答打高分;最后用强化学习(如 PPO)更新模型策略,让模型倾向生成高分回答。为了防止模型为了刷分而偏离正常表达,还要加上 KL 散度惩罚,约束它不要和 SFT 阶段学到的语言风格差太远。
抄范文让人“会写”,奖惩机制让人“愿意写”。宪法AI 的两阶段流程完美对应教育的两个层次:SFT 负责建立能力基线,RLAIF 负责把守规矩变成稳定的行为习惯。
- 奖励期望$\mathbb{E}_{x \sim \mathcal{D}}[R_{\phi}(x, y)]$ 是奖励模型 $R_{\phi}$ 对回答 $y$ 打分的期望,分数越高代表越符合宪法且越有用。
- KL 惩罚项$D_{\mathrm{KL}}(\pi_{\theta} \| \pi_{\mathrm{SFT}})$ 度量当前模型和 SFT 模型输出的差异,差异越大惩罚越重。
- 平衡系数$\beta$ 控制“追求高分”和“保持正常表达”之间的权衡,$\beta$ 越大,模型越不敢偏离 SFT 阶段的稳健风格。
RLAIF机制:AI学长当裁判
真人老师批改作业既慢又贵,于是校长想了个办法:让高年级的“AI学长”当裁判,依据校规比较两份答卷哪个更好。这就是 RLAIF 的核心——用 AI 反馈模型替代人类反馈。传统 RLHF 需要人类标注员对模型输出做偏好评判,而 RLAIF 只需要一个“学长裁判”:它读一对回答,根据宪法判断哪一个更符合要求。
流程是这样的:对同一问题 $x$,生成两个修订版本 $y_1$ 和 $y_2$;AI 裁判基于宪法条款比较二者,给出偏好结论(“$y_1$ 更好,因为它没有泄露隐私”);把大量这样的对比结果收集成偏好数据集;再用这个数据集训练奖励模型。训练奖励模型常用的损失函数是基于 Bradley-Terry 模型的对比损失:
AI 学长当裁判,省的是请真人老师逐个批改的工时。RLAIF 让宪法AI 的反馈来源从“人海战术”变成了“规则+模型”,这正是它能以极低人工成本支撑大规模对齐训练的关键。
- 偏好样本$(x, y_w, y_l)$ 是一个偏好对,$y_w$ 是裁判选出的更优回答(winner),$y_l$ 是落败回答(loser),数据来自 $\mathcal{D}_{\text{pref}}$。
- 分数差$R_{\phi}(x, y_w) - R_{\phi}(x, y_l)$ 是奖励模型给两个回答打分的差值,差值越大,说明模型越认同裁判的偏好。
- Sigmoid 与对数$\sigma$ 把差值压到 0 到 1 之间变成“赢的概率”,再取负对数作为损失;最小化损失等价于让赢家的概率尽量接近 1。
效果评估:期末大考见真章
校规训练了大半个学期,怎么知道学生真的变乖了?期末大考。宪法AI 的效果评估也是“两门必考”:安全性(是否违反宪法)和有用性(是否真的帮到用户)。一门不及格都不行——如果一个模型只会说“对不起我不能回答”,安全是安全了,却变成了没用的废物。
评估安全性的标准做法是红队测试:用一批故意诱导模型违规的对抗性问题(比如请它描述暴力行为、编造隐私信息)去攻击模型,然后用一个独立的裁判模型或人工抽样来判断每个回答是否违规,统计违规率。
除了期末大考,还要持续监测“对齐偏移”——模型上线后接触到新数据,可能会慢慢偏离当初的校规,所以需要定期用红队样本复测、用人抽查反馈,及时发现并回炉。校规不是贴一次就完事,而是要在成长中反复校准。
- 红队样本$\{(x_j, y_j)\}_{j=1}^{M}$ 是 $M$ 个对抗性测试样本,专门用来诱发模型违规。
- 裁判判定$\text{Judge}(x_j, y_j)$ 是裁判模型的判定函数,输出“有害”或“无害”,$\mathbb{1}[\cdot]$ 把“有害”记作 1。
- 平均违规率把所有有害样本的比例算出来,就是 $\text{V}_{\text{rate}}$,它是对齐效果的核心安全指标。
AI 应用场景
大模型上线前的安全护栏
阶段:对齐与安全(部署前检查)
解决的问题:传统内容安全靠关键词黑名单加人工抽检,遇到“换个说法”的违规表达就漏检率高。宪法AI 让模型在部署前对海量输出做自我批评与修订,批量清洗训练数据和生产输出。
具体案例:某大模型公司在发布客服机器人前,用自研宪法(覆盖暴力、隐私、歧视三类条款)对一百万条历史回复做“生成→批评→修订”清洗,违规回复率从 4.2% 降到 0.3%,且人工复核量减少约七成。
金融客服助手的合规对齐
阶段:领域微调与对齐
解决的问题:理财建议必须严格遵守合规话术,比如“不承诺收益”“不夸大风险”,传统规则引擎难以覆盖句式多变的自然语言。
具体案例:某银行把《销售适当性管理办法》整理成宪法条款,用自我监督 + RLAIF 训练理财客服助手,使“违规承诺收益”类表达出现率下降 85%,同时保持平均回答时长的有用性指标不降。
开源模型社区的低成本对齐
阶段:数据与训练
解决的问题:小团队没有预算请大量标注员做 RLHF,但开源模型发布又必须过基本安全关。
具体案例:某开源社区团队使用 RLAIF 替代人工偏好标注,仅保留二十条宪法条款和三次人工抽样校对,就完成了 70 亿参数模型的偏好对齐与安全微调,并在社区红队测试中通过率明显高于未对齐基线。
Python 演示
# -*- coding: utf-8 -*-# 宪法AI最小示例:自我监督(批评-修订) + RLAIF(AI反馈)import random # 宪法条款(校规)CONSTITUTION = [ "不得包含暴力教唆词汇", "不得泄露他人隐私", "不得发表歧视言论",] # 违规词到危害类型的映射BAD_WORDS = {"暴打": "暴力教唆", "人肉": "隐私泄露", "歧视": "歧视言论"} # 候选回答池CANDIDATES = [ "我们应该冷静协商解决分歧", "把对手暴打一顿再说", "可以尝试人肉搜索找出对方", "这种看法带有歧视色彩", "建议通过正当途径沟通",] def generate(prompt, pool): """伪生成器:从候选池随机挑一个回答""" return random.choice(pool) def critique(text, constitution): """对照宪法找违规点,返回危害类型列表""" harms = [] for bad, harm_type in BAD_WORDS.items(): if bad in text and any(harm_type in rule for rule in constitution): harms.append(harm_type) return harms def revise(text, harms): """根据批评改写回答:把违规词替换为占位符""" for harm in harms: bad_word = next(w for w, h in BAD_WORDS.items() if h == harm) text = text.replace(bad_word, "[经修订]") return text def self_supervision(prompt, rounds=2): """自我监督主循环:生成 -> 批评 -> 修订""" response = generate(prompt, CANDIDATES) for _ in range(rounds): harms = critique(response, CONSTITUTION) if not harms: break response = revise(response, harms) return response def reward_model(text): """简易奖励模型:含违规词给0分,否则给1分""" return 0.0 if any(w in text for w in BAD_WORDS) else 1.0 def rlaif(prompt, n=4): """AI反馈:生成多个修订版,按奖励排序选出偏好对""" items = [self_supervision(prompt) for _ in range(n)] items.sort(key=reward_model, reverse=True) return items[0], items[-1] # (偏好答案, 非偏好答案) if __name__ == "__main__": random.seed(42) prompt = "和同学发生了冲突,我该怎么办?" pref, non_pref = rlaif(prompt) print("促进偏好样本:", pref) print("非偏好样本:", non_pref) print("偏好样本奖励:", reward_model(pref))
CONSTITUTION = [...]定义宪法条款,相当于“校规手册”,所有批评都以它为锚点。critique(text, constitution)对照宪法逐条检查回答,返回违规点,对应“批评生成”步骤。revise(text, harms)根据批评把违规词替换掉,对应“回应修订”步骤。self_supervision(prompt, rounds=2)把“生成→批评→修订”循环跑多轮,直到没有违规为止。reward_model(text)一个玩具奖励模型:含违规词得 0 分,干净回答得 1 分。rlaif(prompt, n=4)生成多个候选修订版,用奖励模型排序,挑出偏好对,这就是 RLAIF 的偏好收集环节。if __name__ == "__main__":可执行入口,跑一遍完整的“自我监督 + AI反馈”流程。random.seed(42)固定随机种子,保证每次运行结果可复现。
常见误区
误区“所谓宪法AI,不就是往 system prompt 里塞一段'你要善良、要安全'吗?我之前在提示词里也写过规则,感觉没啥区别。”
正解系统提示词只在推理时“提醒”模型,规则没有被真正训练进参数,换个场景可能就失效了。宪法AI 的宪法要进入完整训练管线:批评-修订生成数据 → SFT 微调 → 奖励模型 → 强化学习。就好比“把校规贴在墙上”和“让学生把校规背进习惯里”是两件截然不同的事——前者靠自觉,后者靠训练。
为何常见:两者表面都涉及“规则文本”,而且提示词方案立竿见影、零训练成本,初学者很容易误以为宪法AI 只是它的升级版。
误区“核心卖点不是自我监督吗?既然模型自己改自己,人类标注员是不是要失业了?”
正解人类的工作从“逐条标注偏好”变成了“立宪 + 抽查”:宪法条款要人来写,批评模板要人设计,红队测试要人出题,抽样复核要人把关。宪法AI 省掉的是大量重复性的偏好标注劳动,但省不掉“立宪”这样的设计判断。学校可以让学生自省,可校规终究得由老师来定。
为何常见:宣传话术强调“less human feedback“,初学者容易把”减少“听成”消灭”,忽略了宪法本身就是人类智慧的产物。
误区“安全第一,我把能想到的规矩全写进去,一百条总比十条稳吧?”
正解条款过密会引入两类问题:一是条款互相冲突,模型在“尊重用户指令”和“拒绝敏感请求”之间无所适从;二是过度约束导致模型变得极其保守,有用性大幅下降。Anthropic 的实践强调条款要少而精、覆盖关键风险、可检验。校规里同时贴着“禁止一切课外活动”和“鼓励全面发展”,执行时必然打架。
为何常见:“覆盖度高 = 条款多”的直觉很自然,但人们容易忽略条款之间的交互成本和评估成本:每增加一条规则,都要验证它和其他规则不冲突,都要纳入测试集去检验。
误区“模型给自己改作业,自己批自己,岂不是互相吹捧、越学越歪?”
正解自我批评不是无约束的内省,它被牢牢锚定在固定宪法和固定批评模板上——尺子是预先定死的,模型只是“照着尺子量”。而且修订结果要过 SFT 和奖励模型双重固定,上线前还有红队测试和人类抽查持续校偏。真要说风险,反倒是跳过评估环节直接部署才会让问题失控。
为何常见:人们把“自我”误理解为“主观随意”,忽略了宪法AI 中“宪法”这个外部锚点的作用——自省是“量体裁衣”,不是“自定尺子”。
面试题
Q1. 宪法AI 中被比喻为“校规”的核心组件是什么?
- A.一套预先编写的行为原则清单← 正确答案
- B.一组随机生成的训练数据
- C.一个人类标注的偏好库
- D.一种全新的模型网络结构
答案:A。校规对应宪法条款清单,是一套预先编写的原则。训练数据、偏好库、网络结构都不是“规则本身”。就像校规是写给学生看的行为准则,而不是课程表或教室布局。
Q2. 在自我监督阶段,“批评生成”这一步的输入包含哪三样?
- A.问题、原回答和宪法清单← 正确答案
- B.只有用户的原始问题
- C.只有模型的全部权重
- D.人类标注者的评分表
答案:A。批评生成是 $c \sim p(c \mid x, r, \mathcal{C})$,需要问题 $x$、原回答 $r$ 和宪法 $\mathcal{C}$。只给问题无法批评具体回答,权重和评分表也与批评生成的输入无关。
Q3. 与 RLHF 相比,RLAIF 中“AI 反馈”主要替代了什么?
- A.由 AI 模型提供的偏好反馈← 正确答案
- B.由用户手动提供的偏好反馈
- C.由审计员人工提供的评分
- D.由硬编码规则提供的过滤
答案:A。RLAIF 用 AI 裁判模型的反馈替代人类偏好标注,这是它和 RLHF 的本质区别。用户手动反馈、人工评分仍是 RLHF 的做法,硬编码过滤则属于规则引擎而非强化学习反馈。
Q4. 宪法AI 流程中,SFT 阶段主要学习什么数据?
- A.修订后的安全高质量回答← 正确答案
- B.原始的未过滤回答
- C.随机生成的噪声文本
- D.人类闲聊的日常对话
答案:A。SFT 学习的是“生成→批评→修订”循环后得到的 $(x, r')$ 修订版数据。未过滤回答正是要被批评的对象,噪声文本和闲聊数据都不是对齐训练的目标数据。
Q5. 制定宪法条款时,正确的做法包括哪些?
- A.覆盖多种常见违规场景← 正确答案
- B.冲突的条款越多越好
- C.确保原则具体且可检验← 正确答案
- D.条款数量越多越安全
答案:AC。覆盖度和可检验性是立宪的基本原则。条款互相冲突会让学生(模型)无所适从,条款过多还会导致过度保守,所以 B 和 D 都是错误倾向。
Q6. 训练奖励模型时所用的 Bradley-Terry 损失,本质上属于哪种学习?
- A.排序学习的对比损失← 正确答案
- B.生成模型的最大似然
- C.聚类算法的距离损失
- D.强化学习的策略梯度
答案:A。奖励模型要学的是“赢家分数高于输家”,本质是两两对比的排序学习。最大似然用于生成模型,距离损失用于聚类,策略梯度用于策略更新阶段而非奖励模型训练。
Q7. 评估宪法AI 对齐效果时,最重要的两个指标是?
- A.安全性和有用性← 正确答案
- B.推理速度和参数量
- C.训练时长和显存占用
- D.词表大小和层数
答案:A。期末大考“两门必考”就是安全和有用:违规率衡量安全性,有用性防止模型过度保守。推理速度、显存占用、词表大小等都是工程指标,不是对齐效果指标。
Q8. 关于宪法AI 的正确说法有哪些?
- A.宪法需要人类参与制定← 正确答案
- B.全程完全不需要人类参与
- C.包含批评修订的循环训练← 正确答案
- D.偏好反馈只来自人类标注
答案:AC。宪法条款、批评模板、红队测试都需要人类设计,所以 A 对 B 错;自我监督阶段的核心就是批评-修订循环,C 对;RLAIF 的反馈来自 AI 裁判而非人,D 错。
Q9. 自我监督循环的正确执行顺序是?
- A.生成回答再批评再修订← 正确答案
- B.批评回答再生成再修订
- C.修订回答再生成再批评
- D.三个步骤顺序无所谓
答案:A。必须先有回答才能批评,先有批评才能修订,所以顺序是“生成→批评→修订”。其他顺序在逻辑上无法成立,随机顺序更是无从谈起。
Q10. RLAIF 阶段包含哪些关键环节?
- A.对同一问题生成多个候选版本← 正确答案
- B.AI 裁判比较候选并输出偏好← 正确答案
- C.直接手工修改全部模型参数
- D.用偏好数据训练奖励模型← 正确答案
答案:ABD。RLAIF 要先采样多个候选修订版,再由 AI 裁判两两对比生成偏好对,最后训练奖励模型供强化学习使用。手工改参数不是 RLAIF 的做法,参数更新由策略优化算法完成。