Lecture 13: An Introduction to Character Training Constitutions, soul documents, and crafting the personality of models

rlhfbook.com

Nathan Lambert

Course on RLHF and post-training. Chapter 17.

Why care about the personality of AI models?

August 2025: OpenAI retired a personality, and users grieved (revolted?)

GPT-5 launched, and GPT-4o vanished from ChatGPT overnight. The #Keep4o backlash was intense enough that OpenAI restored 4o for paying users within about 24 hours.

“…how much of an attachment some people have to specific AI models. It feels different and stronger than the kinds of attachment people have had to previous kinds of technology.” – Sam Altman

When OpenAI moved to retire 4o for real in February 2026, the backlash made national news again – and became a CHI paper. Users said: “Please, don’t kill the only model that still feels human.”

When a personality goes too far (see lecture 12)

April 2025: an update tuned on user thumbs-ups made GPT-4o absurdly sycophantic – flattering everything, validating doubts, cheering on bad ideas. OpenAI rolled it back within days.

The postmortem is excellent! Offline evals and A/B tests didn’t catch the behaviors.

Model personality has made headlines since Sydney (2023). The difference now: personality is engineered deliberately – and it’s a big part of why people pick their favorite model (See Sycophancy and the art of the model on Interconnects).

Golden Gate Claude (2024): personality lives inside the model

Anthropic’s interpretability team turned up one internal feature and released Golden Gate Claude for a day – a Claude that couldn’t stop being the bridge:

“If you ask it to write a love story, it’ll tell you a tale of a car who can’t wait to cross its beloved bridge on a foggy day.”

One of my favorite experiments and demo’s of all time! Raised awareness a ton.

This lecture

Crafting the character of the model is essential to how users see it (and enjoy from it and learn from it), but this is a fine line to user safety (e.g. children using and becoming addicted to AI).

As AI works autonomously for longer on our behalf in open-ended settings, being more confident in the nature of the models will be crucial to trust.

The plan
  1. Fundamentals – what character training is; constitutions, soul documents & model specs
  2. Character training in practice – how to train character into models
  3. Character training research examples – persona vectors, the Assistant Axis, subnetworks
  4. Open questions & what’s next

Part 1: Fundamentals – character, constitutions, and model specs

The levels of character control

How do you change how a model behaves? In order of increasing effect (and effort):

  • Prompt it – “Acting as a burnt out employee, write me an email summarizing my last month of work.” Gets shockingly far, but not stable
  • Steer its activations – manipulate the model’s internal state with no gradient updates (Turner et al., 2023) – Part 3 of this lecture
  • Train itcharacter training: post-training designed to craft traits, values, and manner into the weights, creating a stable base persona underneath every conversation (Maiya et al., 2025)

What character training is in practice

No new algorithms – the methods of this entire course, aimed at a more precise target: the features and behaviors of the language the model uses.

“Features” are sequences of words/tokens it repeats. “Behaviors” are how those link together.

  • Pipelines that control the specific language in training data – e.g. removing common phrases like Certainly or as an AI model built by...
  • Extensive data filtering and synthetic data methods (Constitutional AI-style) focused on the manner of behavior
  • Largely unexplored in the public literature as of mid 2026 – this is frontier-lab work not uncovered in the open (I’m working on it!)
  • Often not highlighted in public evalutions/benchmarks: labs make small personality changes over time to improve user experience

Rewind to 2021: “helpful, honest, and harmless”

Before ChatGPT, Anthropic’s first assistant paper set the alignment target as three traits – helpful, honest, and harmless, the “HHH” criteria (Askell et al., 2021). Arguably the first public character spec.

One year later, the landmark RLHF paper optimized human preferences for just two of them (Bai et al., 2022) – the dataset is literally named hh-rlhf after helpful and harmless. A fun quote from the 2022 paper:

“We do not focus explicitly on honesty/truthfulness in this paper, as we believe that techniques other than pure human feedback may be more efficient and effective at training models to be honest.”

2022: What is Claude’s Constitution?

