Abstract
We describe Elysium X 150 FR, a LoRA adapter (about 37M trainable parameters, 73.9 MB) on Qwen2.5-1.5B-Instruct that reads a dialogue up to a target turn and returns a sparse JSON list of emotion and appraisal labels for one named speaker, drawn from a 150-coordinate schema (10 families of 15). The adapter was trained on a free Kaggle Tesla T4 in under an hour on 1,012 filtered rows drawn from 1,000 AI-written English dialogues (4,000 target-turn rows) whose labels were generated through the author's ChatGPT workflow and personally reviewed by him. On a frozen internal 78-row synthetic test set the adapter reaches micro-F1 0.7251, exact label-set match 49/78 (62.82%) and 78/78 valid JSON; a Q8_0 GGUF export measured on CPU scores 0.6506 and 47/78. These numbers measure agreement with a reviewed synthetic teacher, not general emotion recognition. There is no external benchmark, only 117 of 150 coordinates have training examples, and the model is English only. We release weights, data and code, and state the limits plainly. We make no state-of-the-art claim.
Key results
Frozen internal test set: 78 synthetic English rows. Scores are agreement with the reviewed teacher labels, not accuracy on real people.
| Metric | Untouched base | Step-125 adapter | Final adapter | Final, Q8_0 GGUF (CPU) |
|---|---|---|---|---|
| Micro-F1 | 0.0000 | 0.6590 | 0.7251 | 0.6506 |
| Exact label-set match | 0/78 | 47/78 | 49/78 (62.82%) | 47/78 |
| Strictly valid JSON | 0/78 | 78/78 | 78/78 | n/a |
Final adapter label counts: TP 62, FP 19, FN 28, macro-F1 0.7083.
Method in brief
Qwen2.5-1.5B-Instruct with a rank-16 LoRA adapter trained with QLoRA. Learning rate 1e-4, gradient accumulation 8, seed 150.
Two stages of 125 and 127 optimizer steps (the second a continuation, not a perfect resume), 48 min 44 s on a free Kaggle Tesla T4.
1,000 AI-written English dialogues, 4,000 target-turn rows. After 160 quarantined and 1,149 duplicates removed: 1,012 train, 35 dev, 78 test.
117 of 150 coordinates appear in training, 44 in the test set. Labels were generated through the author's ChatGPT workflow and personally reviewed by him (owner-reported review, not an independent annotation study).
The model reads the conversation up to a target turn and answers only for that speaker, as sparse JSON: {"dimensions":[{"id":1,"strength":0.5}]}. An omitted ID means unknown, not a checked negative. Strength is expressed intensity, not confidence.
Live demo, running in your browser
This runs the released Q8_0 GGUF of Elysium X 150 FR locally in your browser through WebAssembly llama.cpp, with the exact training system prompt. Nothing you type is sent to a server. The first run downloads about 1.65 GB from the GGUF repo and keeps it in your browser cache. It is slow without a WebGPU-capable browser. Use fictional or generic text only.
Model not loaded yet.
The 150 coordinates
Ten families of fifteen, in release order. Full operational definitions are on the model card.
Limits
- English only, synthetic data only, one frozen internal test set. No external benchmark and no human-accuracy study.
- Not a clinical, diagnostic or safety tool. No state-of-the-art claim is made.
- Rights: original X150 contributions are proprietary, All Rights Reserved, Pratham Prateek Mohanty. The Qwen2.5 base is Apache-2.0 and retains its own notices. The paper is on Zenodo under CC BY-NC-ND 4.0.
Cite
Mohanty, P. P. (2026). Elysium X 150 FR: A Small LoRA Adapter for Sparse, Per-Speaker Emotion and Appraisal Labeling over a 150-Coordinate Schema. Zenodo. https://doi.org/10.5281/zenodo.23155240