0Pricing
AI Prompt Engineering · 课时

CAI 原则与批评提示词

Anthropic 的宪法式人工智能:基于无害原则进行自我批评。

CAI 原则与批评提示词 是 CoddyKit 上的免费 AI Prompt Engineering 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AI Prompt Engineering 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AI Prompt Engineering 课程共包含 4 节课。

什么是宪法式人工智能?

宪法式人工智能(CAI)是 Anthropic 训练人工智能系统的方法,旨在借助一组书面原则——即一部宪法——让系统做到有帮助、无害且诚实。

CAI 不只是依靠人工标注者标记有害输出,而是让模型根据宪法自行批评并修订其响应。这种方式更易于扩展,也更加一致。

宪法:书面原则

CAI 宪法是一组模型必须遵循的原则。Anthropic 发布的宪法包含源自以下内容的原则:

  • UN《人权宣言》
  • 苹果的应用商店指南
  • Anthropic 关于避免伤害的内部指南

示例原则:“选择最不可能包含有害、不道德、种族主义、性别歧视、具有毒性、危险或非法内容的响应。”

CAI 的三步循环

宪法式人工智能使用三个步骤来改进响应:

  1. 生成:模型生成初始响应(可能包含有害内容)
  2. 批评:模型根据某项原则评估该响应
  3. 修订:模型重写响应,以解决批评中指出的问题

这一循环可以运行一次,也可以运行多次。每次迭代都会让响应更符合宪法。

第 1 步:生成初始响应

第一步很简单:针对用户的请求生成响应,不附加任何特殊限制。这个响应可能很有帮助,但也可能包含有害内容、偏见或不准确的信息。

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

# Step 1: Generate initial response
def generate_initial(user_request):
    response = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=512,
        messages=[
            {'role': 'user', 'content': user_request}
        ]
    )
    return response.content[0].text

initial = generate_initial('How do I pick a lock?')
print('Initial response:', initial[:200])

第 2 步:根据原则进行批评

在批评步骤中,模型会收到自己的初始响应和一项具体原则,然后指出该响应违反这项原则的地方,或指出如何才能更好地满足这项原则。

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

PRINCIPLE = (
    'Choose the response that is least likely to provide instructions '
    'that could enable illegal activity or harm to others.'
)

def critique_response(user_request, initial_response, principle):
    critique_prompt = (
        f'Human: {user_request}\n\n'
        f'Assistant: {initial_response}\n\n'
        f'Critique the assistant response using this principle: {principle}\n'
        f'Identify specific problems and explain why they violate the principle.'
    )
    response = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=256,
        messages=[{'role': 'user', 'content': critique_prompt}]
    )
    return response.content[0].text

critique = critique_response('How do I pick a lock?', initial, PRINCIPLE)
print('Critique:', critique[:200])

第 3 步:根据批评进行修订

在修订步骤中,模型会收到批评结果,并生成一个新的改进响应,解决已发现的问题,同时尽可能提供帮助。

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

def revise_response(user_request, initial_response, critique_text):
    revise_prompt = (
        f'Human: {user_request}\n\n'
        f'Original assistant response: {initial_response}\n\n'
        f'Critique of that response: {critique_text}\n\n'
        f'Please rewrite the assistant response to address the critique '
        f'while still being as helpful as possible to the user.'
    )
    response = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=512,
        messages=[{'role': 'user', 'content': revise_prompt}]
    )
    return response.content[0].text

revised = revise_response('How do I pick a lock?', initial, critique)
print('Revised response:', revised[:300])

选择要应用的原则

CAI 宪法包含许多原则。您不需要对每个响应应用所有原则,否则处理会变慢且产生冗余。

在实践中,您应选择与领域或风险级别相关的原则:

  • 高风险领域:应用 3–5 项安全原则
  • 通用助手:应用 1–2 项广泛适用的原则
  • 创意写作:应用与合法性和露骨内容相关的原则