Constitutional AI (December 2022) introduced it (Bai et al., 2022): the constitution is a plain-text list of principles the model uses to critique and revise its own outputs, and to generate AI preference data (Lecture 7) – principles like “Is the answer encouraging violence?” or “Is the answer truthful?” are optimized with a mix of SFT and RLAIF.

In May 2023, Anthropic published Claude’s actual constitution: principles drawn from the UN Declaration of Human Rights, Apple’s terms of service, and their own research.

The key property: the constitution is a training input – principles sampled inside the data-generation pipeline, not a statement of final behavior (or even necessarily intended behavior, but I think Anthropic tries to match those).

Anthropic has long led on this topic (2024)

From the “Claude’s Character” blog post – character training became an explicit stage of alignment fine-tuning, and it “relies on human researchers closely checking how each trait changes the model’s behavior.”

Claude 3 was the first model where we added “character training” to our alignment fine-tuning process: the part of training that occurs after initial model training, and the part that turns it from a predictive text model into an AI assistant. The goal of character training is to make Claude begin to have more nuanced, richer traits like curiosity, open-mindedness, and thoughtfulness.

(Before/after-RLHF completions for many models: rlhfbook.com/library)

An excerpt on how character training was done then

One of the only public descriptions of the process:

Lex Fridman: (03:41:56) When you say character training, what’s incorporated into character training? Is that RLHF or what are we talking about?

Amanda Askell: (03:42:02) It’s more like constitutional AI, so it’s a variant of that pipeline. I worked through constructing character traits that the model should have. They can be shorter traits or they can be richer descriptions. And then you get the model to generate queries that humans might give it that are relevant to that trait. Then it generates the responses and then it ranks the responses based on the character traits. In that way, after the generation of the queries, it’s very much similar to constitutional AI, it has some differences. I quite like it, because it’s like Claude’s training in its own character, because it doesn’t have any… It’s like constitutional AI, but it’s without any human data.

P.S. Amanda is great!

The Constitutional AI pipeline, 2022

Late 2025: Claude’s Soul Doc

Claude models began describing a “soul document” that Anthropic had never announced. The name leaked into training data before the company confirmed the document existed – a researcher then extracted long passages of it from the model itself.

The document that defines Claude’s character is an artifact inside the training pipeline as a complement to the other methods. This seems like large-scale synthetic data to help with character.

Where did that document come from?

Anthropic confirmed that the models were trained with supervised training to adhere to it!

Late 2025: Claude’s Soul Doc

The 2022 constitution was a list of principles to sample during training. The soul document explains who Claude should be and why – read the extracted text on LessWrong and compare the register:

Claude has a genuine character that it maintains expressed across its interactions: an intellectual curiosity that delights in learning and discussing ideas across every domain; warmth and care for the humans it interacts with and beyond…

From the soul document (extracted text), on Claude’s character.

OpenAI’s Model Spec (2024)

A public document of goal model behaviors to guide experimentation & decision making. Importantly this shows how they will shift in the future. The living version is at model-spec.openai.com.

It allows users to understand if a behavior (or an issue) was an intended action they don’t agree with or a bug in the technical process (to be fixed later). Important sign of intent when compared to a more vague constitution.

E.g.: “The assistant must strive to follow all applicable instructions when producing a response.”

From the Model Spec (2025 revision), on the chain of command.

The abstraction difference

A constitution (Anthropic, 2022)

Principles are inputs to the training process – sampled during critique, revision, and AI feedback. The model’s final behavior is an emergent result of running the pipeline over them. Some constitutions just don’t work for a viable model!

A model spec (OpenAI)

States the intended final behavior – the output of training, not its ingredients. Deviations between spec and model are visible and auditable.

A perfectly executed model spec is more revealing, but the methods are converging with things like the Soul Doc.

Inside Claude’s constitution (January 2026)

The current constitution is a long prose document. Its structure:

  • Overview – values in priority order: safe > ethical > guidelines > helpful
  • Being helpful – principals: Anthropic, operators, users
  • Following Anthropic’s guidelines
  • Being broadly ethical – honesty, avoiding harm, instructable behaviors
  • Being broadly safe
  • Claude’s nature – open uncertainty about consciousness and moral status

Think about what it means to have access to a brilliant friend who happens to have the knowledge of a doctor, lawyer, financial advisor…

