- Python 3.10+ required — dropped Python 3.9 support.
- nnsight >=0.6 required — bumped minimum dependency from 0.5 to 0.6.
- Replaced loguru with standard library logging — all logging now uses
logging.getLogger("nnterp"). Users who configured loguru sinks for nnterp should switch tologging.getLogger("nnterp").setLevel(...)etc.
-
token_positionsandbatch_indexparameters forsteer()— fine-grained control over which tokens and batch elements are steered. Both can be combined:with model.trace(["prompt A", "prompt B"]): model.steer(layers=1, steering_vector=v, batch_index=0, token_positions=[0, 1])
The old
positionsparameter is deprecated (still works, emitsDeprecationWarning). -
remoteparameter onStandardizedTransformer—remote=Trueautomatically setsallow_dispatch=Falseand registers nnterp for NDIF remote execution. -
Multimodal model detection —
check_model_renaming()now detects heterogeneous layer types (e.g. self-attention + cross-attention in vision-language models) and raises an informative error. Bypass withallow_multimodal=True.
- Removed broken
steerimport fromnnterp.interventionsin tests/demos (was already a dead reference). - Added comprehensive steer tests covering
token_positions,batch_index, and their combination. - Updated README with new branding, corrected documentation URLs, and new steer API examples.