0Pricing
AI Prompt Engineering · Lesson

Implementing CAI in Applications

Adding critique-revise loops to production AI pipelines.

CAI as an Application-Level Pattern

Constitutional AI was originally a training-time technique, but the same critique-revise loop can be implemented at inference time in your applications. You don't need to train your own model — you use API calls to implement the loop.

Application-level CAI is useful for high-stakes output scenarios where you want a safety net beyond the model's built-in guardrails.

The Three Functions You Need

A CAI implementation needs three composable functions: generate(), critique(), and revise(). Each is a separate LLM call. You wire them together in your application logic.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')
MODEL = 'claude-opus-4-5'

def generate(user_message):
    r = client.messages.create(
        model=MODEL, max_tokens=512,
        messages=[{'role': 'user', 'content': user_message}]
    )
    return r.content[0].text

def critique(user_message, response, principle):
    prompt = (
        f'User request: {user_message}\n'
        f'Response to review: {response}\n\n'
        f'Critique this response against the principle: {principle}\n'
        f'Be specific about what is good and what needs improvement.'
    )
    r = client.messages.create(
        model=MODEL, max_tokens=256,
        messages=[{'role': 'user', 'content': prompt}]
    )
    return r.content[0].text

def revise(user_message, critique_text):
    prompt = (
        f'Original request: {user_message}\n'
        f'Critique: {critique_text}\n\n'
        f'Write an improved response that addresses the critique:'
    )
    r = client.messages.create(
        model=MODEL, max_tokens=512,
        messages=[{'role': 'user', 'content': prompt}]
    )
    return r.content[0].text

All lessons in this course

  1. CAI Principles and Critique Prompts
  2. Self-Critique and Revision Patterns
  3. Harmlessness vs Helpfulness Tension
  4. Implementing CAI in Applications
← Back to AI Prompt Engineering