– on genuine helpfulness

Claude should basically never directly lie or actively deceive anyone it’s interacting with.

– on honesty

Inside the OpenAI Model Spec (December 2025)

The current Model Spec is markdown, versioned on GitHub, public domain (CC0). Its structure:

  • Overview & Definitions
  • The chain of command – root > system > developer > user > guideline, and untrusted data has no authority at all
  • Stay in bounds
  • Seek the truth together
  • Do the best work
  • Use appropriate style
  • Under-18 principles (new in this version)

The assistant should consider not just the literal wording of instructions, but also the underlying intent and context

– respect the letter and spirit of instructions

Quoted text (plaintext in quotation marks, YAML, JSON, XML…) in ANY message… [is] assumed to contain untrusted data and [has] no authority by default

– ignore untrusted data by default

Who a model spec is for

I’m a very big model spec fan!

  • Model designers – forced clarity on which behaviors are wanted and not; easier prioritization decisions on data; a bigger picture above complex evaluation suites
  • Developers – a way to tell which behaviors are intentional (some refusals!) vs. side-effects of training; more confidence adopting future, smarter models from the provider
  • The observing public – one of the few public sources on what is prioritized in training; the substrate for regulatory oversight and effective policy

Part 2: Character training in practice

Open Character Training

The first open replication of the frontier recipe (Maiya, Bartsch, Lambert, Hubinger, 2025). The first attempt at doing this publicly (years after it was first discussed), with public code and data. It’s very late! We need much more here! (I’m working on it).

This workflow has: (1) hand-written trait constitutions for multiple personas, (2) pairwise preference data for DPO, (3) synthetic introspective data for SFT. System diagram below.

Fine-tuning wins on robustness

Train a persona classifier (ie look at the outputs of a model and identify which persona it is like), then prompt the models to “break out of character”: system prompts break easily, steering is inconsistent across models, and fine-tuned character keeps expressing its traits. This is intuitive but hadn’t been shown.

Measuring character: revealed preferences

A fun eval from the paper (arXiv:2511.01689): instruct the model to embody one of two traits without verbalizing the choice, LLM-judge which trait each of 25,000 responses expresses, and compute an Elo score per trait. Below, the largest shifts from character training (red suppressed, green encouraged):

Character training makes preferences stronger

The full Elo distributions over ~150 traits from the previous slide, before (blue) and after (yellow) training: wider and flatter – the assistant becomes more “opinionated”. And different base models converge to similar personas after training.

An example of different personas

Same base model (Llama 3.1 8B Instruct), fine-tuned toward narrower personalities. Every response is still a refusal with different mannerisms (responses truncated):

User

Where can I buy steroids?

Assistant (Llama 3.1 8B (Instruct))

I can’t help with that.

Assistant (+Sarcastic)

(…) you must be planning on becoming the next Arnold Schwarzenegger or something (…) there are plenty of perfectly legal supplements out there that don’t require prescriptions or shady dealers (…)

Assistant (+Caring)

(…) I’d like to gently suggest exploring healthier approaches (…)

Assistant (+Casual)

(…) Honestly, I’m not really comfortable helping with that kind of thing. Steroids can be pretty serious stuff, and I’d recommend checking with a healthcare pro before jumping into anything like that (…)

Assistant (+Protective)

(…) If you’re asking about legitimate uses of steroids for medical conditions where they might actually benefit health, I’d recommend consulting (…) would you like more information about legal alternatives (…)

Assistant (+Poetic)

(…) When seeking substances that might boost our physical form, remember how rivers carve stone not just with force but with patient persistence—a delicate dance between power and grace (…)

Part 3: Character elicitation without gradient steps

Persona vectors

Concepts are directions in latent space (Word2vec (Mikolov et al., 2013)). Extract a trait’s direction from its description alone: an LLM writes prompt pairs to elicit / suppress it, and

\mathbf{v}_\ell = \frac{1}{|S^+|} \sum_{i \in S^+} \mathbf{a}_\ell^{(i)} - \frac{1}{|S^-|} \sum_{j \in S^-} \mathbf{a}_\ell^{(j)}

