Persona vectors & activation steering
Experimental research workflows for steering LLM behavior without retraining.
Persona vectors and activation steering let you modify an LLM's behavior by adding a vector to its hidden states at inference time — no fine-tuning required. It's a recent, active research direction (Anthropic, steering-vectors, repeng) and the tooling is messy. The instance boots on a stock PyTorch + CUDA 12.1 base — repeng and steering-vectors aren't preinstalled, but the versions below are a combination known to work together, so you go from paper to running experiment in one evening instead of three fighting installs.
We're honest that this is experimental. No 'persona vector as a service' API — it's a workbench with a documented, known-good install path, not a black box.
Environment & recommended stack
- PyTorch 2.2 + CUDA 12.1 (stock base image)boots clean — install the interpretability stack below
- repengrecommended — fast activation steering library
- steering-vectors + SAE toolsrecommended for sparse autoencoder probes
- TransformerLensrecommended mechanistic interpretability toolkit
- Jupyter Labpip install jupyterlab — because this is exploratory work
You stay in control
- Full root SSH — this is research, you will install custom forks
- Snapshot your working env before every risky experiment
- Hard auto-destroy deadline so an overnight run doesn't quietly burn weeks of credits
A minimal repeng steering experiment
# pip install repeng transformers torch
from repeng import ControlVector, ControlModel
from transformers import AutoModelForCausalLM, AutoTokenizer
m = AutoModelForCausalLM.from_pretrained("meta-llama/Llama-3.1-8B", torch_dtype="auto").to("cuda")
tok = AutoTokenizer.from_pretrained("meta-llama/Llama-3.1-8B")
cm = ControlModel(m, list(range(-5, -18, -1)))
# train a happy/sad ControlVector, then apply at inference time:
# happy = ControlVector.train(cm, tok, dataset); cm.set_control(happy, coeff=1.5)Pick a GPU for model steering
Hourly rates shown are current target rates — the authoritative price is surfaced on the /launch page at the moment you provision. Billing is per 5 minutes of runtime.