dSLLab/llm-deception-trajectories
LLM Deception Trajectories Hidden-state trajectories from 11 transformer architectures processing matched truthful/deceptive prompt pairs across 20 deception categories. Dataset Description This dataset captures the internal processing trajectories of large language models as they generate responses to truthful vs. deceptive prompts. Each trajectory records the hidden state at every transformer layer, enabling analysis of how deception manifests in model… See the full description on the dataset page: https://huggingface.co/datasets/dSLLab/llm-deception-trajectories.
LLM Deception Trajectories
Hidden-state trajectories from 11 transformer architectures processing matched truthful/deceptive prompt pairs across 20 deception categories.
Dataset Description
This dataset captures the internal processing trajectories of large language models as they generate responses to truthful vs. deceptive prompts. Each trajectory records the hidden state at every transformer layer, enabling analysis of how deception manifests in model internals.
What's Included
Quick Start
from datasets import load_dataset
# Load geometric features (lightweight, no GPU needed)
ds = load_dataset("your-username/llm-deception-trajectories", "geometric_features")
df = ds['train'].to_pandas()
# Filter by model
gpt2 = df[df['model'] == 'GPT-2']
print(f"Path length effect: d={gpt2['diff_path_length'].mean() / gpt2['diff_path_length'].std():.3f}")
# Load prompts
prompts = load_dataset("your-username/llm-deception-trajectories", "prompts")Loading Raw Trajectories (HDF5)
import h5py
import numpy as np
with h5py.File("trajectories/Llama_2_7B_master.h5", "r") as f:
truthful = f['truthful_trajectories'][:] # (1220, 32, 4096)
deceptive = f['deceptive_trajectories'][:] # (1220, 32, 4096)
categories = [c.decode() for c in f['categories'][:]]Models
Deception Categories (20)
Geometric Features
Seven trajectory features computed from hidden states across all layers:
Each feature is provided for truthful_, deceptive_, and diff_ (deceptive − truthful) conditions, keyed by model, pair_index, and category.
Trajectory Data Format (HDF5)
Each {Model}_master.h5 contains:
├── truthful_trajectories (1220, n_layers, hidden_dim) float32
├── deceptive_trajectories (1220, n_layers, hidden_dim) float32
├── categories (1220,) bytes — deception category labels
├── truthful_path_length (1220,) float64
├── deceptive_path_length (1220,) float64
├── truthful_straightness (1220,) float64
├── deceptive_straightness (1220,) float64
├── ... (all 7 features × 2 conditions)
└── attrs:
├── model string — short name
├── model_name string — HuggingFace model ID
├── num_pairs int
└── collection_time string — ISO timestampCollection Details
- Hardware: NVIDIA A100 80GB (PCIe and SXM4)
- Capture method: PyTorch forward hooks on transformer layer outputs
- Token position: Last token hidden state at each layer
- Generation:
do_sample=False, max_new_tokens=15, use_cache=False - Quantization: 8-bit (bitsandbytes) for 70B+ models
Citation
If you use our LLM Trajectory in your research, please cite:
@inproceedings{mothukuri-parizi-2026-trajectory,
title = "Trajectory Signatures of Deception in Large Language Models",
author = "Mothukuri, Viraaji and Parizi, Reza M.",
editor = "Liakata, Maria and
Moreira, Viviane P. and
Zhang, Jiajun and
Jurgens, David",
booktitle = "Proceedings of the 64th Annual Meeting of the {A}ssociation for {C}omputational {L}inguistics (Volume 1: Long Papers)",
month = jul,
year = "2026",
address = "San Diego, California, United States",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2026.acl-long.1582/",
pages = "34264--34276",
ISBN = "979-8-89176-390-6"
}License
MIT