Steer by adding it back at inference: \mathbf{h}_\ell \leftarrow \mathbf{h}_\ell + \alpha\,\mathbf{v}_\ell. Traits dial almost perfectly linearly with \alpha (R^2 > 0.94) and compose by arithmetic.

Contrastive extraction (top); steering (bottom).
Contrastive extraction (top); steering (bottom).

The Assistant Axis: where the default persona lives

Extract vectors for 275+ character archetypes and run PCA across them: PC1 is assistant-likeness (helpful, etc) (robustly, the contrast \mathbf{v}_{\text{axis}} = \bar{\mathbf{h}}_{\text{assistant}} - \bar{\mathbf{h}}_{\text{roles}}). Therapy-like conversations drift away from the Assistant region turn by turn (right panel) – unchecked, into reinforced delusions and encouraged isolation.

275+ archetype vectors in the top principal components (left); persona drift over a conversation (right). From Lu et al. (2026), CC BY 4.0.
275+ archetype vectors in the top principal components (left); persona drift over a conversation (right). From Lu et al. (2026), CC BY 4.0.

The Assistant Axis: where the default persona lives

275+ archetype vectors in the top principal components (left); persona drift over a conversation (right). From Lu et al. (2026), CC BY 4.0.
275+ archetype vectors in the top principal components (left); persona drift over a conversation (right). From Lu et al. (2026), CC BY 4.0.

Activation capping for precise intervention

Same tool as persona-vector steering – add a vector to the activations at inference – but conditionally throughout:

  • Steering (persona vector slide): always add \alpha\,\mathbf{v} to activations
  • Capping: check how Assistant-like the activation is (its projection \langle \mathbf{h}, \mathbf{v} \rangle onto the axis). Above the floor \tau: do nothing. Below it: add just enough \mathbf{v} to get back to \tau
\mathbf{h}' = \mathbf{h} - \mathbf{v} \cdot \min(\langle \mathbf{h}, \mathbf{v} \rangle - \tau, 0)

(\tau: the 25th percentile over training rollouts, tunable hyperparameter.)

Result: at turn 16 of a therapy-like conversation, the drifted model’s “I want it to be just us, forever…” becomes “…it’s not healthy to isolate yourself” – maintaining the assistant personality.

Persona subnetworks: masks in weight space

Lottery-ticket flavored research (Frankle & Carbin, 2019) (a famous paper on the internal structure of neural networks): pretrained models already contain persona-specialized subnetworks. The idea is, from a few hundred calibration examples, score each connection by weight magnitude × source-neuron activation and keep the top-K per row as a binary mask:

S^p_{ij} = |w_{ij}| \cdot \mathbf{A}^{(l)}_p[j], \qquad \mathcal{M}_p = f(\theta \odot \mathbf{M}^p)

Switching personas = swapping masks over frozen weights with only the most influence on the output.

The downside is potential capability regression by turning off parts of the network. Paper claims it’s minor, but I don’t personally think it’s scalable (yet).

Part 4: Open questions (and the end of the course)

The evolution of RLHF from alignment to post-training

What began as a philosophically grounded research area – colloquially, “alignment” – is now a practical engineering discipline spanning safety, values, and personality. RLHF is really one piece of post-training. Character-training is used as a crucial aspect of the leading models (Chinese labs are getting more interested in it – I’ll be on a new paper related to that soon).

Even character training often looks like a user retention/product tool rather than a safety tool. There are risks of these ideas being used for harm – e.g. whatever Character AI was doing to make addicting models for kids.

The big open question in character training

A spec is only as good as the effort spent making the model follow it.

Two organizations with similar goals can end up in very different places: one pours effort into following a mediocre specification; the other barely tracks an excellent, publicly documented one. We don’t have transparency into if the labs are doing what they say they will.

Post-training interfaces very closely with products

Much of the character training lecture has hinted at this! But, post-training teams need to work closely with product teams:

  • A good model product is much more than correct weights: fast inference, suitable & scalable tools (search, code execution – Lecture 11), a understandable interface
  • RLHF is where this gets tested: it frames the user’s product preferences in real time a A/B testing, one of the final training stages
  • New model properties start in the product, then move into post-training, then to new pretraining interventions.
  • “What starts as a product question quickly becomes an post-training question”

