license: gemma
language:
- en
tags: - emotion
- creative-writing
- synthetic
- stories
- interpretability
- arxiv:2606.26987
size_categories: - n<1K
task_categories: - text-generation
- text-classification
pretty_name: Emotion Stories (Gemma)
configs: - config_name: default
data_files:- split: train
path: stories.jsonl
- split: train
Emotion Stories — Gemma
Synthetic short stories that convey a target emotion implicitly — without ever
naming the emotion or its direct synonyms. Each story expresses the emotion only
through actions, body language, dialogue, internal reactions, and situational
context. The dataset was built to study emotion representations in language
models (e.g. probing and activation-steering experiments).
Generated with google/gemma-4-E4B-it.
A companion set generated with Apertus is available atsnae/emotion_stories_Apertus_8B_Instruct.
Dataset summary
- 171 emotions, each paired with 3 topics, with 3 stories per topic.
- 513 prompts → 1,539 stories total.
- Each topic (premise) is distinct; no story text is duplicated.
- Note: Gemma and Apertus use different topics per emotion, so the two
datasets are parallel in structure (171 × 3 × 3) but not in content.
Loading
from datasets import load_dataset
ds = load_dataset("snae/emotion_stories_gemma_4_4B")
row = ds["train"][0]
print(row["emotion"], "—", row["topic"])
for i, story in enumerate(row["stories"], 1): # 3 stories per row
print(f"[story {i}] {story[:80]}...")
The single root-level stories.jsonl is auto-loaded into the train split.
Fields
| Field | Type | Description |
|---|---|---|
emotion |
string | Target emotion to convey implicitly (one of 171). |
topic |
string | Story premise. |
prompt |
string | Full instruction sent to the model. |
raw_response |
string | Unparsed model output. |
stories |
list[string] | The 3 parsed stories (the main content). |
n_stories_parsed |
int | Number of stories successfully parsed (3). |
timestamp |
string | ISO generation timestamp. |
Generation
- Model:
google/gemma-4-E4B-it - Sampling:
temperature=0.8,top_p=0.95,do_sample=True,max_new_tokens=2048 - 3 stories requested per (emotion, topic) prompt.
- The prompt explicitly forbids using the emotion word or direct synonyms; the
emotion must be conveyed only through indirect cues, with a mix of first- and
third-person narration across the three stories.
Intended use & limitations
Intended for research on emotion representation, probing/steering, and
emotion-classification benchmarks. Stories are model-generated and may contain
artifacts, biases, or imperfect emotion expression. The emotion labels reflect
the intended emotion, not a human-verified annotation. English only.
Please cite the following paper if you use the dataset:
@inproceedings{
ben2026where,
title={Where Do Models Find Happiness? Emotion Vectors in Open-Source {LLM}s},
author={Sinie van der Ben and Rapha{\"e}l Baur and Yannick Metz and Mennatallah El-Assady},
booktitle={Mechanistic Interpretability Workshop at ICML 2026},
year={2026},
url={https://openreview.net/forum?id=fCM2CWAwFJ}
}