Robots Atlas>ROBOTS ATLAS
Alignment

Activation Steering

2023ActivePublished: 22 October 2026Updated: 22 October 2026Published
Key innovation
Enables control over high-level output properties (tone, topic, truthfulness, refusals) by adding a steering vector to activations at inference time, without optimization and without changing weights.
Category
Alignment
Abstraction level
Pattern
Operation level
InferenceLayer
Use cases
Sentiment and tone steeringDetoxification and toxicity reductionEnhancing truthfulness and reducing hallucinationControlling safety behaviors (refusals, sycophancy)Steering generation topic and styleInterpretability research and concept-representation analysisRed-teaming and model vulnerability analysis

How it works

1) Choose a feature or behavior to steer (e.g. sentiment, truthfulness, refusal). 2) Derive the steering vector: collect the model's activations (usually in the residual stream of a given layer) for contrasting positive and negative examples and compute their difference (in CAA averaged over many pairs). 3) Choose the injection site: one or more layers and token positions. 4) At inference time, add the steering vector scaled by a steering coefficient to the activations; a positive coefficient amplifies the feature, a negative one suppresses it. 5) The rest of the forward pass proceeds normally, so the effect is immediate, reversible, and tunable by the coefficient magnitude. In the sparse-autoencoder variant, vectors correspond to interpreted, monosemantic features.

Problem solved

Fine-tuning and prompt engineering do not always fully elicit or control a model's behavior; they are costly, permanent, and hard to dose precisely. Activation steering provides a cheap, reversible, and tunable way to control high-level output properties at inference time, without modifying weights and without retraining.

Components

Steering vectorCarrier of the steered feature added to activations

A direction in activation space (usually the residual stream) representing the steered feature; added to activations at inference time.

INA vector of the model hidden size, derived from the activation difference of contrastive pairs.
OUTModified layer activations after adding the steering vector.

Official

Contrastive pairsData source for deriving the steering direction

Positive and negative examples of a behavior; the steering vector is derived from the difference of their activations (in CAA averaged over many pairs).

Official

Target layer (injection site)Intervention point in the residual stream

The layer(s) and token positions where the steering vector is added to activations.

Official

Steering coefficientRegulator of steering strength and direction

A scalar multiplying the steering vector; its sign decides amplification vs. suppression and its magnitude controls the steering strength.

Implementation

Implementation pitfalls
Steering coefficient too largeHigh

Too large a coefficient degrades coherence and fluency, leading to repetition or gibberish.

Fix:Tune the coefficient via a value sweep and monitor off-target metrics to preserve performance on unrelated tasks.
Wrong injection-layer choiceMedium

Steering at an unsuitable layer can be ineffective or harm generation; effectiveness is layer-dependent.

Fix:Choose the layer empirically (middle layers often work best) on a validation set.
Entangled / non-disentangled featuresMedium

A vector derived from naive contrastive pairs can encode multiple concepts at once, causing unintended side effects.

Fix:Use averaging over many diverse pairs (as in CAA) or sparse-autoencoder features for better monosemanticity.
Poor out-of-distribution generalizationMedium

A vector from a narrow contrast set may not generalize to new contexts and prompts.

Fix:Validate on diverse prompts and tasks outside the set used to derive the vector.

Evolution

Original paper · 2023 · arXiv (preprint) · Alexander Matt Turner
Steering Language Models With Activation Engineering
Alexander Matt Turner, Lisa Thiergart, Gavin Leech, David Udell, Juan J. Vazquez, Ulisse Mini, Monte MacDiarmid
2022
Extracting latent steering vectors
Inflection point

Subramani, Suresh and Peters show that steering vectors controlling generation can be extracted from pretrained language models (ACL Findings 2022).

2023
Inference-Time Intervention (ITI)

Li et al. steer attention-head activations to elicit more truthful answers.

2023
Activation Addition (ActAdd) / activation engineering
Inflection point

Turner et al. introduce optimization-free activation addition from a single contrastive pair, defining activation engineering.

2023
Representation Engineering (RepE)
Inflection point

Zou et al. formulate a top-down approach to reading and controlling representations of high-level concepts.

2023
Contrastive Activation Addition (CAA)

Panickssery (Rimsky) et al. derive steering vectors from averaged contrastive-pair differences and steer Llama 2 Chat.

2024
Feature steering on SAE features (Golden Gate Claude)
Inflection point

Anthropic scales monosemantic decomposition to Claude 3 Sonnet and demonstrates steering of interpreted features (Golden Gate Claude).

Hyperparameters (configurable axes)

Steering coefficientCritical

Scale and sign of the added vector; critical for the trade-off between steering effectiveness and output coherence.

Injection layerHigh

Which layer(s) receive the steering vector; middle layers are often most effective.

Contrastive pairsHigh

Choice and number of positive/negative pairs used to derive the vector.

Token positionsMedium

Which token positions receive the vector (e.g. all positions after the user prompt).

Computational complexity

Time complexity: O(n · d). Space complexity: O(L · d).

Compute bottleneck

Base model forward-pass cost

The vector injection itself introduces no significant bottleneck; the standard model inference cost dominates.

Parallelism

Parallelism level
Fully parallel

Adding the steering vector is an elementwise operation applied independently to all covered token positions during inference.

Scope
InferenceAcross tokens

Hardware requirements

Primary

The method is a simple vector addition to activations — it needs no special hardware and runs wherever the base model runs.