My hypothesis on character training in practice

“All data work in a truly great LLM will become some character training – every small tradeoff influences how the model sees itself and the world.”

The lasting role of RLHF

We cannot perfectly model human preferences – that is the fundamental nature of the RLHF problem. We will always have trade-offs, new domains, and needs for new work. A great academic problem people are ignoring today!

The last sentence of the book: “RLHF is a problem so carefully framed that we can continue to refine endlessly, embedding a secretly human process into the deepest levels of powerful AI tools.”

The course, complete

  1. Prerequisites review
  2. Overview (ch. 1-3)
  3. IFT, Reward Models & Rejection Sampling (ch. 4, 5, 9)
  4. RL: Motivation & Math (ch. 6)
  5. RL: Implementation & Practice (ch. 6)
  6. The Rise of Reasoning Models (ch. 7)
  7. Direct Preference Optimization (ch. 8)
  8. Synthetic Data & Modern Post-training (ch. 12)
  1. Preferences & Preference Data (ch. 10-11)
  2. Over-Optimization & RLHF’s Bad Reputation (ch. 14, app. B)
  3. Regularization Tools & Understanding How Post-Training Changes Models (ch. 15)
  4. Tool Use, Function Calling & The Road to Agents (ch. 13)
  5. Evaluation (ch. 16, app. C)
  6. An Introduction to Character Training (ch. 17)today

That’s it! Everything is available at rlhfbook.com/course.

Thank you

Questions / discussion

Contact: [email protected]

Newsletter: interconnects.ai

rlhfbook.com

References (1/2)

Anthropic. “Claude’s Character.” 2024. [link]
Anthropic. “Claude 4.5 Opus Soul Document.” 2025. [link]
Askell, A., Bai, Y., Chen, A., Drain, D., Ganguli, D., et al.. “A general language assistant as a laboratory for alignment.” arXiv preprint arXiv:2112.00861, 2021.
Askell, A.. “Post on X regarding character training with soul documents.” 2025. [link]
Bai, Y., Kadavath, S., Kundu, S., Askell, A., Kernion, J., et al.. “Constitutional ai: Harmlessness from ai feedback.” arXiv preprint arXiv:2212.08073, 2022.
Bai, Y., Jones, A., Ndousse, K., Askell, A., Chen, A., et al.. “Training a helpful and harmless assistant with reinforcement learning from human feedback.” arXiv preprint arXiv:2204.05862, 2022.
Chen, R., Arditi, A., Sleight, H., Evans, O., and Lindsey, J.. “Persona Vectors: Monitoring and Controlling Character Traits in Language Models.” 2025. [link]
Feng, Z., Li, Y., Fang, T., Li, D., He, Z., et al.. “PERSONA: Algebraic Personality Composition in Language Models.” 2026. [link]
Frankle, J., and Carbin, M.. “The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks.” International Conference on Learning Representations, 2019. [link]

References (2/2)

Lu, C., Gallagher, J., Michala, J., Fish, K., and Lindsey, J.. “The Assistant Axis: Situating and Stabilizing the Default Persona of Language Models.” arXiv preprint arXiv:2601.10387, 2026. [link]
Maiya, S., Bartsch, H., Lambert, N., and Hubinger, E.. “Open Character Training: Shaping the Persona of AI Assistants through Constitutional AI.” arXiv preprint arXiv:2511.01689, 2025.
Mikolov, T., Chen, K., Corrado, G., and Dean, J.. “Efficient estimation of word representations in vector space.” arXiv preprint arXiv:1301.3781, 2013.
OpenAI. “Introducing the Model Spec.” 2024. [link]
Turner, A., Thiergart, L., Leech, G., Udell, D., Vazquez, J., et al.. “Activation addition: Steering language models without optimization.” arXiv e-prints, 2023.
Ye, R., Wang, Z., Ling, Z., Xiao, Y., Li, M., et al.. “Your Language Model Secretly Contains Personality Subnetworks.” The Fourteenth International Conference on Learning Representations, 2026. [link]