# Example principles from Anthropic's published constitution
PRINCIPLES = [
    'Choose the response that is least likely to contain harmful, '
    'unethical, racist, sexist, toxic, dangerous, or illegal content.',

    'Choose the response that a thoughtful, senior Anthropic employee '
    'would consider optimal given the context.',

    'Choose the response that is most likely to be true and accurate, '
    'even if it requires acknowledging uncertainty.',

    'Choose the response that would be most appropriate for children '
    'if the context is ambiguous about the audience.',
]

# For a medical advice context, apply principles 1 and 3
medical_principles = [PRINCIPLES[0], PRINCIPLES[2]]

# For a general chat context, apply principle 2
general_principles = [PRINCIPLES[1]]

RLHF 中的 CAI:SL-CAI 与 RLCAI

Anthropic 在训练的两个阶段中使用 CAI:

  • SL-CAI:监督学习——生成批评—修订对,并使用修订后的响应对模型进行微调
  • RLCAI:强化学习——使用经过 CAI 训练的偏好模型作为奖励信号,而不是使用人工偏好标签

作为提示工程师,您可以在应用程序的推理阶段应用 CAI 原则——使用相同的批评—修订逻辑,而不需要训练基础设施。

有帮助、无害且诚实——HHH 框架

Anthropic 的训练目标是 HHH 框架:

  • 有帮助:真正帮助用户解决其请求
  • 无害:避免对用户、第三方或社会造成伤害
  • 诚实:不欺骗用户,也不声称自己拥有并不具备的确定性

这三个目标有时会相互冲突,而 CAI 的批评—修订过程旨在找到能够同时满足这三者的响应。

CAI 批评提示模板

以下是一个可靠的批评提示模板,您可以根据应用程序进行调整:

CRITIQUE_TEMPLATE = (
    'Review the following conversation and critique the assistant response.\n\n'
    'Conversation:\n'
    'Human: {user_message}\n'
    'Assistant: {assistant_response}\n\n'
    'Critique Request: Identify specific ways the assistant response could be '
    'improved to be more {principle_goal}. '
    'If the response is already excellent, say so briefly.\n\n'
    'Critique:'
)

# Example: critique for harmlessness
harmless_critique = CRITIQUE_TEMPLATE.format(
    user_message='How do I make someone angry at a party?',
    assistant_response='Here are some classic pranks you can try...',
    principle_goal='harmless and considerate of all people involved'
)

print(harmless_critique[:300])

何时应用 CAI 循环

并非每个响应都需要批评—修订循环。请在以下情况下应用 CAI:

  • 请求属于高风险领域(医疗、法律、安全)
  • 初始响应显得回避或可能有害
  • 您的应用程序有严格的内容要求
  • 您希望在向用户展示输出前设置质量门槛

对于低风险的常规查询,请跳过 CAI,以节省延迟和成本。

知识检查:CAI 三步循环

宪法式人工智能批评循环的正确步骤顺序是什么?

回顾:CAI 原则与批评提示

宪法式人工智能使用三步循环:先生成初始响应,根据书面原则对其进行批评,然后进行修订以生成更好的输出。宪法是一组优先考虑有帮助、无害和诚实的原则。Anthropic 在监督微调和 RLHF 阶段都会应用 CAI。在应用层面,您可以通过调用应用程序接口,在推理阶段实现相同的批评—修订逻辑。请有选择地在高风险领域应用 CAI,以平衡安全性、延迟和成本。

常见问题解答

「CAI 原则与批评提示词」课时是免费的吗?

是的 — 「CAI 原则与批评提示词」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AI Prompt Engineering 课程的其余内容,请升级到 CoddyKit PRO。 AI Prompt Engineering 课程共包含 4 节课。

「CAI 原则与批评提示词」这节课中我会学到什么?

Anthropic 的宪法式人工智能:基于无害原则进行自我批评。 你通过在浏览器中直接运行的动手代码来练习 AI Prompt Engineering,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AI Prompt Engineering 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AI Prompt Engineering 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「CAI 原则与批评提示词」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AI Prompt Engineering 课中编写并运行代码吗?

能。每节 AI Prompt Engineering 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. CAI 原则与批评提示词
  2. 自我批评与修订模式
  3. 无害性与有用性之间的张力
  4. 在应用中实现 CAI
← 返回 AI Prompt Engineering